$OpenBSD$ it is, however, required here. i found example code on how to write shit without requiring non-standard wordexp crap but couldn't wrap my head around how to use it here. i'm sure its rather trivial, but all I have for now is ....HAMMER! --- src/sound/music_midi_timidity.cpp.orig Fri Dec 28 21:11:27 2012 +++ src/sound/music_midi_timidity.cpp Fri Dec 28 21:37:21 2012 @@ -8,7 +8,7 @@ #include #include -#include +//#include #include int ChildQuit; @@ -433,15 +433,11 @@ bool TimidityPPMIDIDevice::LaunchTimidity () } int forkres; - wordexp_t words; - switch (wordexp (CommandLine.GetChars(), &words, 0)) + switch (CommandLine.GetChars(), 0) { case 0: // all good break; - - case WRDE_NOSPACE: - wordfree (&words); default: return false; } @@ -456,9 +452,8 @@ bool TimidityPPMIDIDevice::LaunchTimidity () // freopen ("/dev/null", "w", stderr); close (WavePipe[1]); - execvp (words.we_wordv[0], words.we_wordv); - fprintf(stderr,"execvp failed\n"); - exit (0); // if execvp succeeds, we never get here + //fprintf(stderr,"execvp failed\n"); + //exit (0); // if execvp succeeds, we never get here } else if (forkres < 0) { @@ -477,7 +472,6 @@ bool TimidityPPMIDIDevice::LaunchTimidity () }*/ } - wordfree (&words); return ChildProcess != -1; #endif // _WIN32 }