message: Fixed a couple of memory leaks in videoInput::getDevice() when multiple devices are present in the system
diff: @@ -2912,7 +2912,7 @@ HRESULT videoInput::getDevice(IBaseFilter** gottaFilter, int deviceId, WCHAR * w
  // Enumerate the monikers.
  IMoniker *pMoniker = NULL;
  ULONG cFetched;
  - while ((pEnumCat->Next(1, &pMoniker, &cFetched) == S_OK) && (!done))
  + while ((!done) && (pEnumCat->Next(1, &pMoniker, &cFetched) == S_OK))
  {
  if(deviceCounter == deviceId)
  {
  @@ -2951,6 +2951,12 @@ HRESULT videoInput::getDevice(IBaseFilter** gottaFilter, int deviceId, WCHAR * w
  pMoniker = NULL;
  }
  }
  + else
  + {
  + // cleaning for the case when this isn't the device we are looking for
  + pMoniker->Release();
  + pMoniker = NULL;
  + }
  deviceCounter++;
  }
  pEnumCat->Release();
  