X-Git-Url: http://git.asbjorn.biz/?a=blobdiff_plain;ds=sidebyside;f=avi2swf%2Fvideoreader_vfw.cc;h=2da5acdb239e3b64b8828c75e3ef1e460da7d19d;hb=359c111aa91dbbe9245a1bba2413692c63afdf73;hp=2c2f80960bfeac66e59008d478d903dac81dbd98;hpb=4d6b4f31607ea8a468970062df2ab5fcc32bb6ff;p=swftools.git diff --git a/avi2swf/videoreader_vfw.cc b/avi2swf/videoreader_vfw.cc index 2c2f809..2da5acd 100644 --- a/avi2swf/videoreader_vfw.cc +++ b/avi2swf/videoreader_vfw.cc @@ -223,13 +223,16 @@ void videoreader_vfw_close(videoreader_t* vr) AVIStreamRelease(i->as); i->vs = 0; } AVIFileRelease(i->avifile); i->avifile = 0; - AVIFileExit(); + + AVIFileExit(); avifile_initialized=0; free(vr->internal); vr->internal = 0; } void videoreader_vfw_setparameter(videoreader_t* vr, char*name, char*value) {} +static int avifile_initialized = 0; + int videoreader_vfw_open(videoreader_t* vr, char* filename) { memset(vr, 0, sizeof(videoreader_t)); @@ -248,7 +251,9 @@ int videoreader_vfw_open(videoreader_t* vr, char* filename) vr->close = videoreader_vfw_close; vr->setparameter = videoreader_vfw_setparameter; - AVIFileInit(); + if(!avifile_initialized) { + AVIFileInit(); + } if(AVIFileOpen(&i->avifile, filename, OF_SHARE_DENY_WRITE, 0)) { fprintf(stderr, "Couldn't open %s\n", filename); return -1;