bpo-35454: Fix miscellaneous minor issues in error handling. (#11077)

* bpo-35454: Fix miscellaneous minor issues in error handling.

* Fix a null pointer dereference.
This commit is contained in:
Serhiy Storchaka 2018-12-11 08:38:03 +02:00 committed by GitHub
parent bb86bf4c4e
commit 8905fcc85a
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
9 changed files with 44 additions and 23 deletions

View file

@ -777,9 +777,11 @@ local_clear(localobject *self)
for(tstate = PyInterpreterState_ThreadHead(tstate->interp);
tstate;
tstate = PyThreadState_Next(tstate))
if (tstate->dict &&
PyDict_GetItem(tstate->dict, self->key))
PyDict_DelItem(tstate->dict, self->key);
if (tstate->dict && PyDict_GetItem(tstate->dict, self->key)) {
if (PyDict_DelItem(tstate->dict, self->key)) {
PyErr_Clear();
}
}
}
return 0;
}