* clmodule.c (doParams): free PVbuffer in error condition.
* frameobject.c (newframeobject): initialize ob_type if taking entry
from the free list, since it is zeroed out when DEBUG is defined.
diff --git a/Modules/clmodule.c b/Modules/clmodule.c
index a9a378e..63e81db 100644
--- a/Modules/clmodule.c
+++ b/Modules/clmodule.c
@@ -365,8 +365,10 @@
error_handler_called = 0;
(*func)(self->ob_compressorHdl, PVbuffer, length);
- if (error_handler_called)
+ if (error_handler_called) {
+ DEL(PVbuffer);
return NULL;
+ }
if (modified) {
for (i = 0; i < length; i++) {
diff --git a/Objects/frameobject.c b/Objects/frameobject.c
index 62a18e2..0b5e75c 100644
--- a/Objects/frameobject.c
+++ b/Objects/frameobject.c
@@ -137,6 +137,7 @@
else {
f = free_list;
free_list = free_list->f_back;
+ f->ob_type = &Frametype;
NEWREF(f);
}
if (f != NULL) {