summaryrefslogtreecommitdiffstats
path: root/Objects
Commit message (Collapse)AuthorAgeFilesLines
* bpo-34910: Ensure that PyObject_Print() always returns -1 on error. (GH-9733)Miss Islington (bot)2018-10-061-2/+3
| | | | | (cherry picked from commit ae62f015240c9162773341a9922794e6b960779d) Co-authored-by: Zackery Spytz <zspytz@gmail.com>
* bpo-34899: Fix a possible assertion failure due to int_from_bytes_impl() ↵Miss Islington (bot)2018-10-051-1/+1
| | | | | | | | | (GH-9705) The _PyLong_FromByteArray() call in int_from_bytes_impl() was unchecked. (cherry picked from commit 7bb9cd0a6766fd3e7b3c1e8f2315304ae192b34c) Co-authored-by: Zackery Spytz <zspytz@gmail.com>
* bpo-34879: Fix a possible null pointer dereference in bytesobject.c (GH-9683)Miss Islington (bot)2018-10-031-1/+1
| | | | | | | | formatfloat() was not checking if PyBytes_FromStringAndSize() failed, which could lead to a null pointer dereference in _PyBytes_FormatEx(). (cherry picked from commit 96c593279400693226d5a560c420ae0fcf1731b9) Co-authored-by: Zackery Spytz <zspytz@gmail.com>
* bpo-34320: Fix dict(o) didn't copy order of dict subclass (GH-8624)Miss Islington (bot)2018-09-261-1/+3
| | | | | | | | | When dict subclass overrides order (`__iter__()`, `keys()`, and `items()`), `dict(o)` should use it instead of dict ordering. https://bugs.python.org/issue34320 (cherry picked from commit 2aaf98c16ae3070378de523a173e29644037d8bd) Co-authored-by: INADA Naoki <methane@users.noreply.github.com>
* [3.7] Fix misleading mentions of tp_size in comments. (GH-9136)Benjamin Peterson2018-09-102-3/+3
| | | | | | | Many type object initializations labeled a field "tp_size" in the comment, but the name of that field is tp_basicsize.. (cherry picked from commit 0e0bc4e221f592f305d335faf5f8046484eb9238) Co-authored-by: Peter Eisentraut <peter@eisentraut.org>
* bpo-25750: fix refcounts in type_getattro() (GH-6118)Miss Islington (bot)2018-09-071-6/+11
| | | | | | | When calling tp_descr_get(self, obj, type), make sure that we own a strong reference to "self". (cherry picked from commit 8f735485acf2e35a75d2fa019feb8f905598c4e5) Co-authored-by: jdemeyer <jdemeyer@cage.ugent.be>
* closes bpo-34504: Remove the useless NULL check in PySequence_Check(). (GH-8935)Miss Islington (bot)2018-08-261-1/+1
| | | | | | Reported by Svace static analyzer. (cherry picked from commit b57b4ac042b977e0b42a2f5ddb30ca7edffacfa9) Co-authored-by: Alexey Izbyshev <izbyshev@ispras.ru>
* closes bpo-34501: PyType_FromSpecWithBases: Check spec->name before ↵Miss Islington (bot)2018-08-251-4/+9
| | | | | | | | dereferencing it. (GH-8930) Reported by Svace static analyzer. (cherry picked from commit 5f79b50763d687aeeed8edcb4efcc7ac9f8fa186) Co-authored-by: Alexey Izbyshev <izbyshev@ispras.ru>
* closes bpo-34493: Objects/genobject.c: Add missing NULL check to ↵Miss Islington (bot)2018-08-251-0/+3
| | | | | | | compute_cr_origin() (GH-8911) (cherry picked from commit 8fdd331bbf7e60dd81c02c7077f44c7939e2a05d) Co-authored-by: Alexey Izbyshev <izbyshev@ispras.ru>
* closes bpo-34468: Objects/rangeobject.c: Fix an always-false condition in ↵Miss Islington (bot)2018-08-241-4/+4
| | | | | | | | | | | range_repr() (GH-8880) Also, propagate the error from PyNumber_AsSsize_t() because we don't care only about OverflowError which is not reported if the second argument is NULL. Reported by Svace static analyzer. (cherry picked from commit 7ecae3ca0bda3cacf3b0125bae0bc718a17cc071) Co-authored-by: Alexey Izbyshev <izbyshev@ispras.ru>
* closes bpo-34477: Objects/typeobject.c: Add missing NULL check to ↵Miss Islington (bot)2018-08-241-0/+3
| | | | | | | | type_init() (GH-8876) Reported by Svace static analyzer. (cherry picked from commit f6247aac08c1a79d0479145a405718bb76dba434) Co-authored-by: Alexey Izbyshev <izbyshev@ispras.ru>
* bpo-34436: Fix check that disables overallocation for the last fmt specifier ↵Miss Islington (bot)2018-08-231-3/+3
| | | | | | | | (GH-8826) Reported by Svace static analyzer. (cherry picked from commit ccd99752675042bd5f67d332c5b0ed85ba1f2da3) Co-authored-by: Alexey Izbyshev <izbyshev@ispras.ru>
* bpo-34435: Add missing NULL check to unicode_encode_ucs1(). (GH-8823)Miss Islington (bot)2018-08-191-2/+3
| | | | | | Reported by Svace static analyzer. (cherry picked from commit 74a307d48ef8b278c4629ca0ef2139be1c9a34e6) Co-authored-by: Alexey Izbyshev <izbyshev@users.noreply.github.com>
* bpo-24618: Add a check in the code constructor. (GH-8283)Miss Islington (bot)2018-07-161-3/+15
| | | | | | Check that the size of the varnames tuple is enough at least for all arguments. (cherry picked from commit bd47384e07bde38a8f18b90b4cea02a505d95c75) Co-authored-by: Serhiy Storchaka <storchaka@gmail.com>
* bpo-34087: Fix buffer overflow in int(s) and similar functions (GH-8274)Miss Islington (bot)2018-07-141-0/+2
| | | | | | | | | `_PyUnicode_TransformDecimalAndSpaceToASCII()` missed trailing NUL char. It caused buffer overflow in `_Py_string_to_number_with_underscores()`. This bug is introduced in 9b6c60cb. (cherry picked from commit 16dfca4d829e45f36e71bf43f83226659ce49315) Co-authored-by: INADA Naoki <methane@users.noreply.github.com>
* bpo-34042: Fix dict.copy() to maintain correct total refcount (GH-8119)Miss Islington (bot)2018-07-061-0/+7
| | | | | (cherry picked from commit 0b75228700e0077d8bf2636e74733389514b4b2f) Co-authored-by: Yury Selivanov <yury@magic.io>
* fix two typos in Objects/odictobject.c comments (GH-8040)Miss Islington (bot)2018-07-061-2/+2
| | | | | (cherry picked from commit 6f19fc6d5607040ee36153a64a2ed004582af91f) Co-authored-by: Robert Krzyzanowski <technoguyrob@gmail.com>
* update to Unicode 11.0.0 (closes bpo-33778) (GH-7439) (GH-7470)Miss Islington (bot)2018-06-071-724/+946
| | | | | | Also, standardize indentation of generated tables. (cherry picked from commit 7c69c1c0fba8c1c8ff3969bce4c1135736a4cc58) Co-authored-by: Benjamin Peterson <benjamin@python.org>
* Fix typo in __mul__ and __rmul__ docstring (GH-6674)Miss Islington (bot)2018-05-091-2/+2
| | | | | (cherry picked from commit 0904f766e116c269675317e11368a4d29eef0bc6) Co-authored-by: Grant Jenks <grant.jenks@gmail.com>
* bpo-33391: Fix refleak in set_symmetric_difference (GH-6670)Miss Islington (bot)2018-05-021-1/+3
| | | | | (cherry picked from commit 491bbedc209fea314a04cb3015da68fb0aa63238) Co-authored-by: lekma <lekmalek@gmail.com>
* Spelling fixes to docs, docstrings, and comments (GH-6374)Miss Islington (bot)2018-04-201-1/+1
| | | | | (cherry picked from commit 61f82e0e337f971da57f8f513abfe693edf95aa5) Co-authored-by: Ville Skyttä <ville.skytta@iki.fi>
* bpo-33312: Fix clang ubsan out of bounds warnings in dict. (GH-6537) (GH-6543)Miss Islington (bot)2018-04-202-24/+14
| | | | | | | | | | | | | | | | | | | | | Fix clang ubsan (undefined behavior sanitizer) warnings in dictobject.c by adjusting how the internal struct _dictkeysobject shared keys structure is declared. This remains ABI compatible. We get rid of the union at the end of the struct being used for conveinence to avoid typecasting in favor of char[] variable length array at the end of a struct. This is known to clang to be used for variable sized objects and will not cause an undefined behavior problem. Similarly, char arrays do not have strict aliasing undefined behavior when cast. PEP-007 does not currently list variable length arrays (VLAs) as allowed in our subset of C99. If this turns out to be a problem, the fix to this is to change the char `dk_indices[]` into `dk_indices[1]` and restore the three size computation subtractions this change removes: `- Py_MEMBER_SIZE(PyDictKeysObject, dk_indices)` If this works as is I'll make a separate PR to update PEP-007. (cherry picked from commit 397f1b28c4a12e3b3ed59a89599eabc457412649)
* bpo-33205: dict: Change GROWTH_RATE to `used*3` (GH-6350)Miss Islington (bot)2018-04-171-6/+5
| | | | | (cherry picked from commit 5fbc511f56688654a05b9eba23d140318bb9b2d5) Co-authored-by: INADA Naoki <methane@users.noreply.github.com>
* [3.7] bpo-33031: Remove dead code in C implementation of OrderedDict. ↵Serhiy Storchaka2018-04-091-76/+1
| | | | | | | | (GH-6120) (GH-6433) This code doesn't have effect on the final result, but causes GCC 8 warnings and can have an undefined behavior. (cherry picked from commit 827d49f3cf0296f1e267eae6834a977cf312cc1e)
* bpo-33199: Initialize ma_version_tag in PyDict_Copy (GH-6341)Miss Islington (bot)2018-04-031-0/+1
| | | | | (cherry picked from commit d1c82c5cc7be0c21dddf86fd19c1702f6218459b) Co-authored-by: INADA Naoki <methane@users.noreply.github.com>
* Fix typo and edit for clarity in the docstrings of sys.float_info. (GH-2251)Miss Islington (bot)2018-03-261-3/+2
| | | | | (cherry picked from commit 0301c9bdd1ebd788d1334cf3fe06c48f35bab0dc) Co-authored-by: Stefano Taschini <taschini@users.noreply.github.com>
* bpo-32374: m_traverse may be called with m_state=NULL (GH-5140)Miss Islington (bot)2018-03-171-0/+21
| | | | | | | | Multi-phase initialized modules allow m_traverse to be called while the module is still being initialized, so module authors may need to account for that. (cherry picked from commit c2b0b12d1a137ada1023ab7c10b8d9a0249d95f9) Co-authored-by: Marcel Plch <gmarcel.plch@gmail.com>
* [3.7] bpo-17288: Prevent jumps from 'return' and 'exception' trace events. ↵xdegaye2018-03-131-4/+36
| | | | (GH-5928)
* [3.7] bpo-33026: Fix jumping out of "with" block by setting f_lineno. ↵Serhiy Storchaka2018-03-111-0/+7
| | | | | | | (GH-6026). (#6074) (cherry picked from commit 26c9f565d016db21257a60d29ab2c99383dd5ac7) Co-authored-by: Serhiy Storchaka <storchaka@gmail.com>
* closes bpo-32898: Fix debug build crash with COUNT_ALLOCS (GH-5800)Miss Islington (bot)2018-02-223-3/+4
| | | | | (cherry picked from commit 745dc65b17b3936e3f9f4099f735f174d30c4e0c) Co-authored-by: Eddie Elizondo <eduardo.elizondorueda@gmail.com>
* bpo-31787: Prevent refleaks when calling __init__() more than once (GH-3995)Miss Islington (bot)2018-02-132-6/+6
| | | | | (cherry picked from commit d019bc8319ea35e93bf4baa38098ff1b57cd3ee5) Co-authored-by: Oren Milman <orenmn@gmail.com>
* bpo-32827: Fix usage of _PyUnicodeWriter_Prepare() in decoding errors ↵Miss Islington (bot)2018-02-131-7/+3
| | | | | | | | handler. (GH-5636) (GH-5650) (cherry picked from commit b7e2d67f7c035f09c921ca4e7a36529cd502ccf7) Co-authored-by: Serhiy Storchaka <storchaka@gmail.com>
* [3.7] bpo-32746: Fix multiple typos (GH-5144) (GH-5520)Miss Islington (bot)2018-02-043-3/+3
| | | | | | Fix typos found by codespell in docs, docstrings, and comments. (cherry picked from commit c3d9508ff22ece9a96892b628dd5813e2fb0cd80) Co-authored-by: Leo Arias <leo.arias@canonical.com>
* bpo-32583: Fix possible crashing in builtin Unicode decoders (#5325)Xiang Zhang2018-01-311-2/+20
| | | | | When using customized decode error handlers, it is possible for builtin decoders to write out-of-bounds and then crash.
* bpo-32703: Fix coroutine resource warning in case where there's an error ↵Yury Selivanov2018-01-291-6/+7
| | | | | (GH-5410) The commit removes one unnecessary "if" clause in genobject.c. That "if" clause was masking un-awaited coroutines warnings just to make writing unittests more convenient.
* bpo-28685: Fix compiler warning (GH-5423)Victor Stinner2018-01-291-1/+2
|
* bpo-28685: Optimize sorted() list.sort() with type-specialized comparisons ↵embg2018-01-292-71/+345
| | | | (#582)
* bpo-32690: Preserve order of locals() (#5379)Raymond Hettinger2018-01-281-2/+2
|
* bpo-32685: Improve suggestion for print statement (GH-5375)Nitish Chandra2018-01-281-14/+19
| | | | | | | Better account for single-line compound statements and semi-colon separated statements when suggesting Py3 replacements for Py2 print statements. Initial patch by Nitish Chandra.
* bpo-32677: Optimize str.isascii() (GH-5356)INADA Naoki2018-01-281-4/+36
|
* Fix wrong assert in unicodeobject (GH-5340)INADA Naoki2018-01-271-1/+1
|
* bpo-32677: Add .isascii() to str, bytes and bytearray (GH-5342)INADA Naoki2018-01-276-1/+72
|
* bpo-32670: Enforce PEP 479. (#5327)Yury Selivanov2018-01-261-50/+8
|
* bpo-18533: Avoid RecursionError from repr() of recursive dictview (#4823)bennorth2018-01-261-4/+12
| | | | | | | | | | | | | | | | | dictview_repr(): Use a Py_ReprEnter() / Py_ReprLeave() pair to check for recursion, and produce "..." if so. test_recursive_repr(): Check for the string rather than a RecursionError. (Test cannot be any tighter as contents are implementation-dependent.) test_deeply_nested_repr(): Add new test, replacing the original test_recursive_repr(). It checks that a RecursionError is raised in the case of a non-recursive but deeply nested structure. (Very similar to what test_repr_deep() in test/test_dict.py does for a normal dict.) OrderedDictTests: Add new test case, to test behavior on OrderedDict instances containing their own values() or items().
* bpo-32571: Fix reading uninitialized memory (GH-5332)INADA Naoki2018-01-261-0/+5
| | | Reported by Coverity Scan.
* bpo-32571: Avoid raising unneeded AttributeError and silencing it in C code ↵Serhiy Storchaka2018-01-257-131/+106
| | | | | (GH-5222) Add two new private APIs: _PyObject_LookupAttr() and _PyObject_LookupAttrId()
* bpo-32436: Implement PEP 567 (#5027)Yury Selivanov2018-01-231-0/+1
|
* bpo-31179: Make dict.copy() up to 5.5 times faster. (#3067)Yury Selivanov2018-01-221-0/+73
|
* bpo-32591: Add native coroutine origin tracking (#5250)Nathaniel J. Smith2018-01-211-4/+57
| | | | | | * Add coro.cr_origin and sys.set_coroutine_origin_tracking_depth * Use coroutine origin information in the unawaited coroutine warning * Stop using set_coroutine_wrapper in asyncio debug mode * In BaseEventLoop.set_debug, enable debugging in the correct thread
* bpo-32028: Fix suggestions for indented print statements (GH-4688)Sanyam Khurana2018-01-201-5/+11
| | | | | | | The suggested replacement for print statements previously failed to account for leading whitespace and hence could end up including unwanted text in the proposed call to the print builtin. Patch by Sanyam Khurana.