summaryrefslogtreecommitdiff
path: root/libavformat/libmodplug.c
diff options
context:
space:
mode:
authorClément Bœsch <ubitux@gmail.com>2011-10-10 21:15:26 +0200
committerClément Bœsch <ubitux@gmail.com>2011-10-10 21:15:26 +0200
commit92e36ee567fdeb8ec208996108c0cfa75e998fac (patch)
treef371bc317c9a6598d35cba7318b0f22cf6996363 /libavformat/libmodplug.c
parent964465eb1ae680d5c5db6de35e54bb52bf99d040 (diff)
libmodplug: do not call av_expr_parse() in case of no expr specified.
Diffstat (limited to 'libavformat/libmodplug.c')
-rw-r--r--libavformat/libmodplug.c12
1 files changed, 7 insertions, 5 deletions
diff --git a/libavformat/libmodplug.c b/libavformat/libmodplug.c
index 4abba18486..83e9322b13 100644
--- a/libavformat/libmodplug.c
+++ b/libavformat/libmodplug.c
@@ -167,7 +167,7 @@ static int modplug_read_header(AVFormatContext *s, AVFormatParameters *ap)
AVIOContext *pb = s->pb;
ModPlug_Settings settings;
ModPlugContext *modplug = s->priv_data;
- int r, sz = avio_size(pb);
+ int sz = avio_size(pb);
if (sz < 0) {
av_log(s, AV_LOG_WARNING, "Could not determine file size\n");
@@ -179,10 +179,12 @@ static int modplug_read_header(AVFormatContext *s, AVFormatParameters *ap)
sz == FF_MODPLUG_DEF_FILE_SIZE ? " (see -max_size)" : "", sz);
}
- r = av_expr_parse(&modplug->expr, modplug->color_eval, var_names,
- NULL, NULL, NULL, NULL, 0, s);
- if (r < 0)
- return r;
+ if (modplug->color_eval) {
+ int r = av_expr_parse(&modplug->expr, modplug->color_eval, var_names,
+ NULL, NULL, NULL, NULL, 0, s);
+ if (r < 0)
+ return r;
+ }
modplug->buf = av_malloc(modplug->max_size);
if (!modplug->buf)