Merged revisions 71026 via svnmerge from

svn+ssh://pythondev@svn.python.org/python/trunk

........
  r71026 | benjamin.peterson | 2009-04-01 21:52:46 -0500 (Wed, 01 Apr 2009) | 1 line

  fix error handling
........
This commit is contained in:
Benjamin Peterson 2009-04-02 02:58:49 +00:00
parent d9f564f60f
commit 945e052acc
1 changed files with 7 additions and 4 deletions

View File

@ -731,7 +731,6 @@ analyze_child_block(PySTEntryObject *entry, PyObject *bound, PyObject *free,
PyObject *global, PyObject* child_free)
{
PyObject *temp_bound = NULL, *temp_global = NULL, *temp_free = NULL;
int success = 0;
/* Copy the bound and global dictionaries.
@ -758,13 +757,17 @@ analyze_child_block(PySTEntryObject *entry, PyObject *bound, PyObject *free,
if (!analyze_block(entry, temp_bound, temp_free, temp_global))
goto error;
success = PyDict_Update(child_free, temp_free) >= 0;
success = 1;
if (PyDict_Update(child_free, temp_free) < 0)
goto error;
Py_DECREF(temp_bound);
Py_DECREF(temp_free);
Py_DECREF(temp_global);
return 1;
error:
Py_XDECREF(temp_bound);
Py_XDECREF(temp_free);
Py_XDECREF(temp_global);
return success;
return 0;
}
static int