From: Michael Niedermayer Date: Fri, 23 May 2008 00:29:21 +0000 (+0000) Subject: Fix + - bug with non flags. X-Git-Tag: v0.5~4688 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=4a13a2d4f797ac42498ab6374e2930b5c12a0c0c;p=platform%2Fupstream%2Flibav.git Fix + - bug with non flags. Originally committed as revision 13243 to svn://svn.ffmpeg.org/ffmpeg/trunk --- diff --git a/libavcodec/opt.c b/libavcodec/opt.c index 94ac622..70f2f3d 100644 --- a/libavcodec/opt.c +++ b/libavcodec/opt.c @@ -179,8 +179,10 @@ const AVOption *av_set_string(void *obj, const char *name, const char *val){ if(o->type == FF_OPT_TYPE_FLAGS){ if (cmd=='+') d= av_get_int(obj, name, NULL) | (int64_t)d; else if(cmd=='-') d= av_get_int(obj, name, NULL) &~(int64_t)d; - }else if(cmd=='-') - d= -d; + }else{ + if (cmd=='+') d= av_get_double(obj, name, NULL) + d; + else if(cmd=='-') d= av_get_double(obj, name, NULL) - d; + } if (!av_set_number(obj, name, d, 1, 1)) return NULL;