Commit Graph

3546 Commits

Author SHA1 Message Date
Benjamin Peterson 47fa4d54e8 avoid a function call with redundant checks for dict size 2012-10-31 14:22:12 -04:00
Benjamin Peterson 0ec820fc5f only fast-path fromkeys() when the constructor returns a empty dict (closes #16345) 2012-10-31 14:05:55 -04:00
Benjamin Peterson 6da3ed63d8 initialize more global type objects (closes #16369) 2012-10-30 23:21:10 -04:00
Mark Dickinson 75d3600466 Issue #14700: Fix buggy overflow checks for large precision and width in new-style and old-style formatting. 2012-10-28 10:00:46 +00:00
Chris Jerdonek ad4b000179 Issue #14783: Backport changes from 3.2. 2012-10-07 20:37:54 -07:00
Mark Dickinson 218a8ab5eb Issues #16029, #16030: Fix pickling and repr of large xranges. 2012-09-28 20:36:36 +01:00
Christian Heimes 47770ed914 Fixed memory leak in error branch of object_repr which may leak a reference to mod when type_name returns NULL. CID 715371 2012-09-10 16:57:36 +02:00
Christian Heimes 4e80eea60e Fixed possible reference leak to mod when type_name() returns NULL 2012-09-10 03:00:14 +02:00
Christian Heimes 074ebced1b PyTuple_Pack() was missing va_end() in its error branch which lead to a resource leak. 2012-09-10 02:54:51 +02:00
Antoine Pitrou 58098a77e6 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 2.7.4
(those which use the trashcan mechanism, despite it being undocumented)
will not be loadable by 2.7.3 and earlier. However, extension modules
compiled for 2.7.3 and earlier will be loadable by 2.7.4.
2012-09-06 00:59:49 +02:00
Benjamin Peterson 23d49d3e7e use the stricter PyMapping_Check (closes #15801) 2012-08-28 17:55:35 -04:00
Antoine Pitrou c5bef75c77 Issue #15604: Update uses of PyObject_IsTrue() to check for and handle errors correctly.
Patch by Serhiy Storchaka.
2012-08-15 23:16:51 +02:00
Antoine Pitrou 715a63b783 Issue #14579: Fix error handling bug in the utf-16 decoder.
Patch by Serhiy Storchaka.
2012-07-21 00:52:06 +02:00
Benjamin Peterson 7d8a2e41a0 allow any number to be returned from __length_hint__ (closes #15354) 2012-07-14 17:53:55 -07:00
Gregory P. Smith b2ac4d693a Fixes issue #12268 for file readline, readlines and read() and readinto methods.
They no longer lose data when an underlying read system call is interrupted.
IOError is no longer raised due to a read system call returning EINTR from
within these methods.
2012-06-25 20:57:36 -07:00
Raymond Hettinger aad5b02e62 Improve tooltips for splitlines() by showing that the default for keepends is False. 2012-06-02 01:42:58 -04:00
Martin v. Löwis ed11a5d018 Issue #8767: Restore building with --disable-unicode.
Original patch by Stefano Taschini.
2012-05-20 10:42:17 +02:00
Benjamin Peterson f1ae5cf5c7 fix possible refleak (closes #14752) 2012-05-08 09:22:24 -04:00
Benjamin Peterson d62da9d658 close() doesn't take any args (closes #14717) 2012-05-03 18:44:09 -04:00
Benjamin Peterson f3ad1f94a8 use formats that work on 2.7 2012-05-01 10:16:33 -04:00
Benjamin Peterson 042c47b2c7 fix calling the classmethod descriptor directly (closes #14699) 2012-05-01 09:51:09 -04:00
Benjamin Peterson d157a4c3dd don't use a slot wrapper from a different special method (closes #14658)
This also alters the fix to #11603. Specifically, setting __repr__ to
object.__str__ now raises a recursion RuntimeError when str() or repr() is
called instead of silently bypassing the recursion. I believe this behavior is
more correct.
2012-04-24 11:06:25 -04:00
Benjamin Peterson 76605557ea SETUP_WITH acts like SETUP_FINALLY for the purposes of setting f_lineno (closes #14612) 2012-04-18 11:14:31 -04:00
Benjamin Peterson fe146ea3c7 merge 2.7 release branch 2012-04-09 14:54:09 -04:00
Benjamin Peterson f51c384a0a fix build without Py_DEBUG and DNDEBUG (closes #14509) 2012-04-09 14:53:07 -04:00
Antoine Pitrou 02a380105d Issue #14505: Fix file descriptor leak when deallocating file objects created with PyFile_FromString(). 2012-04-05 14:07:52 +02:00
Antoine Pitrou fe9417726c Issue #13019: Fix potential reference leaks in bytearray.extend().
Patch by Suman Saha.
2012-04-01 16:05:46 +02:00
Benjamin Peterson e8ecc73844 kill this terribly outdated comment 2012-03-25 22:40:54 -04:00
Benjamin Peterson dbc52f8a0d check for string attribute names in old-style classes (closes #14334) 2012-03-16 10:58:46 -05:00
Benjamin Peterson 6e7832b04c check to make sure the attribute is a string (#14334) 2012-03-16 09:32:59 -05:00
Ezio Melotti eace3a7261 #14161: fix compile error under Windows. 2012-03-12 01:28:45 +02:00
Ezio Melotti 11f8b6872a #14161: fix the __repr__ of file objects to escape the file name. 2012-03-12 01:17:02 +02:00
Benjamin Peterson 9d7601fcea merge 2.6 2012-02-21 11:24:21 -05:00
Benjamin Peterson 26da920001 ensure no one tries to hash things before the random seed is found 2012-02-21 11:08:50 -05:00
Benjamin Peterson aee9dfba4a merge 2.6 with hash randomization fix 2012-02-20 21:44:56 -05:00
Barry Warsaw 1e13eb084f - Issue #13703: oCERT-2011-003: add -R command-line option and PYTHONHASHSEED
environment variable, to provide an opt-in way to protect against denial of
  service attacks due to hash collisions within the dict and set types.  Patch
  by David Malcolm, based on work by Victor Stinner.
2012-02-20 20:42:21 -05:00
Éric Araujo a4c81b07f8 Fix typo 2012-02-20 02:07:31 +01:00
Benjamin Peterson 32c49d9533 use Py_CLEAR 2012-02-19 01:11:56 -05:00
Antoine Pitrou fd7e4964bb Fix indentation. 2012-02-15 02:57:19 +01:00
Antoine Pitrou c66ed457ef Issue #13020: Fix a reference leak when allocating a structsequence object fails.
Patch by Suman Saha.
2012-02-15 02:51:43 +01:00
Benjamin Peterson 0f7e2df2f1 this is only a borrowed ref in Brett's branch 2012-02-10 08:46:54 -05:00
Benjamin Peterson cec6a61d30 bltinmod is borrowed, so it shouldn't be decrefed 2012-02-06 11:28:45 -05:00
Benjamin Peterson 4c79aec716 put returns on their own lines 2012-02-03 19:22:31 -05:00
Mark Dickinson 1abe6cd842 Issue #13889: Add missing _Py_SET_53BIT_PRECISION_* calls around uses of dtoa.c functions in float round. 2012-01-27 21:16:01 +00:00
Benjamin Peterson a8d458560e allow cycles throught the __dict__ slot to be cleared (closes #1469629)
Patch from Armin, test from me.
2012-03-07 18:41:11 -06:00
Antoine Pitrou 6a1cd1b3b1 Issue #13521: dict.setdefault() now does only one lookup for the given key, making it "atomic" for many purposes.
Patch by Filip Gruszczyński.
2012-02-27 00:45:12 +01:00
Georg Brandl 6f14c330fa Small clarification in docstring of dict.update(): the positional argument is not required. 2011-12-18 19:30:55 +01:00
Antoine Pitrou 5b4b2da55d Fix the fix for issue #12149: it was incorrect, although it had the side
effect of appearing to resolve the issue.  Thanks to Mark Shannon for
noticing.
2011-12-15 14:15:31 +01:00
Victor Stinner 975134e2a2 Issue #13093: Fix error handling on PyUnicode_EncodeDecimal()
Add tests for PyUnicode_EncodeDecimal()
2011-11-22 01:54:19 +01:00
Raymond Hettinger 7d1483cbad Make an error message more understandable and consistent with other error messages. 2011-11-20 10:38:53 -08:00