Fixed memory leak.
This commit is contained in:
parent
0b15541ae2
commit
8355155f22
|
@ -629,13 +629,18 @@ SHA256_new(PyObject *self, PyObject *args, PyObject *kwdict)
|
||||||
if (data_obj)
|
if (data_obj)
|
||||||
GET_BUFFER_VIEW_OR_ERROUT(data_obj, &buf, NULL);
|
GET_BUFFER_VIEW_OR_ERROUT(data_obj, &buf, NULL);
|
||||||
|
|
||||||
if ((new = newSHA256object()) == NULL)
|
if ((new = newSHA256object()) == NULL) {
|
||||||
|
if (data_obj)
|
||||||
|
PyBuffer_Release(&buf);
|
||||||
return NULL;
|
return NULL;
|
||||||
|
}
|
||||||
|
|
||||||
sha_init(new);
|
sha_init(new);
|
||||||
|
|
||||||
if (PyErr_Occurred()) {
|
if (PyErr_Occurred()) {
|
||||||
Py_DECREF(new);
|
Py_DECREF(new);
|
||||||
|
if (data_obj)
|
||||||
|
PyBuffer_Release(&buf);
|
||||||
return NULL;
|
return NULL;
|
||||||
}
|
}
|
||||||
if (data_obj) {
|
if (data_obj) {
|
||||||
|
@ -665,13 +670,18 @@ SHA224_new(PyObject *self, PyObject *args, PyObject *kwdict)
|
||||||
if (data_obj)
|
if (data_obj)
|
||||||
GET_BUFFER_VIEW_OR_ERROUT(data_obj, &buf, NULL);
|
GET_BUFFER_VIEW_OR_ERROUT(data_obj, &buf, NULL);
|
||||||
|
|
||||||
if ((new = newSHA224object()) == NULL)
|
if ((new = newSHA224object()) == NULL) {
|
||||||
|
if (data_obj)
|
||||||
|
PyBuffer_Release(&buf);
|
||||||
return NULL;
|
return NULL;
|
||||||
|
}
|
||||||
|
|
||||||
sha224_init(new);
|
sha224_init(new);
|
||||||
|
|
||||||
if (PyErr_Occurred()) {
|
if (PyErr_Occurred()) {
|
||||||
Py_DECREF(new);
|
Py_DECREF(new);
|
||||||
|
if (data_obj)
|
||||||
|
PyBuffer_Release(&buf);
|
||||||
return NULL;
|
return NULL;
|
||||||
}
|
}
|
||||||
if (data_obj) {
|
if (data_obj) {
|
||||||
|
|
|
@ -695,13 +695,18 @@ SHA512_new(PyObject *self, PyObject *args, PyObject *kwdict)
|
||||||
if (data_obj)
|
if (data_obj)
|
||||||
GET_BUFFER_VIEW_OR_ERROUT(data_obj, &buf, NULL);
|
GET_BUFFER_VIEW_OR_ERROUT(data_obj, &buf, NULL);
|
||||||
|
|
||||||
if ((new = newSHA512object()) == NULL)
|
if ((new = newSHA512object()) == NULL) {
|
||||||
|
if (data_obj)
|
||||||
|
PyBuffer_Release(&buf);
|
||||||
return NULL;
|
return NULL;
|
||||||
|
}
|
||||||
|
|
||||||
sha512_init(new);
|
sha512_init(new);
|
||||||
|
|
||||||
if (PyErr_Occurred()) {
|
if (PyErr_Occurred()) {
|
||||||
Py_DECREF(new);
|
Py_DECREF(new);
|
||||||
|
if (data_obj)
|
||||||
|
PyBuffer_Release(&buf);
|
||||||
return NULL;
|
return NULL;
|
||||||
}
|
}
|
||||||
if (data_obj) {
|
if (data_obj) {
|
||||||
|
@ -731,13 +736,18 @@ SHA384_new(PyObject *self, PyObject *args, PyObject *kwdict)
|
||||||
if (data_obj)
|
if (data_obj)
|
||||||
GET_BUFFER_VIEW_OR_ERROUT(data_obj, &buf, NULL);
|
GET_BUFFER_VIEW_OR_ERROUT(data_obj, &buf, NULL);
|
||||||
|
|
||||||
if ((new = newSHA384object()) == NULL)
|
if ((new = newSHA384object()) == NULL) {
|
||||||
|
if (data_obj)
|
||||||
|
PyBuffer_Release(&buf);
|
||||||
return NULL;
|
return NULL;
|
||||||
|
}
|
||||||
|
|
||||||
sha384_init(new);
|
sha384_init(new);
|
||||||
|
|
||||||
if (PyErr_Occurred()) {
|
if (PyErr_Occurred()) {
|
||||||
Py_DECREF(new);
|
Py_DECREF(new);
|
||||||
|
if (data_obj)
|
||||||
|
PyBuffer_Release(&buf);
|
||||||
return NULL;
|
return NULL;
|
||||||
}
|
}
|
||||||
if (data_obj) {
|
if (data_obj) {
|
||||||
|
|
Loading…
Reference in New Issue