From: Jan Djärv Date: Wed, 9 Aug 2006 06:56:16 +0000 (+0000) Subject: (readline): Change position on %n and \" in sscanf. X-Git-Tag: emacs-pretest-22.0.90~1061 X-Git-Url: http://git.eshelyaron.com/gitweb/?a=commitdiff_plain;h=ea90c5d3bdb03846cbe7845b65d5be1343eddbe3;p=emacs.git (readline): Change position on %n and \" in sscanf. --- diff --git a/lib-src/ChangeLog b/lib-src/ChangeLog index 3e7d9efad31..3328f010846 100644 --- a/lib-src/ChangeLog +++ b/lib-src/ChangeLog @@ -1,6 +1,7 @@ 2006-08-09 Jan Dj,Ad(Brv * etags.c (readline): expect sscanf returns >= 1. + (readline): Change position on %n and \" in sscanf. 2006-08-07 Masatake YAMATO diff --git a/lib-src/etags.c b/lib-src/etags.c index c7d18d34849..b02268ac218 100644 --- a/lib-src/etags.c +++ b/lib-src/etags.c @@ -6259,9 +6259,10 @@ readline (lbp, stream) int start, lno; if (DEBUG) start = 0; /* shut up the compiler */ - if (sscanf (lbp->buffer, "#line %d \"%n", &lno, &start) >= 1) + if (sscanf (lbp->buffer, "#line %d %n\"", &lno, &start) >= 1 + && inp[start] == '"') { - char *endp = lbp->buffer + start; + char *endp = lbp->buffer + ++start; assert (start > 0); while ((endp = etags_strchr (endp, '"')) != NULL