os.kill takes one of two newly added signals, CTRL_C_EVENT and
CTRL_BREAK_EVENT, or any integer value. The events are a special case
which work with subprocess console applications which implement a
special console control handler. Any other value but those two will
cause os.kill to use TerminateProcess, outright killing the process.
This change adds win_console_handler.py, which is a script to implement
SetConsoleCtrlHandler and applicable handler function, using ctypes.
subprocess also gets another attribute which is a necessary flag to
creationflags in Popen in order to send the CTRL events.
svn+ssh://pythondev@svn.python.org/python/branches/branch_libffi-3_0_10-win
........
r79115 | thomas.heller | 2010-03-19 22:14:47 +0100 (Fr, 19 Mrz 2010) | 7 lines
Work in progress. 2 tests fail on x86/win32 because the stack
checking code in ffi_call_win32 is not yet implemented.
Remove most files from _ctypes/libffi_msvc, only two include files
stay (updated from _ctypes/libffi/...). Other files are used in the
cross-platform _ctypes/libffi directory.
........
r79424 | thomas.heller | 2010-03-25 19:28:02 +0100 (Do, 25 Mrz 2010) | 1 line
Build _ctypes on Win64.
........
r79491 | thomas.heller | 2010-03-29 21:30:33 +0200 (Mo, 29 Mrz 2010) | 4 lines
On Windows, ctypes does no longer check the stack before and after
calling a foreign function.
This allows to use the unmodified libffi library.
........
-- Diese und die folgenden Zeilen werden ignoriert --
M _ctypes/libffi/configure
M _ctypes/libffi/configure.ac
M _ctypes/libffi/aclocal.m4
M _ctypes/libffi.diff
-- Diese und die folgenden Zeilen werden ignoriert --
M Misc/NEWS
A Modules/_ctypes/libffi/m4
A Modules/_ctypes/libffi/m4/ltsugar.m4
A Modules/_ctypes/libffi/m4/libtool.m4
A Modules/_ctypes/libffi/m4/ltversion.m4
A Modules/_ctypes/libffi/m4/lt~obsolete.m4
A Modules/_ctypes/libffi/m4/ltoptions.m4
A Modules/_ctypes/libffi/ChangeLog.libffi
M Modules/_ctypes/libffi/configure
M Modules/_ctypes/libffi/Makefile.in
M Modules/_ctypes/libffi/fficonfig.h.in
M Modules/_ctypes/libffi/src/arm/sysv.S
M Modules/_ctypes/libffi/src/powerpc/ffitarget.h
M Modules/_ctypes/libffi/src/powerpc/aix.S
M Modules/_ctypes/libffi/src/powerpc/ffi.c
M Modules/_ctypes/libffi/src/powerpc/sysv.S
M Modules/_ctypes/libffi/src/powerpc/ffi_darwin.c
M Modules/_ctypes/libffi/src/powerpc/aix_closure.S
A Modules/_ctypes/libffi/src/closures.c
D Modules/_ctypes/libffi/src/darwin/ffitarget.h
M Modules/_ctypes/libffi/src/sh64/ffi.c
M Modules/_ctypes/libffi/src/sh64/sysv.S
M Modules/_ctypes/libffi/src/x86/ffi64.c
M Modules/_ctypes/libffi/src/x86/ffitarget.h
M Modules/_ctypes/libffi/src/x86/win32.S
M Modules/_ctypes/libffi/src/x86/darwin.S
M Modules/_ctypes/libffi/src/x86/ffi.c
M Modules/_ctypes/libffi/src/x86/sysv.S
A Modules/_ctypes/libffi/src/x86/win64.S
M Modules/_ctypes/libffi/src/x86/unix64.S
A Modules/_ctypes/libffi/src/types.c
A Modules/_ctypes/libffi/src/avr32
A Modules/_ctypes/libffi/src/avr32/ffitarget.h
A Modules/_ctypes/libffi/src/avr32/ffi.c
A Modules/_ctypes/libffi/src/avr32/sysv.S
M Modules/_ctypes/libffi/src/frv/ffi.c
M Modules/_ctypes/libffi/src/s390/sysv.S
M Modules/_ctypes/libffi/src/pa/ffi.c
A Modules/_ctypes/libffi/src/raw_api.c
A Modules/_ctypes/libffi/src/java_raw_api.c
A Modules/_ctypes/libffi/src/debug.c
M Modules/_ctypes/libffi/src/sparc/ffi.c
M Modules/_ctypes/libffi/src/sparc/v8.S
M Modules/_ctypes/libffi/src/mips/ffitarget.h
M Modules/_ctypes/libffi/src/mips/n32.S
M Modules/_ctypes/libffi/src/mips/o32.S
M Modules/_ctypes/libffi/src/mips/ffi.c
A Modules/_ctypes/libffi/src/dlmalloc.c
M Modules/_ctypes/libffi/src/sh/ffi.c
M Modules/_ctypes/libffi/src/sh/sysv.S
AM Modules/_ctypes/libffi/depcomp
AM Modules/_ctypes/libffi/compile
M Modules/_ctypes/libffi/config.guess
AM Modules/_ctypes/libffi/ltmain.sh
M Modules/_ctypes/libffi/config.sub
AM Modules/_ctypes/libffi/mdate-sh
M Modules/_ctypes/libffi/configure.ac
A Modules/_ctypes/libffi/doc
A Modules/_ctypes/libffi/doc/libffi.texi
A Modules/_ctypes/libffi/doc/stamp-vti
A Modules/_ctypes/libffi/doc/libffi.info
A Modules/_ctypes/libffi/doc/version.texi
A Modules/_ctypes/libffi/texinfo.tex
A Modules/_ctypes/libffi/man
A Modules/_ctypes/libffi/man/ffi_call.3
A Modules/_ctypes/libffi/man/Makefile.in
A Modules/_ctypes/libffi/man/ffi.3
A Modules/_ctypes/libffi/man/Makefile.am
A Modules/_ctypes/libffi/man/ffi_prep_cif.3
A Modules/_ctypes/libffi/ChangeLog.libgcj
M Modules/_ctypes/libffi/LICENSE
M Modules/_ctypes/libffi/include/ffi.h.in
M Modules/_ctypes/libffi/include/Makefile.in
M Modules/_ctypes/libffi/include/ffi_common.h
M Modules/_ctypes/libffi/include/Makefile.am
A Modules/_ctypes/libffi/libtool-version
A Modules/_ctypes/libffi/ChangeLog
A Modules/_ctypes/libffi/testsuite
A Modules/_ctypes/libffi/testsuite/Makefile.in
A Modules/_ctypes/libffi/testsuite/libffi.call
A Modules/_ctypes/libffi/testsuite/libffi.call/cls_multi_ushort.c
A Modules/_ctypes/libffi/testsuite/libffi.call/stret_medium.c
A Modules/_ctypes/libffi/testsuite/libffi.call/cls_align_uint16.c
A Modules/_ctypes/libffi/testsuite/libffi.call/cls_align_longdouble_split2.c
A Modules/_ctypes/libffi/testsuite/libffi.call/struct1.c
A Modules/_ctypes/libffi/testsuite/libffi.call/return_uc.c
A Modules/_ctypes/libffi/testsuite/libffi.call/struct3.c
A Modules/_ctypes/libffi/testsuite/libffi.call/nested_struct1.c
A Modules/_ctypes/libffi/testsuite/libffi.call/struct5.c
A Modules/_ctypes/libffi/testsuite/libffi.call/err_bad_abi.c
A Modules/_ctypes/libffi/testsuite/libffi.call/nested_struct3.c
A Modules/_ctypes/libffi/testsuite/libffi.call/cls_7_1_byte.c
A Modules/_ctypes/libffi/testsuite/libffi.call/nested_struct5.c
A Modules/_ctypes/libffi/testsuite/libffi.call/cls_double.c
A Modules/_ctypes/libffi/testsuite/libffi.call/struct7.c
A Modules/_ctypes/libffi/testsuite/libffi.call/return_sl.c
A Modules/_ctypes/libffi/testsuite/libffi.call/nested_struct7.c
A Modules/_ctypes/libffi/testsuite/libffi.call/struct9.c
A Modules/_ctypes/libffi/testsuite/libffi.call/cls_sint.c
A Modules/_ctypes/libffi/testsuite/libffi.call/nested_struct9.c
A Modules/_ctypes/libffi/testsuite/libffi.call/cls_pointer.c
A Modules/_ctypes/libffi/testsuite/libffi.call/many_win32.c
A Modules/_ctypes/libffi/testsuite/libffi.call/cls_20byte1.c
A Modules/_ctypes/libffi/testsuite/libffi.call/cls_multi_sshortchar.c
A Modules/_ctypes/libffi/testsuite/libffi.call/return_fl.c
A Modules/_ctypes/libffi/testsuite/libffi.call/cls_align_sint64.c
A Modules/_ctypes/libffi/testsuite/libffi.call/many.c
A Modules/_ctypes/libffi/testsuite/libffi.call/strlen.c
A Modules/_ctypes/libffi/testsuite/libffi.call/cls_3byte2.c
A Modules/_ctypes/libffi/testsuite/libffi.call/return_ldl.c
A Modules/_ctypes/libffi/testsuite/libffi.call/stret_large.c
A Modules/_ctypes/libffi/testsuite/libffi.call/cls_multi_schar.c
A Modules/_ctypes/libffi/testsuite/libffi.call/cls_multi_uchar.c
A Modules/_ctypes/libffi/testsuite/libffi.call/cls_9byte1.c
A Modules/_ctypes/libffi/testsuite/libffi.call/err_bad_typedef.c
A Modules/_ctypes/libffi/testsuite/libffi.call/cls_19byte.c
A Modules/_ctypes/libffi/testsuite/libffi.call/cls_align_float.c
A Modules/_ctypes/libffi/testsuite/libffi.call/closure_fn1.c
A Modules/_ctypes/libffi/testsuite/libffi.call/cls_align_longdouble_split.c
A Modules/_ctypes/libffi/testsuite/libffi.call/problem1.c
A Modules/_ctypes/libffi/testsuite/libffi.call/return_fl1.c
A Modules/_ctypes/libffi/testsuite/libffi.call/closure_fn3.c
A Modules/_ctypes/libffi/testsuite/libffi.call/return_dbl2.c
A Modules/_ctypes/libffi/testsuite/libffi.call/cls_sshort.c
A Modules/_ctypes/libffi/testsuite/libffi.call/return_fl3.c
A Modules/_ctypes/libffi/testsuite/libffi.call/closure_fn5.c
A Modules/_ctypes/libffi/testsuite/libffi.call/cls_align_double.c
A Modules/_ctypes/libffi/testsuite/libffi.call/cls_2byte.c
A Modules/_ctypes/libffi/testsuite/libffi.call/promotion.c
A Modules/_ctypes/libffi/testsuite/libffi.call/nested_struct.c
A Modules/_ctypes/libffi/testsuite/libffi.call/float2.c
A Modules/_ctypes/libffi/testsuite/libffi.call/nested_struct10.c
A Modules/_ctypes/libffi/testsuite/libffi.call/return_ll1.c
A Modules/_ctypes/libffi/testsuite/libffi.call/cls_4byte.c
A Modules/_ctypes/libffi/testsuite/libffi.call/float4.c
A Modules/_ctypes/libffi/testsuite/libffi.call/cls_6byte.c
A Modules/_ctypes/libffi/testsuite/libffi.call/cls_longdouble.c
A Modules/_ctypes/libffi/testsuite/libffi.call/huge_struct.c
A Modules/_ctypes/libffi/testsuite/libffi.call/cls_8byte.c
A Modules/_ctypes/libffi/testsuite/libffi.call/cls_multi_sshort.c
A Modules/_ctypes/libffi/testsuite/libffi.call/cls_align_uint32.c
A Modules/_ctypes/libffi/testsuite/libffi.call/cls_align_sint16.c
A Modules/_ctypes/libffi/testsuite/libffi.call/cls_double_va.c
A Modules/_ctypes/libffi/testsuite/libffi.call/return_sc.c
A Modules/_ctypes/libffi/testsuite/libffi.call/float.c
A Modules/_ctypes/libffi/testsuite/libffi.call/cls_20byte.c
A Modules/_ctypes/libffi/testsuite/libffi.call/cls_float.c
A Modules/_ctypes/libffi/testsuite/libffi.call/struct2.c
A Modules/_ctypes/libffi/testsuite/libffi.call/cls_pointer_stack.c
A Modules/_ctypes/libffi/testsuite/libffi.call/cls_5_1_byte.c
A Modules/_ctypes/libffi/testsuite/libffi.call/struct4.c
A Modules/_ctypes/libffi/testsuite/libffi.call/nested_struct2.c
A Modules/_ctypes/libffi/testsuite/libffi.call/cls_24byte.c
A Modules/_ctypes/libffi/testsuite/libffi.call/struct6.c
A Modules/_ctypes/libffi/testsuite/libffi.call/nested_struct4.c
A Modules/_ctypes/libffi/testsuite/libffi.call/closure_loc_fn0.c
A Modules/_ctypes/libffi/testsuite/libffi.call/struct8.c
A Modules/_ctypes/libffi/testsuite/libffi.call/nested_struct6.c
A Modules/_ctypes/libffi/testsuite/libffi.call/testclosure.c
A Modules/_ctypes/libffi/testsuite/libffi.call/nested_struct8.c
A Modules/_ctypes/libffi/testsuite/libffi.call/cls_64byte.c
A Modules/_ctypes/libffi/testsuite/libffi.call/return_ul.c
A Modules/_ctypes/libffi/testsuite/libffi.call/cls_uint.c
A Modules/_ctypes/libffi/testsuite/libffi.call/cls_dbls_struct.c
A Modules/_ctypes/libffi/testsuite/libffi.call/strlen_win32.c
A Modules/_ctypes/libffi/testsuite/libffi.call/pyobjc-tc.c
A Modules/_ctypes/libffi/testsuite/libffi.call/stret_large2.c
A Modules/_ctypes/libffi/testsuite/libffi.call/cls_multi_ushortchar.c
A Modules/_ctypes/libffi/testsuite/libffi.call/return_dbl.c
A Modules/_ctypes/libffi/testsuite/libffi.call/cls_schar.c
A Modules/_ctypes/libffi/testsuite/libffi.call/cls_uchar.c
A Modules/_ctypes/libffi/testsuite/libffi.call/cls_align_uint64.c
A Modules/_ctypes/libffi/testsuite/libffi.call/cls_align_longdouble.c
A Modules/_ctypes/libffi/testsuite/libffi.call/cls_ulonglong.c
A Modules/_ctypes/libffi/testsuite/libffi.call/cls_1_1byte.c
A Modules/_ctypes/libffi/testsuite/libffi.call/return_ll.c
A Modules/_ctypes/libffi/testsuite/libffi.call/cls_3_1byte.c
A Modules/_ctypes/libffi/testsuite/libffi.call/cls_12byte.c
A Modules/_ctypes/libffi/testsuite/libffi.call/cls_4_1byte.c
A Modules/_ctypes/libffi/testsuite/libffi.call/cls_3byte1.c
A Modules/_ctypes/libffi/testsuite/libffi.call/ffitest.h
A Modules/_ctypes/libffi/testsuite/libffi.call/cls_6_1_byte.c
A Modules/_ctypes/libffi/testsuite/libffi.call/cls_16byte.c
A Modules/_ctypes/libffi/testsuite/libffi.call/cls_18byte.c
A Modules/_ctypes/libffi/testsuite/libffi.call/closure_fn0.c
A Modules/_ctypes/libffi/testsuite/libffi.call/cls_9byte2.c
A Modules/_ctypes/libffi/testsuite/libffi.call/cls_longdouble_va.c
A Modules/_ctypes/libffi/testsuite/libffi.call/return_dbl1.c
A Modules/_ctypes/libffi/testsuite/libffi.call/closure_fn2.c
A Modules/_ctypes/libffi/testsuite/libffi.call/closure_stdcall.c
A Modules/_ctypes/libffi/testsuite/libffi.call/return_fl2.c
A Modules/_ctypes/libffi/testsuite/libffi.call/stret_medium2.c
A Modules/_ctypes/libffi/testsuite/libffi.call/closure_fn4.c
A Modules/_ctypes/libffi/testsuite/libffi.call/negint.c
A Modules/_ctypes/libffi/testsuite/libffi.call/cls_ushort.c
A Modules/_ctypes/libffi/testsuite/libffi.call/call.exp
A Modules/_ctypes/libffi/testsuite/libffi.call/closure_fn6.c
A Modules/_ctypes/libffi/testsuite/libffi.call/float1.c
A Modules/_ctypes/libffi/testsuite/libffi.call/float3.c
A Modules/_ctypes/libffi/testsuite/libffi.call/cls_5byte.c
A Modules/_ctypes/libffi/testsuite/libffi.call/cls_7byte.c
A Modules/_ctypes/libffi/testsuite/libffi.call/cls_align_pointer.c
A Modules/_ctypes/libffi/testsuite/libffi.call/cls_align_sint32.c
A Modules/_ctypes/libffi/testsuite/config
A Modules/_ctypes/libffi/testsuite/config/default.exp
A Modules/_ctypes/libffi/testsuite/lib
A Modules/_ctypes/libffi/testsuite/lib/target-libpath.exp
A Modules/_ctypes/libffi/testsuite/lib/wrapper.exp
A Modules/_ctypes/libffi/testsuite/lib/libffi-dg.exp
A Modules/_ctypes/libffi/testsuite/Makefile.am
A Modules/_ctypes/libffi/testsuite/libffi.special
A Modules/_ctypes/libffi/testsuite/libffi.special/unwindtest_ffi_call.cc
A Modules/_ctypes/libffi/testsuite/libffi.special/unwindtest.cc
A Modules/_ctypes/libffi/testsuite/libffi.special/special.exp
A Modules/_ctypes/libffi/testsuite/libffi.special/ffitestcxx.h
M Modules/_ctypes/libffi/README
A Modules/_ctypes/libffi/libffi.pc.in
M Modules/_ctypes/libffi/Makefile.am
M Modules/_ctypes/libffi/missing
A Modules/_ctypes/libffi/ChangeLog.v1
M Modules/_ctypes/libffi/aclocal.m4
M Modules/_ctypes/libffi.diff
string. Initialize all attributes to be able to call the statement destructor
on error.
Avoid also a duplicate connection in some tests: setUp() does already open a
connection (":memory:").
set to an non existent program name and Python is unable to retrieve the real
program name.
Fix also sysconfig: if sys.executable is an empty string, use the current
working directory.
(SIGINT). If an error occurs while importing the site module, the error is
printed and Python exits. Initialize the GIL before importing the site
module.
code using struct.pack, attempt to convert to an integer first using
the argument's __int__ method (if present). Also raise a
DeprecationWarning for any such usage of __int__.
This fixes a regression from 2.6, where some (but not all) integer
conversion codes already used __int__.