af_pan: Fix sscanf formats to work with buggy sscanf implementations
authorHendrik Leppkes <h.leppkes@gmail.com>
Fri, 14 Sep 2012 16:45:34 +0000 (12:45 -0400)
committerDerek Buitenhuis <derek.buitenhuis@gmail.com>
Sat, 15 Sep 2012 23:49:34 +0000 (19:49 -0400)
commite3a1eb9edf65edda301f3a727f11e0224b9f5ae2
tree8e44a00c97ec69e428d20160e877e6fa75f53b52
parentd512e74dec756787417b72776eece32466552724
af_pan: Fix sscanf formats to work with buggy sscanf implementations

Some implementations of sscanf do not handle a space before a trailing %n
properly.

As an example, MSVC's does this for the second insatnce in this patch, for
an input of "0x3:c0=c1:c1=c0":
    1) Match the final "c0" or "c1".
    2) Realize it's at the end of the string.
    3) Check for %n.
    4) There is no %n, but a space instead.
    5) Leave 'len' unitilialized.

So, move it out of the sscanf format strings, and call skip_spaces instead.

This bug does not affect skip_spaces since %n is the first and only formatting
string.

Signed-off-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>
libavfilter/af_pan.c