Commit Graph

3937 Commits

Author SHA1 Message Date
Antoine Pitrou
8c195afcac Issue #15340: Fix importing the random module when /dev/urandom cannot be opened.
This was a regression caused by the hash randomization patch.
2012-09-07 23:51:22 +02:00
Antoine Pitrou
7ff1822ec7 Issue #15340: Fix importing the random module when /dev/urandom cannot be opened.
This was a regression caused by the hash randomization patch.
2012-09-07 23:49:07 +02:00
Stefan Krah
d9c1bf7f1f After the jump in line 1051 unicode_tmp is NULL. Found by Coverity. 2012-09-06 13:02:46 +02:00
Antoine Pitrou
5b4faae307 Issue #13992: The trashcan mechanism is now thread-safe. This eliminates
sporadic crashes in multi-thread programs when several long deallocator
chains ran concurrently and involved subclasses of built-in container
types.

Note that the trashcan functions are part of the stable ABI, therefore
they have to be kept around for binary compatibility of extensions.
2012-09-06 01:17:42 +02:00
Antoine Pitrou
56cd62c04a Issue #13992: The trashcan mechanism is now thread-safe. This eliminates
sporadic crashes in multi-thread programs when several long deallocator
chains ran concurrently and involved subclasses of built-in container
types.

Because of this change, a couple extension modules compiled for 3.2.4
(those which use the trashcan mechanism, despite it being undocumented)
will not be loadable by 3.2.3 and earlier. However, extension modules
compiled for 3.2.3 and earlier will be loadable by 3.2.4.
2012-09-06 00:59:49 +02:00
Benjamin Peterson
d40528fe9a merge 3.2 2012-09-02 16:37:09 -04:00
Benjamin Peterson
c7dedb0945 put * in the normal place 2012-09-02 16:36:01 -04:00
Benjamin Peterson
bd0df50fb6 get rid of ast_error_finish by passing the compiling struct to ast_error 2012-09-02 15:04:51 -04:00
Benjamin Peterson
e9f72dbf0d merge 3.2 2012-09-02 14:38:15 -04:00
Benjamin Peterson
c5d7518a2e move variable decl to the top of the function 2012-09-02 14:38:08 -04:00
Benjamin Peterson
c7f447c89f merge 3.2 (#15846) 2012-09-02 14:24:44 -04:00
Benjamin Peterson
2e2c903700 prevert ast errors from being normalized before ast_error_finish is called (closes #15846) 2012-09-02 14:23:15 -04:00
Antoine Pitrou
4f0338cab7 Issue #15781: Fix two small race conditions in import's module locking. 2012-08-28 00:24:52 +02:00
Brett Cannon
12c6bda4f0 Issue #15316: Let exceptions raised during imports triggered by the
fromlist of __import__ propagate.

The problem previously was that if something listed in fromlist didn't
exist then that's okay. The fix for that was too broad in terms of
catching ImportError.

The trick with the solution to this issue is that the proper
refactoring of import thanks to importlib doesn't allow for a way to
distinguish (portably) between an ImportError because finders couldn't
find a loader, or a loader raised the exception. In Python 3.4 the
hope is to introduce a new exception (e.g. ModuleNotFound) to make it
clean to differentiate why ImportError was raised.
2012-08-24 18:25:59 -04:00
Brett Cannon
ba0a3edd26 Issue #2051: Tweak last commit for this issue to pass in mode instead
of source path to set_data() and make the new argument private until
possible API changes can be discussed more thoroughly in Python 3.4.
2012-08-24 13:48:39 -04:00
Nick Coghlan
a508770e20 Close #2501: Permission bits are once again correctly copied from the source file to the cached bytecode file. Test by Eric Snow. 2012-08-24 18:32:40 +10:00
Victor Stinner
ad54c6d82e Issue #15766: Fix a crash in imp.load_dynamic() on PyUnicode_FromString() failure 2012-08-22 17:45:52 +02:00
Antoine Pitrou
35503c9c14 Issue #15726: Fix incorrect bounds checking in PyState_FindModule.
Patch by Robin Schreiber.
2012-08-20 19:31:52 +02:00
Antoine Pitrou
75506e8b7c Issue #15726: Fix incorrect bounds checking in PyState_FindModule.
Patch by Robin Schreiber.
2012-08-20 19:30:46 +02:00
Stefan Krah
66d1eb23d4 Merge 3.2. 2012-08-20 17:20:46 +02:00
Stefan Krah
07795df683 Issue #15741: Fix potential NULL dereference. Found by Coverity. 2012-08-20 17:19:50 +02:00
Stefan Krah
28a2ad556a Check return value of asdl_seq_new(). Found by Coverity. 2012-08-20 16:07:38 +02:00
Nick Coghlan
48fec05391 Close #14846: Handle a sys.path entry going away 2012-08-20 13:18:15 +10:00
Brett Cannon
7385adc84c Issue #15715: Ignore failed imports triggered by the use of fromlist.
When the fromlist argument is specified for __import__() and the
attribute doesn't already exist, an import is attempted. If that fails
(e.g. module doesn't exist), the ImportError will now be silenced (for
backwards-compatibility). This *does not* affect
``from ... import ...`` statements.

Thanks to Eric Snow for the patch and Simon Feltman for reporting the
regression.
2012-08-17 13:21:16 -04:00
Antoine Pitrou
721738fbee Issue #15604: Update uses of PyObject_IsTrue() to check for and handle errors correctly.
Patch by Serhiy Storchaka.
2012-08-15 23:20:39 +02:00