avfilter/af_channelmap: Move potential dereference after NULL check in get_channel_idx()
authorMichael Niedermayer <michaelni@gmx.at>
Wed, 18 Feb 2015 12:40:39 +0000 (13:40 +0100)
committerMichael Niedermayer <michaelni@gmx.at>
Wed, 18 Feb 2015 12:40:39 +0000 (13:40 +0100)
Fixes CID1270822

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
libavfilter/af_channelmap.c

index 2a43c12..cc66f04 100644 (file)
@@ -88,13 +88,14 @@ static char* split(char *message, char delim) {
 
 static int get_channel_idx(char **map, int *ch, char delim, int max_ch)
 {
-    char *next = split(*map, delim);
+    char *next;
     int len;
     int n = 0;
-    if (!next && delim == '-')
-        return AVERROR(EINVAL);
     if (!*map)
         return AVERROR(EINVAL);
+    next = split(*map, delim);
+    if (!next && delim == '-')
+        return AVERROR(EINVAL);
     len = strlen(*map);
     sscanf(*map, "%d%n", ch, &n);
     if (n != len)