FS-6524,FS-6494: the compiler for rpi seems to be strangely mis-optimizing this if/else block. Yes, its already set to this value, but without the else block, it 'magically' hits the if blocks above, unless you sleep, print a log, or add the else

This commit is contained in:
root 2014-05-20 21:16:18 +00:00 committed by Brian West
parent b3555b91e9
commit 1ca1d63795
1 changed files with 4 additions and 2 deletions

View File

@ -3350,12 +3350,14 @@ SWITCH_DECLARE(uint8_t) switch_core_media_negotiate_sdp(switch_core_session_t *s
memset(&codec_fmtp, 0, sizeof(codec_fmtp));
if (zstr(map->rm_fmtp)) {
if (!strcasecmp(map->rm_encoding, "ilbc")) {
if (!strcasecmp(rm_encoding, "ilbc")) {
codec_ms = 30;
map_bit_rate = 13330;
} else if (!strcasecmp(map->rm_encoding, "isac")) {
} else if (!strcasecmp(rm_encoding, "isac")) {
codec_ms = 30;
map_bit_rate = 32000;
} else {
map_bit_rate = switch_known_bitrate((switch_payload_t)map->rm_pt);
}
} else {
if ((switch_core_codec_parse_fmtp(map->rm_encoding, map->rm_fmtp, map->rm_rate, &codec_fmtp)) == SWITCH_STATUS_SUCCESS) {