summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--python/metaindex.cc7
1 files changed, 5 insertions, 2 deletions
diff --git a/python/metaindex.cc b/python/metaindex.cc
index 87b1e59a..195394d6 100644
--- a/python/metaindex.cc
+++ b/python/metaindex.cc
@@ -37,9 +37,12 @@ static PyObject *MetaIndexGetIndexFiles(PyObject *Self,void*) {
for (vector<pkgIndexFile *>::const_iterator I = indexFiles->begin();
I != indexFiles->end(); I++)
{
- PyObject *Obj;
- Obj = CppPyObject_NEW<pkgIndexFile*>(&PackageIndexFileType,*I);
+ CppOwnedPyObject<pkgIndexFile*> *Obj;
+ Obj = CppOwnedPyObject_NEW<pkgIndexFile*>(Self, &PackageIndexFileType,*I);
+ // Do not delete pkgIndexFile*, they are managed by metaIndex.
+ Obj->NoDelete = true;
PyList_Append(List,Obj);
+ Py_DECREF(Obj);
}
return List;
}