From f1439716b85c476a3357e3bfb0e4a2effdf3c27b Mon Sep 17 00:00:00 2001 From: kramm Date: Wed, 12 Oct 2005 18:32:08 +0000 Subject: [PATCH] fixed sscanf bug --- src/swfcombine.c | 23 +++++++++++++---------- 1 file changed, 13 insertions(+), 10 deletions(-) diff --git a/src/swfcombine.c b/src/swfcombine.c index 8981b1d..f564793 100644 --- a/src/swfcombine.c +++ b/src/swfcombine.c @@ -1045,16 +1045,19 @@ void combine(SWF*master, char*slave_name, SWF*slave, SWF*newswf) if(config.isframe) { - int tmp; - if(slavename && slavename[0]!='#' && (sscanf(slavename, "%d", &tmp) == - strlen(slavename))) { - /* if the name the slave should replace - consists only of digits and the -f - option is given, it probably is not - a frame name but a frame number. - */ - slaveid = tmp; - slavename = 0; + if(slavename && slavename[0]!='#') { + int tmp; + int len; + sscanf(slavename, "%d%n", &tmp, &len); + if(len == strlen(slavename)) { + /* if the name the slave should replace + consists only of digits and the -f + option is given, it probably is not + a frame name but a frame number. + */ + slaveid = tmp; + slavename = 0; + } } if(slaveid>=0) { -- 1.7.10.4