From 56c7b777f3b897fe0d5157db4cfdaa74f5223a58 Mon Sep 17 00:00:00 2001 From: Eric Wild Date: Wed, 21 Feb 2024 18:58:42 +0100 Subject: [PATCH] ms: hard preswapped VA gsm bits small * 127 can still be small enough to end up 0 after casting which breaks everything. Change-Id: I44b95dced64208eebfb5214da034a5d49abdd0df --- Transceiver52M/grgsm_vitac/grgsm_vitac.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Transceiver52M/grgsm_vitac/grgsm_vitac.cpp b/Transceiver52M/grgsm_vitac/grgsm_vitac.cpp index 5779d9d8..2016541a 100644 --- a/Transceiver52M/grgsm_vitac/grgsm_vitac.cpp +++ b/Transceiver52M/grgsm_vitac/grgsm_vitac.cpp @@ -95,7 +95,7 @@ NO_UBSAN static void detect_burst_generic(const gr_complex *input, gr_complex *c viterbi_detector(filtered_burst, burst_size, rhh, start_state, stop_states, 2, output); for (unsigned int i = 0; i < burst_size; i++) - output_binary[i] = (char)(output[i] * -127); // pre flip bits! + output_binary[i] = output[i] > 0 ? -127 : 127; // pre flip bits! } NO_UBSAN void detect_burst_nb(const gr_complex *input, gr_complex *chan_imp_resp, int burst_start, char *output_binary,