diff -r ffa851df0825 -r 2fb8b9db1c86 symbian-qemu-0.9.1-12/python-2.6.1/PC/os2emx/dllentry.c --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/symbian-qemu-0.9.1-12/python-2.6.1/PC/os2emx/dllentry.c Fri Jul 31 15:01:17 2009 +0100 @@ -0,0 +1,42 @@ +/* + * This is the entry point for the Python 2.3 core DLL. + */ + +#define NULL 0 + +#define REF(s) extern void s(); void *____ref_##s = &s; + +/* Make references to imported symbols to pull them from static library */ +REF(Py_Main); + +#include + +extern int _CRT_init(void); +extern void _CRT_term(void); +extern void __ctordtorInit(void); +extern void __ctordtorTerm(void); + +unsigned long _DLL_InitTerm(unsigned long mod_handle, unsigned long flag) +{ + switch (flag) + { + case 0: + if (_CRT_init()) + return 0; + __ctordtorInit(); + + /* Ignore fatal signals */ + signal(SIGSEGV, SIG_IGN); + signal(SIGFPE, SIG_IGN); + + return 1; + + case 1: + __ctordtorTerm(); + _CRT_term(); + return 1; + + default: + return 0; + } +}