diff -Nur pyvorbis-1.5a/src/pyvorbiscodec.c pyvorbis-1.5apatched/src/pyvorbiscodec.c --- pyvorbis-1.5a/src/pyvorbiscodec.c 2006-10-24 21:09:28.000000000 +0200 +++ pyvorbis-1.5apatched/src/pyvorbiscodec.c 2007-09-11 00:17:48.000000000 +0200 @@ -118,7 +118,7 @@ { vorbis_dsp_clear(PY_DSP(self)); Py_XDECREF(((py_dsp *)self)->parent); - PyMem_DEL(self); + PyObject_Del(self); } static PyObject* diff -Nur pyvorbis-1.5a/src/pyvorbisfile.c pyvorbis-1.5apatched/src/pyvorbisfile.c --- pyvorbis-1.5a/src/pyvorbisfile.c 2006-10-24 21:09:28.000000000 +0200 +++ pyvorbis-1.5apatched/src/pyvorbisfile.c 2007-09-11 00:21:22.000000000 +0200 @@ -171,7 +171,7 @@ ret = py_ov_open(newobj, args); if (ret == NULL) { - PyMem_DEL(newobj); + PyObject_Del(newobj); return NULL; } @@ -196,7 +196,7 @@ free(py_self->ovf); - PyObject_DEL(self); + PyObject_Del(self); } static PyObject * diff -Nur pyvorbis-1.5a/src/pyvorbisinfo.c pyvorbis-1.5apatched/src/pyvorbisinfo.c --- pyvorbis-1.5a/src/pyvorbisinfo.c 2006-10-24 21:09:28.000000000 +0200 +++ pyvorbis-1.5apatched/src/pyvorbisinfo.c 2007-09-11 00:16:42.000000000 +0200 @@ -134,7 +134,7 @@ static void py_ov_info_dealloc(PyObject *self) { - PyMem_DEL(self); + PyObject_Del(self); } #define CMP_RET(x) \ @@ -418,7 +418,7 @@ free(ovc_self->vc); } - PyMem_DEL(self); + PyObject_Del(self); } @@ -999,6 +999,7 @@ #if PY_UNICODE item = PyUnicode_DecodeUTF8(val, vallen, NULL); if (!item) { + PyErr_Clear(); /* To deal with non-UTF8 comments (against the standard) */ item = PyString_FromStringAndSize(val, vallen); }