When using the spawn's returnpid parameter, manually remove the returned pids from...
authorZac Medico <zmedico@gentoo.org>
Wed, 3 Jan 2007 06:46:42 +0000 (06:46 -0000)
committerZac Medico <zmedico@gentoo.org>
Wed, 3 Jan 2007 06:46:42 +0000 (06:46 -0000)
svn path=/main/trunk/; revision=5452

pym/portage.py

index 72eb3abdf8aba7d34b55e12e5dbbe05a66629beb..039681dcf2932856e7ecfb0982763ddb956cc251 100644 (file)
@@ -3303,6 +3303,7 @@ def doebuild(myebuild, mydo, myroot, mysettings, debug=0, listonly=0,
                                for k, v in izip(auxdbkeys, mybytes.splitlines()):
                                        dbkey[k] = v
                                retval = os.waitpid(mypids[0], 0)[1]
+                               portage_exec.spawned_pids.remove(mypids[0])
                                # If it got a signal, return the signal that was sent, but
                                # shift in order to distinguish it from a return value. (just
                                # like portage_exec.spawn() would do).