Issue6869
Created on 2009-09-09 08:31 by warlock, last changed 2009-11-13 14:24 by robince.
|
msg92444 - (view) |
Author: Ilya (warlock) |
Date: 2009-09-09 08:31 |
|
When embedding python from C, and importing "ctypes" module in embedded
script, it always crashes on Py_Finalize() on 4th cycle.
Tested with both PyRun_SimpleString(...) and PyRun_String(...).
Platform: Windows XP
IDE's: LabWindows/CVI 8.5 and Code::Blocks/gcc
Code:
--------------------------
#include <stdio.h>
#include <python.h>
int main()
{
int i;
for (i=0; i<10; i++)
{
printf("--- %d ---\n", i);
Py_Initialize();
PyRun_SimpleString("import ctypes");
Py_Finalize();
}
return 0;
}
--------------------------------
Output:
--------------------------------
--- 0 ---
--- 1 ---
--- 2 ---
--- 3 ---
Process returned -1073741819 (0xC0000005) execution time : 3.109 s
Press any key to continue.
--------------------------------
|
|
msg92449 - (view) |
Author: Ilya (warlock) |
Date: 2009-09-09 12:49 |
|
Tested
obj=PyImport_ImportModule("ctypes");
Py_DECREF(obj);
instead of PyRun_SimpleString(...) - same result
|
|
msg92555 - (view) |
Author: (mkp) |
Date: 2009-09-12 22:12 |
|
on python2.5 / mac os x 10.5.7:
$ cat main.c
#include <stdio.h>
#include <python.h>
int main()
{
int i;
for (i=0; i<10; i++)
{
printf("--- %d ---\n", i);
Py_Initialize();
PyRun_SimpleString("import ctypes");
Py_Finalize();
}
return 0;
}
$ gcc -I/usr/include/python2.5/ -L/usr/lib/python2.5/ -lpython main.c
$ ./a.out
--- 0 ---
--- 1 ---
--- 2 ---
--- 3 ---
Assertion failed: (type->tp_flags & Py_TPFLAGS_HEAPTYPE), function
type_dealloc, file Objects/typeobject.c, line 2148.
Abort trap
$ uname -mprsv
Darwin 9.7.0 Darwin Kernel Version 9.7.0: Tue Mar 31 22:52:17 PDT 2009;
root:xnu-1228.12.14~1/RELEASE_I386 i386 i386
|
|
msg92880 - (view) |
Author: Hirokazu Yamamoto (ocean-city) |
Date: 2009-09-20 02:19 |
|
I hope attached patch will fix this issue.
|
|
| Date |
User |
Action |
Args |
| 2009-11-13 14:24:19 | robince | set | nosy:
+ robince
|
| 2009-09-20 02:19:51 | ocean-city | set | files:
+ fix_ctypes_crash.patch
nosy:
+ ocean-city messages:
+ msg92880
keywords:
+ patch |
| 2009-09-12 22:12:00 | mkp | set | nosy:
+ mkp messages:
+ msg92555
|
| 2009-09-09 12:49:57 | warlock | set | messages:
+ msg92449 |
| 2009-09-09 08:31:14 | warlock | create | |
|