opencv: facedetect: free IplImage with cvReleaseImage
authorLuis de Bethencourt <luis@debethencourt.com>
Wed, 5 Aug 2015 10:56:32 +0000 (11:56 +0100)
committerLuis de Bethencourt <luis@debethencourt.com>
Wed, 5 Aug 2015 10:56:37 +0000 (11:56 +0100)
Using delete() with IplImage will fail to free some of the structure's
contents. cvReleaseImage() is the proper way of freeing the memory.

ext/opencv/gstfacedetect.cpp

index 12c6f4c..3afd72c 100644 (file)
@@ -223,7 +223,7 @@ gst_face_detect_finalize (GObject * obj)
   GstFaceDetect *filter = GST_FACE_DETECT (obj);
 
   if (filter->cvGray)
-    delete (&filter->cvGray);
+    cvReleaseImage(&filter->cvGray);
   if (filter->cvStorage)
     cvReleaseMemStorage (&filter->cvStorage);
 
@@ -501,7 +501,7 @@ gst_face_detect_set_caps (GstOpencvVideoFilter * transform, gint in_width,
   filter = GST_FACE_DETECT (transform);
 
   if (filter->cvGray)
-    delete (&filter->cvGray);
+    cvReleaseImage(&filter->cvGray);
 
   filter->cvGray = cvCreateImage (cvSize (in_width, in_height), IPL_DEPTH_8U,
       1);