Martin v. Löwis <[EMAIL PROTECTED]> added the comment:

>> How can Python run arbitrary code between the return from a ctypes
>> method and the next Python instruction? None of the code should have any
>> effect on errno.
> 
> By freeing objects because their refcount has reached zero?

No, that should not set errno. Free cannot fail, and will not modify
errno. Try running

#include <errno.h>
int main()
{
    errno = 117;
    free(malloc(100));
    printf("%d\n", errno);
}

malloc might set errno, but only if it fails (in which case you'll get
a Python exception, anyway).

__________________________________
Tracker <[EMAIL PROTECTED]>
<http://bugs.python.org/issue1798>
__________________________________
_______________________________________________
Python-bugs-list mailing list
Unsubscribe: 
http://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com

Reply via email to