Merge pull request #7695 from ArkadiuszRaj:aravis-release-bug-fix
authorArek <arek@raj.priv.pl>
Mon, 21 Nov 2016 01:22:43 +0000 (02:22 +0100)
committerAlexander Alekhin <alexander.a.alekhin@gmail.com>
Mon, 21 Nov 2016 01:22:43 +0000 (04:22 +0300)
* Aravis: fixing releasing object when no communication with camera is possible

* Removing unnecessary include

modules/videoio/src/cap_aravis.cpp

index 3423ca6..c272bee 100644 (file)
@@ -188,11 +188,12 @@ CvCaptureCAM_Aravis::CvCaptureCAM_Aravis()
 
 void CvCaptureCAM_Aravis::close()
 {
-    if(camera)
+    if(camera) {
         stopCapture();
 
-    g_object_unref(camera);
-    camera = NULL;
+        g_object_unref(camera);
+        camera = NULL;
+    }
 }
 
 bool CvCaptureCAM_Aravis::getDeviceNameById(int id, std::string &device)
@@ -559,8 +560,10 @@ void CvCaptureCAM_Aravis::stopCapture()
 {
     arv_camera_stop_acquisition(camera);
 
-    g_object_unref(stream);
-    stream = NULL;
+    if(stream) {
+        g_object_unref(stream);
+        stream = NULL;
+    }
 }
 
 bool CvCaptureCAM_Aravis::startCapture()