Skip to content

Commit 773a7e6

Browse files
committed
Merge pull request #436 from mdboom/png_error_reporting
Fix error reporting in png extension.
2 parents f3b3242 + 50dd546 commit 773a7e6

File tree

1 file changed

+12
-2
lines changed

1 file changed

+12
-2
lines changed

src/_png.cpp

Lines changed: 12 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -234,7 +234,11 @@ Py::Object _png_module::write_png(const Py::Tuple& args)
234234
fclose(fp);
235235
}
236236

237-
return Py::Object();
237+
if (PyErr_Occurred()) {
238+
throw Py::Exception();
239+
} else {
240+
return Py::Object();
241+
}
238242
}
239243

240244
static void _read_png_data(PyObject* py_file_obj, png_bytep data, png_size_t length)
@@ -475,7 +479,13 @@ _png_module::read_png(const Py::Tuple& args)
475479
delete [] row_pointers[row];
476480
}
477481
delete [] row_pointers;
478-
return Py::asObject((PyObject*)A);
482+
483+
if (PyErr_Occurred()) {
484+
Py_DECREF((PyObject *)A);
485+
throw Py::Exception();
486+
} else {
487+
return Py::asObject((PyObject*)A);
488+
}
479489
}
480490

481491
extern "C"

0 commit comments

Comments
 (0)