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
commit 504ebda7c4

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;
}