# HG changeset patch # User tron # Date 2005-09-12 09:53:56 # Node ID 9c6b59cfb9519a9f722acf3f39f106ef448ba478 # Parent b4dabbdd988d6c1e4835c0439954952de2fa45e3 (svn r2946) Remove redundant calls, simplify a check and terminate the argument list of execlp() as suggested by the manpage to make it correctly work on 64bit platforms diff --git a/music/extmidi.c b/music/extmidi.c --- a/music/extmidi.c +++ b/music/extmidi.c @@ -69,17 +69,13 @@ static void DoPlay(void) int d; close(0); - close(1); - close(2); d = open("/dev/null", O_RDONLY); - if (d != -1) { - if (dup2(d, 1) != -1 && dup2(d, 2) != -1) { - #if defined(MIDI_ARG) - execlp(msf.extmidi, "extmidi", MIDI_ARG, _midi.song, NULL); - #else - execlp(msf.extmidi, "extmidi", _midi.song, NULL); - #endif - } + if (d != -1 && dup2(d, 1) != -1 && dup2(d, 2) != -1) { + #if defined(MIDI_ARG) + execlp(msf.extmidi, "extmidi", MIDI_ARG, _midi.song, (char*)0); + #else + execlp(msf.extmidi, "extmidi", _midi.song, (char*)0); + #endif } _exit(1); }