Merge pull request #1235 from WonderRico:bugfix_dshow

This commit is contained in:
Roman Donchenko
2013-08-12 14:33:29 +04:00
committed by OpenCV Buildbot

View File

@@ -3164,18 +3164,18 @@ void CvCaptureCAM_DShow::close()
// Initialize camera input
bool CvCaptureCAM_DShow::open( int _index )
{
int try_index = _index;
int devices = 0;
close();
devices = VI.listDevices(true);
if (devices == 0)
return false;
try_index = try_index < 0 ? 0 : (try_index > devices-1 ? devices-1 : try_index);
VI.setupDevice(try_index);
if( !VI.isDeviceSetup(try_index) )
if (_index < 0 || _index > devices-1)
return false;
index = try_index;
VI.setupDevice(_index);
if( !VI.isDeviceSetup(_index) )
return false;
index = _index;
return true;
}