(Merge 3.4) Issue #22338: Fix a crash in the json module on memory allocation

failure.
This commit is contained in:
Victor Stinner 2014-09-10 23:32:36 +02:00
commit 8ebf910612
2 changed files with 4 additions and 1 deletions

View File

@ -132,6 +132,8 @@ Core and Builtins
Library Library
------- -------
- Issue #22338: Fix a crash in the json module on memory allocation failure.
- Issue #12410: imaplib.IMAP4 now supports the context management protocol. - Issue #12410: imaplib.IMAP4 now supports the context management protocol.
Original patch by Tarek Ziadé. Original patch by Tarek Ziadé.

View File

@ -287,7 +287,7 @@ _build_rval_index_tuple(PyObject *rval, Py_ssize_t idx) {
} \ } \
} \ } \
if (PyList_Append(chunks, chunk)) { \ if (PyList_Append(chunks, chunk)) { \
Py_DECREF(chunk); \ Py_CLEAR(chunk); \
goto bail; \ goto bail; \
} \ } \
Py_CLEAR(chunk); \ Py_CLEAR(chunk); \
@ -1555,6 +1555,7 @@ encoder_listencode_dict(PyEncoderObject *s, _PyAccu *acc,
if (item == NULL) if (item == NULL)
goto bail; goto bail;
PyList_SET_ITEM(items, i, item); PyList_SET_ITEM(items, i, item);
item = NULL;
Py_DECREF(key); Py_DECREF(key);
} }
} }