diff options
author | Nicolas Reynolds <fauno@kiwwwi.com.ar> | 2011-11-30 12:20:28 -0300 |
---|---|---|
committer | Nicolas Reynolds <fauno@kiwwwi.com.ar> | 2011-11-30 12:20:28 -0300 |
commit | cbd27aa2c3c49e4d93979e847d8b177a1a4fe324 (patch) | |
tree | 2518fdda7fa59c59e691c6de52f830d58545aed4 /community/adesklets/posix_signal.patch | |
parent | c6ead99bc92bd2b6da3e78e9cba5a8a86764de10 (diff) | |
parent | 946f0c9fe48dfb648a8a0be065e92f237ce210fd (diff) |
Merge branch 'master' of ssh://vparabola/home/parabola/abslibre-pre-mips64el
Conflicts:
community/flashrom/PKGBUILD
extra/chmlib/PKGBUILD
extra/crypto++/PKGBUILD
extra/dvgrab/PKGBUILD
extra/ebook-tools/PKGBUILD
extra/fping/PKGBUILD
extra/garcon/PKGBUILD
extra/gpart/PKGBUILD
extra/gtk2-perl/PKGBUILD
extra/hd2u/PKGBUILD
extra/hexedit/PKGBUILD
Diffstat (limited to 'community/adesklets/posix_signal.patch')
-rw-r--r-- | community/adesklets/posix_signal.patch | 81 |
1 files changed, 81 insertions, 0 deletions
diff --git a/community/adesklets/posix_signal.patch b/community/adesklets/posix_signal.patch new file mode 100644 index 000000000..90b3e8a12 --- /dev/null +++ b/community/adesklets/posix_signal.patch @@ -0,0 +1,81 @@ +From 92e686badce5c549699a30e82458a42dbcd99183 Mon Sep 17 00:00:00 2001 +From: Sylvain <syfou@users.sourceforge.net> +Date: Wed, 2 May 2007 13:23:18 -0400 +Subject: [PATCH] Definitive fix for the signal module importation problem + ...from posix_signal on some amd64 systems. Many thanks to Jason + Pontious for his support and patience. + +--- + scripting/python/posix_signal.c | 34 ++++++++++++++++++---------------- + 1 files changed, 18 insertions(+), 16 deletions(-) + +diff --git a/scripting/python/posix_signal.c b/scripting/python/posix_signal.c +index 620248f..7c5ac25 100644 +--- a/scripting/python/posix_signal.c ++++ b/scripting/python/posix_signal.c +@@ -1,16 +1,17 @@ + /*--- posix_signal.c ----------------------------------------------------------- +-This is nothing but a forward port from older python code by Lance Ellinghaus, +-Guido van Rossum & al., reformatted and put back together by Sylvain Fourmanoit <syfou@users.sourceforge.net> +-for recent (2.2.0 final and newer) python implementations. +- +-The ability to temporarily delay signals delivery is a very usefull feature - +-not all C functions are reentrant (in fact, only a few need to be 'safe' +-according to the POSIX 1003.1-2003 list), so being able to create critical +-code sections is a must. Although I am convinced Python's developpers +-had good reasons, I do not know myself why 'sigprocmask' and associated +-functions support was dropped from the signal module on systems which +-implemented them... Since I needed them in my blissful ignorance, +-here they are, alive and kicking. :-) ++This is nothing but a forward port from older python code by Lance ++Ellinghaus, Guido van Rossum & al., reformatted and put back together ++by Sylvain Fourmanoit <syfou@users.sourceforge.net> for recent (2.2.0 ++final and newer) python implementations. ++ ++The ability to temporarily delay signals delivery is a very usefull ++feature - not all C functions are reentrant (in fact, only a few need ++to be 'safe' according to the POSIX 1003.1-2003 list), so being able ++to create critical code sections is a must. Although I am convinced ++Python's developpers had good reasons, I do not know myself why ++'sigprocmask' and associated functions support was dropped from the ++signal module on systems which implemented them... Since I needed them ++in my blissful ignorance, here they are, alive and kicking. :-) + + ------------------------------------------------------------------------------*/ + #include <Python.h> +@@ -214,8 +215,9 @@ PyMODINIT_FUNC + initposix_signal(void) + { + const char * KEYS [] = { "__doc__", "__name__" , NULL}; +- int i, pos=0; ++ int i; + char * key_str, * doc_str , * new_str; ++ Py_ssize_t pos = 0; + PyObject * m, * mDoc, *d, + * pName, * pModule, * pDict, + * key, * value, *x; +@@ -236,7 +238,6 @@ initposix_signal(void) + /* The chunk of code below roughly perfoms python equivalent of: + 'from signal import *' inside what would be a pure python posix_signal + module ... */ +- pName=PyString_FromString("signal"); + if ((pModule=PyImport_Import((pName=PyString_FromString("signal"))))) { + pDict=PyModule_GetDict(pModule); + while (PyDict_Next(pDict, &pos, &key, &value)) +@@ -246,10 +247,11 @@ initposix_signal(void) + for(i=0;KEYS[i];++i) + if (strncmp(key_str,KEYS[i],strlen(KEYS[i]))==0) + break; +- if (!KEYS[i]) ++ if (!KEYS[i]) { + /* This needs python 2.2 and up */ ++ Py_INCREF(value); + PyModule_AddObject(m,key_str,value); +- else { ++ } else { + if (i==0) { + /* Append signal module documentation */ + if ((mDoc=PyDict_GetItemString(d,KEYS[0]))) { +-- +1.6.5.GIT + |