Version: unknown (using KDE 3.1.93 (CVS >= 20031111), compiled sources) Compiler: gcc version 3.3.1 (SuSE Linux) OS: Linux (i686) release 2.4.21-99-athlon when ripping mp3 files with k3b, k3b starts to read the file and lame starts to convert the file in the background, but when k3b tries to finish the ripping after the first song, it hangs and lame reports "[lame] <defunct>" in the process list.
unable to reproduce it...
Hi Sebastian, I still have the problem. After some debugging it seems, that slotExternalProgramFinished (in kdeextragear-1/k3b/src/audioencoding/external/k3bexternalencoder.cpp) is never called by KProcess (although it should!), and as such the call d->exitWaiter.wait() in finishEncoderInternal() waits endless for the d->exitWaiter.wakeAll() from slotExternalProgramFinished(). I'm running the attached patch (basically I only removed the d->exitWaiter.wait(); call and now it works without problems. What Distribution are you running - my problems are with SUSE 9, which has a newer glibc and AFAIK where spanned childs needs to be asked in the SIGCHLD signal handler for their return value. But I'm not 100% sure about that. (Demo-Patch attached)
Created attachment 4078 [details] sample patch
developing on SuSE 9 here...
reproduced. but I don't understand your patch. What does it do?
anyway, fixed it now with a call to waitpid. Using QWaitCondition was just stupid.