On 4/22/15, Máté Sebők <smfinc....@gmail.com> wrote: > Indeed, sorry i've forgotten to change the Eclipse' EOL to unix-- now > fixed. > > Error handler fixed.
Thank you it's very close. A few more nits and we'll be there. You have + if (ofile_stream) + IStream_Release(ofile_stream); in there twice. In reality even a "normal flow" goes through the error block, so you'll only want/need to release it in the error block (it's being released twice currently). As is it seg faults... Also in this block: hr = OleSaveToStream(pers_stream, ofile_stream); if (hr != S_OK) { av_log(avctx, AV_LOG_ERROR, "Could not save capture filter \n"); goto error; } IPersistStream_Release(pers_stream); if it calls that "goto error" it will end up never releasing the IpersistStream object. So basically for the pers_stream you're going to want to have two of them (like you did with the other) and release them both in the error block. I'll admit the concept of a cleanup block kind of confused me at first...but it's how the code was initially written so I've kept using it, and it works out OK. Besides that LGTM. -roger- > Parameter names changed to audio(/video)_device_load(/save) as I think the > to_file and from_file is evident and is specified in the help. > > About the "fake" input: by loading a device filter from file, in the > dshow_open_device() it loads the device object from file instead of > searching it by name. So as long as the dshow_open_device() get called it > will load the device -- however to get called it is required to have a not > NULL input name .. aka any fake text would do the trick (eg: -i video=" " ) > If you have better suggestion for the description, please tell me. > Here is the fixed patch. _______________________________________________ ffmpeg-devel mailing list ffmpeg-devel@ffmpeg.org http://ffmpeg.org/mailman/listinfo/ffmpeg-devel