[FFmpeg-cvslog] af_pan: avoid spaces before % to avoid possible issues with MSVC

Michael Niedermayer git at videolan.org
Fri Apr 12 10:54:30 CEST 2013


ffmpeg | branch: master | Michael Niedermayer <michaelni at gmx.at> | Fri Apr 12 10:45:11 2013 +0200| [80116b6e675528203923e18e0c10c90ffa77c013] | committer: Michael Niedermayer

af_pan: avoid spaces before % to avoid possible issues with MSVC

Found-by: ubitux
Signed-off-by: Michael Niedermayer <michaelni at gmx.at>

> http://git.videolan.org/gitweb.cgi/ffmpeg.git/?a=commit;h=80116b6e675528203923e18e0c10c90ffa77c013
---

 libavfilter/af_pan.c |   19 ++++++++++---------
 1 file changed, 10 insertions(+), 9 deletions(-)

diff --git a/libavfilter/af_pan.c b/libavfilter/af_pan.c
index 338cc6e..4aa5fd9 100644
--- a/libavfilter/af_pan.c
+++ b/libavfilter/af_pan.c
@@ -55,14 +55,23 @@ typedef struct PanContext {
     struct SwrContext *swr;
 } PanContext;
 
+static void skip_spaces(char **arg)
+{
+    int len = 0;
+
+    sscanf(*arg, " %n", &len);
+    *arg += len;
+}
+
 static int parse_channel_name(char **arg, int *rchannel, int *rnamed)
 {
     char buf[8];
     int len, i, channel_id = 0;
     int64_t layout, layout0;
 
+    skip_spaces(arg);
     /* try to parse a channel name, e.g. "FL" */
-    if (sscanf(*arg, " %7[A-Z] %n", buf, &len)) {
+    if (sscanf(*arg, "%7[A-Z]%n", buf, &len)) {
         layout0 = layout = av_get_channel_layout(buf);
         /* channel_id <- first set bit in layout */
         for (i = 32; i > 0; i >>= 1) {
@@ -90,14 +99,6 @@ static int parse_channel_name(char **arg, int *rchannel, int *rnamed)
     return AVERROR(EINVAL);
 }
 
-static void skip_spaces(char **arg)
-{
-    int len = 0;
-
-    sscanf(*arg, " %n", &len);
-    *arg += len;
-}
-
 static av_cold int init(AVFilterContext *ctx, const char *args0)
 {
     PanContext *const pan = ctx->priv;



More information about the ffmpeg-cvslog mailing list