Просмотр исходного кода

dshow: save opened device reference so it may be properly closed

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
Ramiro Polla 13 лет назад
Родитель
Сommit
e3e962835f
1 измененных файлов с 2 добавлено и 0 удалено
  1. 2 0
      libavdevice/dshow.c

+ 2 - 0
libavdevice/dshow.c

@@ -561,11 +561,13 @@ static int
 dshow_list_device_options(AVFormatContext *avctx, ICreateDevEnum *devenum,
                           enum dshowDeviceType devtype)
 {
+    struct dshow_ctx *ctx = avctx->priv_data;
     IBaseFilter *device_filter = NULL;
     int r;
 
     if ((r = dshow_cycle_devices(avctx, devenum, devtype, &device_filter)) < 0)
         return r;
+    ctx->device_filter[devtype] = device_filter;
     if ((r = dshow_cycle_pins(avctx, devtype, device_filter, NULL)) < 0)
         return r;