diff options
author | Hye-Shik Chang <hyeshik@gmail.com> | 2006-03-07 15:39:21 (GMT) |
---|---|---|
committer | Hye-Shik Chang <hyeshik@gmail.com> | 2006-03-07 15:39:21 (GMT) |
commit | 4af5c8cee4885df70884a58e2e74c48984bbe7c2 (patch) | |
tree | f4c33e559962940576f84b61f760a1b27a3b8618 /Modules/arraymodule.c | |
parent | ef1701f7d3a57427c1289bef32227a7aaac7905a (diff) | |
download | cpython-4af5c8cee4885df70884a58e2e74c48984bbe7c2.zip cpython-4af5c8cee4885df70884a58e2e74c48984bbe7c2.tar.gz cpython-4af5c8cee4885df70884a58e2e74c48984bbe7c2.tar.bz2 |
SF #1444030: Fix several potential defects found by Coverity.
(reviewed by Neal Norwitz)
Diffstat (limited to 'Modules/arraymodule.c')
-rw-r--r-- | Modules/arraymodule.c | 11 |
1 files changed, 7 insertions, 4 deletions
diff --git a/Modules/arraymodule.c b/Modules/arraymodule.c index be12775..2318739 100644 --- a/Modules/arraymodule.c +++ b/Modules/arraymodule.c @@ -1852,10 +1852,13 @@ array_new(PyTypeObject *type, PyObject *args, PyObject *kwds) Py_DECREF(v); } } else if (initial != NULL && PyString_Check(initial)) { - PyObject *t_initial = PyTuple_Pack(1, - initial); - PyObject *v = - array_fromstring((arrayobject *)a, + PyObject *t_initial, *v; + t_initial = PyTuple_Pack(1, initial); + if (t_initial == NULL) { + Py_DECREF(a); + return NULL; + } + v = array_fromstring((arrayobject *)a, t_initial); Py_DECREF(t_initial); if (v == NULL) { |