X-Git-Url: http://g0dil.de/git?a=blobdiff_plain;f=tools%2Fscons-1.2.0%2Fos_spawnv_fix.diff;fp=tools%2Fscons-1.2.0%2Fos_spawnv_fix.diff;h=926f896c1f2080be27750ea934dbb01969f24c10;hb=84bd150c667e693c7ba6c31819b3f155f53e514a;hp=0000000000000000000000000000000000000000;hpb=4b94735961fc9474411a1ca200c3a00f744ec3f1;p=senf.git diff --git a/tools/scons-1.2.0/os_spawnv_fix.diff b/tools/scons-1.2.0/os_spawnv_fix.diff new file mode 100644 index 0000000..926f896 --- /dev/null +++ b/tools/scons-1.2.0/os_spawnv_fix.diff @@ -0,0 +1,83 @@ +? dist/src/Mac/IDE scripts/Hold option to open a script +? dist/src/Mac/IDE scripts/Insert file name +? dist/src/Mac/IDE scripts/Insert folder name +? dist/src/Mac/IDE scripts/Search Python Documentation +? dist/src/Mac/IDE scripts/Hack/Remove .pyc files +? dist/src/Mac/IDE scripts/Hack/Toolbox Assistant +Index: dist/src/Modules/posixmodule.c +=================================================================== +RCS file: /cvsroot/python/python/dist/src/Modules/posixmodule.c,v +retrieving revision 2.213 +diff -c -c -r2.213 posixmodule.c +*** dist/src/Modules/posixmodule.c 2001/12/03 20:41:00 2.213 +--- dist/src/Modules/posixmodule.c 2001/12/05 00:52:58 +*************** +*** 1668,1674 **** + #ifdef HAVE_SPAWNV + static char posix_spawnv__doc__[] = + "spawnv(mode, path, args)\n\ +! Execute an executable path with arguments, replacing current process.\n\ + \n\ + mode: mode of process creation\n\ + path: path of executable file\n\ +--- 1668,1674 ---- + #ifdef HAVE_SPAWNV + static char posix_spawnv__doc__[] = + "spawnv(mode, path, args)\n\ +! Execute the program 'path' in a new process.\n\ + \n\ + mode: mode of process creation\n\ + path: path of executable file\n\ +*************** +*** 1717,1724 **** + + if (mode == _OLD_P_OVERLAY) + mode = _P_OVERLAY; + spawnval = _spawnv(mode, path, argvlist); +! + PyMem_DEL(argvlist); + + if (spawnval == -1) +--- 1717,1727 ---- + + if (mode == _OLD_P_OVERLAY) + mode = _P_OVERLAY; ++ ++ Py_BEGIN_ALLOW_THREADS + spawnval = _spawnv(mode, path, argvlist); +! Py_END_ALLOW_THREADS +! + PyMem_DEL(argvlist); + + if (spawnval == -1) +*************** +*** 1734,1740 **** + + static char posix_spawnve__doc__[] = + "spawnve(mode, path, args, env)\n\ +! Execute a path with arguments and environment, replacing current process.\n\ + \n\ + mode: mode of process creation\n\ + path: path of executable file\n\ +--- 1737,1743 ---- + + static char posix_spawnve__doc__[] = + "spawnve(mode, path, args, env)\n\ +! Execute the program 'path' in a new process.\n\ + \n\ + mode: mode of process creation\n\ + path: path of executable file\n\ +*************** +*** 1830,1836 **** +--- 1833,1843 ---- + + if (mode == _OLD_P_OVERLAY) + mode = _P_OVERLAY; ++ ++ Py_BEGIN_ALLOW_THREADS + spawnval = _spawnve(mode, path, argvlist, envlist); ++ Py_END_ALLOW_THREADS ++ + if (spawnval == -1) + (void) posix_error(); + else