Commit 21211308 authored by Nikita Manovich's avatar Nikita Manovich

Fixed VideoCapture::open() does not release previous capture sources (Bug #3150).

VideoCapture didn't call release method and just ignored the new capture sources.
OpenCV documentation:
  bool VideoCapture::open(const string& filename);
  bool VideoCapture::open(int device);

The methods first call VideoCapture::release() to close the already opened file or camera.
parent 68a992b0
......@@ -490,14 +490,14 @@ VideoCapture::~VideoCapture()
bool VideoCapture::open(const String& filename)
{
if (!isOpened())
if (isOpened()) release();
cap = cvCreateFileCapture(filename.c_str());
return isOpened();
}
bool VideoCapture::open(int device)
{
if (!isOpened())
if (isOpened()) release();
cap = cvCreateCameraCapture(device);
return isOpened();
}
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment