PyThread_type_lock lock;
} BZ2Decompressor;
+#define _BZ2Compressor_CAST(op) ((BZ2Compressor *)(op))
+#define _BZ2Decompressor_CAST(op) ((BZ2Decompressor *)(op))
+
/* Helper functions. */
static int
}
static void
-BZ2Compressor_dealloc(BZ2Compressor *self)
+BZ2Compressor_dealloc(PyObject *op)
{
+ BZ2Compressor *self = _BZ2Compressor_CAST(op);
BZ2_bzCompressEnd(&self->bzs);
if (self->lock != NULL) {
PyThread_free_lock(self->lock);
}
static int
-BZ2Compressor_traverse(BZ2Compressor *self, visitproc visit, void *arg)
+BZ2Compressor_traverse(PyObject *self, visitproc visit, void *arg)
{
Py_VISIT(Py_TYPE(self));
return 0;
}
static void
-BZ2Decompressor_dealloc(BZ2Decompressor *self)
+BZ2Decompressor_dealloc(PyObject *op)
{
+ BZ2Decompressor *self = _BZ2Decompressor_CAST(op);
+
if(self->input_buffer != NULL) {
PyMem_Free(self->input_buffer);
}
}
static int
-BZ2Decompressor_traverse(BZ2Decompressor *self, visitproc visit, void *arg)
+BZ2Decompressor_traverse(PyObject *self, visitproc visit, void *arg)
{
Py_VISIT(Py_TYPE(self));
return 0;