Index: mplayer.c =================================================================== --- mplayer.c (revision 19947) +++ mplayer.c (working copy) @@ -5099,10 +5101,11 @@ case MP_CMD_SWITCH_AUDIO : { int current_id = demuxer->audio->id; int v = demuxer_switch_audio(demuxer, cmd->args[0].v.i); - if(v > -1 && v < MAX_A_STREAMS && v != current_id) { + int new_id = demuxer->audio->id; + if(new_id > -1 && new_id < MAX_A_STREAMS && new_id != current_id) { sh_audio_t *sh2; uninit_player(INITED_AO | INITED_ACODEC); - sh2 = demuxer->a_streams[v]; + sh2 = demuxer->a_streams[new_id]; if(sh2) { sh2->ds = demuxer->audio; sh_audio = sh2;