diff --git a/src/rds.c b/src/rds.c index 844e23d..9968337 100644 --- a/src/rds.c +++ b/src/rds.c @@ -359,11 +359,13 @@ static void get_rds_group(uint16_t *blocks) { goto group_coded; // TODO: Add EON case 'X': - for(int i = 0; i < 3; i++) blocks[i+1] = rds_data.udg1[rds_state.udg_idxs[0]++][i];; + uint8_t idx = rds_state.udg_idxs[0]++; + for(int i = 0; i < 3; i++) blocks[i+1] = rds_data.udg1[idx][i]; if(rds_state.udg_idxs[0] == rds_data.udg1_len) rds_state.udg_idxs[0] = 0; goto group_coded; case 'Y': - for(int i = 0; i < 3; i++) blocks[i+1] = rds_data.udg2[rds_state.udg_idxs[1]++][i]; + uint8_t idx = rds_state.udg_idxs[1]++; + for(int i = 0; i < 3; i++) blocks[i+1] = rds_data.udg2[idx][i]; if(rds_state.udg_idxs[1] == rds_data.udg2_len) rds_state.udg_idxs[1] = 0; goto group_coded; case 'R':