Skip to content
GitLab
Projects
Groups
Snippets
Help
Loading...
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
Open sidebar
Kirill Smelkov
cpython
Commits
ec3dffd2
Commit
ec3dffd2
authored
10 years ago
by
Benjamin Peterson
Browse files
Options
Download
Plain Diff
merge 3.3 (#23366)
parents
58e4e518
b261d9fc
Changes
3
Hide whitespace changes
Inline
Side-by-side
Showing
3 changed files
with
11 additions
and
0 deletions
+11
-0
Lib/test/test_itertools.py
Lib/test/test_itertools.py
+5
-0
Misc/NEWS
Misc/NEWS
+2
-0
Modules/itertoolsmodule.c
Modules/itertoolsmodule.c
+4
-0
No files found.
Lib/test/test_itertools.py
View file @
ec3dffd2
...
...
@@ -264,6 +264,11 @@ class TestBasicOps(unittest.TestCase):
for
proto
in
range
(
pickle
.
HIGHEST_PROTOCOL
+
1
):
self
.
pickletest
(
proto
,
combinations
(
values
,
r
))
# test pickling
@
support
.
bigaddrspacetest
def
test_combinations_overflow
(
self
):
with
self
.
assertRaises
(
OverflowError
):
combinations
(
"AA"
,
2
**
29
)
# Test implementation detail: tuple re-use
@
support
.
impl_detail
(
"tuple reuse is specific to CPython"
)
def
test_combinations_tuple_reuse
(
self
):
...
...
This diff is collapsed.
Click to expand it.
Misc/NEWS
View file @
ec3dffd2
...
...
@@ -50,6 +50,8 @@ Core and Builtins
Library
-------
- Issue #23366: Fixed possible integer overflow in itertools.combinations.
- Issue #23369: Fixed possible integer overflow in
_json.encode_basestring_ascii.
...
...
This diff is collapsed.
Click to expand it.
Modules/itertoolsmodule.c
View file @
ec3dffd2
...
...
@@ -2359,6 +2359,10 @@ combinations_new(PyTypeObject *type, PyObject *args, PyObject *kwds)
goto
error
;
}
if
(
r
>
PY_SSIZE_T_MAX
/
sizeof
(
Py_ssize_t
))
{
PyErr_SetString
(
PyExc_OverflowError
,
"r is too big"
);
goto
error
;
}
indices
=
PyMem_Malloc
(
r
*
sizeof
(
Py_ssize_t
));
if
(
indices
==
NULL
)
{
PyErr_NoMemory
();
...
...
This diff is collapsed.
Click to expand it.
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
.
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment