Commit Graph

3753 Commits

Author SHA1 Message Date
Victor Stinner 42e9d94bc5 Fix a refleak in call_maybe()
Issue #27128. Fix a reference leak if creating the tuple to pass positional
parameters fails.
2016-08-19 17:58:54 +02:00
Victor Stinner c9921d3bdc Fix a refleak in call_method()
Issue #27128. Fix a reference leak if creating the tuple to pass positional
parameters fails.
2016-08-19 17:52:53 +02:00
Martin Panter 3d36f0f712 Spelling and grammar fixes in code comments and documentation 2016-07-28 02:37:04 +00:00
Martin Panter a850ef698e Issue #27626: Spelling fixes in docs, comments and internal names
Based on patch by Ville Skyttä.
2016-07-28 01:11:04 +00:00
Martin Panter 2a0438d2e4 Issue #27581: Don’t rely on overflow wrapping in PySequence_Tuple()
Patch by Xiang Zhang.
2016-07-25 02:30:05 +00:00
Martin Panter 0c08fe09f9 Issue #27507: Check for integer overflow in bytearray.extend()
Patch by Xiang Zhang.
2016-07-18 07:53:13 +00:00
Serhiy Storchaka 373773d5b2 Issue #27473: Fixed possible integer overflow in str, unicode and bytearray
concatenations and repetitions.  Based on patch by Xiang Zhang.
2016-07-12 15:46:57 +03:00
Martin Panter b362f75f6e Issue #25523: Correct "a" article to "an" article
This changes the main documentation, doc strings, source code comments, and a
couple error messages in the test suite. In some cases the word was removed
to fix the grammar.
2015-11-02 03:37:02 +00:00
Benjamin Peterson ee69451f34 fix refleaks in PyDict_SetItem error cases (closes #27248) 2016-07-06 23:26:32 -07:00
Serhiy Storchaka 3c9ce74c21 Issue #23908: os functions, open() and the io.FileIO constructor now reject
unicode paths with embedded null character on Windows instead of silently
truncate them.
2016-07-01 23:34:44 +03:00
Martin Panter 646b528467 Issue #22463: Backport compiler warning fixes and workarounds
* Set but unused variable in Parser/pgen.c in non-debug builds. Patch by
  Christian Heimes.
* Unused static function in Modules/readline.c. Patch by Georg Brandl.
* main_window unused in Modules/tkappinit.c. Patch by Gregory P. Smith.
* Dead assignment in Modules/_ctypes/cfield.c. Extracted from patch by Brett
  Cannon.
* Expression result unused in PyObject_INIT macro expansions. Based on
  patches by Christian Heimes.
* Load expat_config.h and therefore pyconfig.h before C stdlib headers are
  loaded. This silences pre-processor warnings including '_POSIX_C_SOURCE
  redefined'. Extracted from patch by Christian Heimes.
2016-06-21 23:58:05 +00:00
Serhiy Storchaka 1a9ee946b0 Issue #27225: Fixed a reference leak in type_new when setting __new__ fails.
Original patch by Xiang Zhang.
2016-06-05 11:06:42 +03:00
Serhiy Storchaka d37781eb2e Issue #20041: Fixed TypeError when frame.f_trace is set to None.
Patch by Xavier de Gaye.
2016-06-04 20:30:43 +03:00
Martin Panter 8d496add74 Issue #27171: Fix typos in documentation, code comments, and tests 2016-06-02 10:35:44 +00:00
Martin Panter 200a615774 Issue #27125: Remove duplicated words from documentation and comments 2016-05-30 04:04:50 +00:00
Martin Panter b44c4520d9 Issue #27125: Fix various errors like “will [be] inherited” 2016-05-29 08:13:58 +00:00
Benjamin Peterson 6ee36a5a8c Backed out changeset e7062dd9085e (#25731) 2016-05-28 14:03:41 -07:00
Martin Panter b1d867f149 Issue #27076: Doc, comment and test function name spelling fixes
Most fixes to Doc/ and Lib/ directories by Ville Skyttä.
2016-05-26 05:28:50 +00:00
Serhiy Storchaka c742dff16a Issue #27039: Fixed bytearray.remove() for values greater than 127.
Patch by Joe Jevnik.
2016-05-16 22:15:57 +03:00
Benjamin Peterson 413a8e1b1b fix indentation of comments in cellobject.c (closes #27011) 2016-05-12 23:12:21 -07:00
Martin Panter 4f23cabc16 Corrections for a/an in code comments and documentation 2016-05-08 13:45:55 +00:00
Serhiy Storchaka 816a5ff3b2 Issue #17765: weakref.ref() no longer silently ignores keyword arguments.
Patch by Georg Brandl.
2016-05-07 15:41:09 +03:00
Serhiy Storchaka 9a118f1dc3 Issue #26778: Fixed "a/an/and" typos in code comment and documentation. 2016-04-17 09:37:36 +03:00
Benjamin Peterson 414f8b937f add gc support to slice (closes #26659) 2016-04-16 14:47:12 -07:00
Martin Panter 6a8163a928 Correct “an” → “a” with “Unicode”, “user”, “UTF”, etc
This affects documentation and code comments.
2016-04-15 02:14:19 +00:00
Serhiy Storchaka 9ec6464008 Issue #26718: super.__init__ no longer leaks memory if called multiple times.
NOTE: A direct call of super.__init__ is not endorsed!
2016-04-13 15:27:33 +03:00
Serhiy Storchaka 763a61ca95 Issue #26200: Added Py_SETREF and replaced Py_XSETREF with Py_SETREF
in places where Py_DECREF was used.
2016-04-10 18:05:12 +03:00
Serhiy Storchaka 149d080871 Issue #13410: Fixed a bug in PyUnicode_Format where it failed to properly
ignore errors from a __int__() method.

Patch based on the patch for issue #15516.
2016-04-10 15:26:52 +03:00
Serhiy Storchaka bc62af1bbe Issue #22570: Renamed Py_SETREF to Py_XSETREF. 2016-04-06 09:51:18 +03:00
Serhiy Storchaka 14a7d6389f Issue #26494: Fixed crash on iterating exhausting iterators.
Affected classes are generic sequence iterators, iterators of bytearray,
list, tuple, set, frozenset, dict, OrderedDict and corresponding views.
2016-03-30 20:43:06 +03:00
Benjamin Peterson 4ddb44a1d0 properly use PyObject_CallMethod in dictview binary operations (closes #26478) 2016-03-03 22:05:36 -08:00
Serhiy Storchaka 1c496178d2 Issue #25698: Importing module if the stack is too deep no longer replaces
imported module with the empty one.
2016-02-10 10:28:06 +02:00
Benjamin Peterson b59b04dd86 fix hash member name (closes #22847) 2016-02-06 22:36:06 -08:00
Benjamin Peterson 4a0a9556fc fix debug assertion 2016-02-04 22:26:10 -08:00
Antoine Pitrou 225e7c0def Issue #22847: Improve method cache efficiency. 2014-11-15 00:56:27 +01:00
Victor Stinner 7791165fb3 code_richcompare() now uses the constants types
Issue #25843: When compiling code, don't merge constants if they are equal but
have a different types. For example, "f1, f2 = lambda: 1, lambda: 1.0" is now
correctly compiled to two different functions: f1() returns 1 (int) and f2()
returns 1.0 (int), even if 1 and 1.0 are equal.

Add a new _PyCode_ConstantKey() private function.
2016-01-22 12:33:12 +01:00
Benjamin Peterson a4acf1ff84 set tp_new from the class in the hierarchy that actually owns the descriptor (closes #25731)
Debugging by Eryk Sun.
2016-01-18 21:17:54 -08:00
Barry Warsaw 607965eb7e Comment out two tests that won't pass now after reverting the typeobject.c
change.  Also, as per further discussion, we'll just remove the regressing
code in typeobject.c
2016-01-11 14:44:59 -05:00
Barry Warsaw f65395c8c2 Issue #22995: [UPDATE] Comment out the one of the pickleability tests in
_PyObject_GetState() due to regressions observed in Cython-based projects.
2016-01-11 13:52:23 -05:00
Benjamin Peterson f30bad284b remove some copyright notices supserseded by the toplevel ones 2016-01-01 11:53:47 -06:00
Serhiy Storchaka 28f35f246b Issue #25961: Fixed compilation error and a leak in type constructor. 2015-12-31 12:03:14 +02:00
Serhiy Storchaka f9347e3b44 Issue #25961: Disallowed null characters in the type name. 2015-12-30 21:39:21 +02:00
Serhiy Storchaka b8e54dd806 Issue #22995: Instances of extension types with a state that aren't
subclasses of list or dict and haven't implemented any pickle-related
methods (__reduce__, __reduce_ex__, __getnewargs__, __getnewargs_ex__,
or __getstate__), can no longer be pickled.  Including memoryview.
2015-12-30 20:43:29 +02:00
Serhiy Storchaka 2e6c829681 Issue #20440: More use of Py_SETREF.
This patch is manually crafted and contains changes that couldn't be handled
automatically.
2015-12-27 15:41:58 +02:00
Serhiy Storchaka 8688acaf2e Issue #20440: Applied yet one patch for using Py_SETREF.
The patch is automatically generated, it replaces the code that uses Py_CLEAR.
2015-12-27 12:38:48 +02:00
Serhiy Storchaka 5951f2300f Issue #20440: Massive replacing unsafe attribute setting code with special
macro Py_SETREF.
2015-12-24 10:35:35 +02:00
Serhiy Storchaka c06a6d0958 Issue #25421: __sizeof__ methods of builtin types now use dynamic basic size.
This allows sys.getsize() to work correctly with their subclasses with
__slots__ defined.
2015-12-19 20:07:48 +02:00
Serhiy Storchaka e37003e9ae Issue #19543: Added Py3k warning for decoding unicode. 2015-12-03 20:47:48 +02:00
Serhiy Storchaka ee1b24ccaa Issue #24097: Fixed crash in object.__reduce__() if slot name is freed inside
__getattr__.  Original patch by Antoine Pitrou.
2015-11-25 18:35:33 +02:00
Serhiy Storchaka 8d30ad7c8a Issue #24731: Fixed crash on converting objects with special methods
__str__, __trunc__, and __float__ returning instances of subclasses of
str, long, and float to subclasses of str, long, and float correspondingly.
2015-11-25 15:55:54 +02:00
Serhiy Storchaka 6156560e4b Issue #25678: Copy buffer objects to null-terminated strings.
Avoid buffer overreads when int(), long(), float(), and compile()
are passed buffer objects.  Similar code is removed from the
complex() constructor, where it was not reachable.

Patch backported from issue #24802 by Eryk Sun.
2015-11-20 21:56:21 +02:00
Serhiy Storchaka fedcf9474e Issue #22995: Default implementation of __reduce__ and __reduce_ex__ now
rejects builtin types with not defined __new__.
2015-11-12 11:59:03 +02:00
Victor Stinner e192d0bbb9 Issue #7267: format(int, 'c') now raises OverflowError when the argument is not
in range(0, 256).
2015-11-09 12:21:09 +01:00
Serhiy Storchaka 462502b084 Issue #24848: Fixed yet one bug in UTF-7 decoder. Testing for BASE64 character
was locale depending.
2015-10-10 09:33:11 +03:00
Raymond Hettinger 9c90e255e0 Issue #25326: Improve an obscure error message. 2015-10-08 21:14:15 -04:00
Benjamin Peterson 77d12ecaad prevent unacceptable bases from becoming bases through multiple inheritance (#24806) 2015-10-06 19:36:54 -07:00
Serhiy Storchaka e12f632186 Issue #24848: Fixed bugs in UTF-7 decoding of misformed data:
1. Non-ASCII bytes were accepted after shift sequence.
2. A low surrogate could be emitted in case of error in high surrogate.
2015-10-02 13:14:53 +03:00
Benjamin Peterson 1edd2f6241 make comment not lie about the size of SMALL_REQUEST_THRESHOLD 2015-07-29 22:18:16 -07:00
Serhiy Storchaka ab766350b6 Issue #24467: Fixed possible buffer over-read in bytearray. The bytearray
object now always allocates place for trailing null byte and it's buffer now
is always null-terminated.
2015-06-29 21:13:54 +03:00
Serhiy Storchaka f0aa88f6e8 Fixed indentation of Python examples in C comments. 2015-06-11 00:06:27 +03:00
Serhiy Storchaka c7797dc748 Issue #19543: Emit deprecation warning for known non-text encodings.
Backported issues #19619: encode() and decode() methods and constructors
of str, unicode and bytearray classes now emit deprecation warning for known
non-text encodings when Python is ran with the -3 option.

Backported issues #20404: io.TextIOWrapper (and hence io.open()) now uses the
internal codec marking system added to emit deprecation warning for known non-text
encodings at stream construction time when Python is ran with the -3 option.
2015-05-31 20:21:00 +03:00
Serhiy Storchaka 5127ed727c Issue #24115: Update uses of PyObject_IsTrue(), PyObject_Not(),
PyObject_IsInstance(), PyObject_RichCompareBool() and _PyDict_Contains()
to check for and handle errors correctly.
2015-05-30 17:45:12 +03:00
Serhiy Storchaka d43e928753 Issue #23985: Fixed integer overflow in iterator object. Original patch by
Clement Rouault.
2015-05-21 20:49:34 +03:00
Raymond Hettinger 51dbc9a4ad Issue #23757: Only call the concrete list API for exact lists. 2015-05-17 14:37:39 -07:00
Raymond Hettinger 77b3ae5e2c Issue #23971: Fix underestimated presizing in dict.fromkeys() 2015-05-13 03:13:28 -07:00
Benjamin Peterson b529c24921 allow 2.7 to be built with asan (closes #24061) 2015-04-26 20:33:38 -04:00
Serhiy Storchaka 07e03ab9f9 Issue #23783: Fixed memory leak in PyObject_ClearWeakRefs() in case of
MemoryError.
2015-03-30 09:53:06 +03:00
Serhiy Storchaka ce16424b0b Issue #22079: Py3k warning now is issued in PyType_Ready() instead of
raising TypeError when statically allocated type subclasses dynamically
allocated type
2015-03-22 09:45:35 +02:00
Antoine Pitrou 323ab6d732 Issue #23629: Fix the default __sizeof__ implementation for variable-sized objects. 2015-03-10 22:32:00 +01:00
Benjamin Peterson f050648a50 fix potential refleak in PyFloat_AsDouble (closes #23590) 2015-03-06 09:08:44 -05:00
Benjamin Peterson 082a960425 fix merge_collapse to actually maintain the invariant it purports to (closes #23515)
See
de Gouw, Stijn and Rot, Jurriaan and de Boer, Frank S and Bubel, Richard and Hähnle, Reiner
"OpenJDK’s java.utils.Collection.sort() is broken: The good, the bad and the worst case"
2015-02-25 10:12:26 -05:00
Stefan Krah 0a7fc53be2 Issue #23370: Fix off-by-one error for non-contiguous buffers. 2015-02-01 16:10:35 +01:00
Serhiy Storchaka 227526dc5c Issue #23055: Fixed read-past-the-end error in PyUnicode_FromFormatV. 2015-01-31 01:15:29 +02:00
Serhiy Storchaka 5ec0bbf27d Issue #23055: Fixed off-by-one error in PyUnicode_FromFormatV. 2015-01-30 23:35:03 +02:00
Stefan Krah 5606cd9800 Issue #23349: Fix off-by-one error in PyBuffer_ToContiguous(). Initial patch
by Richard Hansen.
2015-01-30 20:11:10 +01:00
Serhiy Storchaka 4c54387f11 Issue #22079: PyType_Ready() now checks that statically allocated type has
no dynamically allocated bases.
2015-01-28 10:52:49 +02:00
Serhiy Storchaka 0e0282eb14 Issue #23055: Fixed a buffer overflow in PyUnicode_FromFormatV. Analysis
and fix by Guido Vranken.
2015-01-27 22:17:56 +02:00
Serhiy Storchaka e8c9e14af9 Issue #23181: More "codepoint" -> "code point". 2015-01-18 11:42:50 +02:00
Benjamin Peterson e2defc4132 remove tautological condition (closes #22954) 2014-11-26 23:03:11 -06:00
Benjamin Peterson c6b6ab0caa remove strange casts 2014-11-23 12:58:54 -06:00
Georg Brandl 409062c669 Closes #22772: fix __ifloordiv__ and __itruediv__ docstring. 2014-10-31 13:12:57 +01:00
Antoine Pitrou d0a5e9bb4a Issue #22604: Fix assertion error in debug mode when dividing a complex number by (nan+0j). 2014-10-10 23:49:32 +02:00
Benjamin Peterson 95bc0e4703 use Py_ssize_t for file offset and length computations in iteration (closes #22526) 2014-09-30 21:17:15 -04:00
Benjamin Peterson f8c4b3a730 fix overflow checking in PyString_Repr (closes #22519) 2014-09-29 19:01:18 -04:00
Benjamin Peterson ed4c130d3d cleanup overflowing handling in unicode_decode_call_errorhandler and unicode_encode_ucs1 (closes #22518) 2014-09-29 18:18:57 -04:00
Benjamin Peterson 1643d5cb08 give exception a nice message (closes #22379)
Patch by Yongzhi Pan.
2014-09-28 12:48:46 -04:00
Raymond Hettinger 9376c8b5e3 Fix typo in comment. 2014-08-01 23:51:51 -07:00
Victor Stinner 2af8d2f698 Issue #22023: Fix %S, %R and %V formats of PyUnicode_FromFormat(). 2014-07-30 00:39:05 +02:00
Benjamin Peterson df71dcbef2 don't overwrite the error from PyObject_GetAttrString (closes #4346) 2014-06-26 23:27:41 -07:00
Benjamin Peterson 550b945fd6 avoid overflow with large buffer sizes and/or offsets (closes #21831) 2014-06-23 20:12:27 -07:00
Charles-François Natali e4cda6ce21 Merge. 2014-06-19 22:45:09 +01:00
Charles-François Natali cee4f03438 Issue #21810: Backport mmap-based arena allocation failure check. 2014-06-19 22:42:51 +01:00
Raymond Hettinger f643b9a9c7 Issue 8743: Improve interoperability between sets and the collections.Set abstract base class. 2014-05-25 22:13:41 -07:00
Antoine Pitrou b0acc1b0a3 Issue #21350: Fix file.writelines() to accept arbitrary buffer objects, as advertised.
Patch by Brian Kearns.
2014-05-08 19:26:04 +02:00
Kristján Valur Jónsson be580f2e48 Issue #20434 Correct error handlin of _PyString_Resize and _PyBytes_Resize 2014-04-25 09:51:21 +00:00
Eric V. Smith 9a55cd8857 Issue #12546: Allow \x00 as a fill character for builtin type __format__ methods. 2014-04-14 11:22:33 -04:00
Benjamin Peterson c4e6e0a279 bail in unicode error's __str__ methods if the objects are not properly initialized (closes #21134) 2014-04-02 12:15:06 -04:00
Benjamin Peterson 18fc493409 fix expandtabs overflow detection to be consistent and not rely on signed overflow 2014-03-30 19:47:57 -04:00
Benjamin Peterson 8312eccd34 add braces and fix indentation 2014-03-30 19:23:24 -04:00
Benjamin Peterson 0e431b9311 fix indentation and add braces 2014-03-30 19:16:44 -04:00