diff options
| author | Miles Bader <miles@gnu.org> | 2006-08-16 14:08:49 +0000 |
|---|---|---|
| committer | Miles Bader <miles@gnu.org> | 2006-08-16 14:08:49 +0000 |
| commit | de20e0ccdb039a2ac27e5bbd3e06ab70c4e7bb65 (patch) | |
| tree | 80243ce02b52cbf7945c614bd213dd63142b861a /lib-src | |
| parent | 7a5c2a42040b12b037940a067aee6ac6fde01680 (diff) | |
| parent | 5ebdc2990a95cc38b21f772eea4de3ceee149e54 (diff) | |
Merge from emacs--devo--0
Patches applied:
* emacs--devo--0 (patch 382-398)
- Update from CVS
- Update from erc--emacs--22
- Fix ERC bug introduced in last patch
- Merge from gnus--rel--5.10
* gnus--rel--5.10 (patch 123-125)
- Update from CVS
Revision: emacs@sv.gnu.org/emacs--unicode--0--patch-101
Diffstat (limited to 'lib-src')
| -rw-r--r-- | lib-src/ChangeLog | 15 | ||||
| -rw-r--r-- | lib-src/etags.c | 7 |
2 files changed, 19 insertions, 3 deletions
diff --git a/lib-src/ChangeLog b/lib-src/ChangeLog index f61188fb8d5..3328f010846 100644 --- a/lib-src/ChangeLog +++ b/lib-src/ChangeLog @@ -1,3 +1,18 @@ +2006-08-09 Jan Dj,Ad(Brv <jan.h.d@swipnet.se> + + * etags.c (readline): expect sscanf returns >= 1. + (readline): Change position on %n and \" in sscanf. + +2006-08-07 Masatake YAMATO <jet@gyve.org> + + * etags.c (readline): expect sscanf returns 2, + not 1. + +2006-08-07 Masatake YAMATO <jet@gyve.org> + + * etags.c (TEX_mode): Check getc retruns EOF. + File ended without newline causes infinite loop. + 2002-07-30 Adrian Aichner <adrian@xemacs.org> (tiny change) * etags.c: It's XEmacs, not Xemacs: change all the occurences. diff --git a/lib-src/etags.c b/lib-src/etags.c index d60c12c2bcc..49a18be1df5 100644 --- a/lib-src/etags.c +++ b/lib-src/etags.c @@ -5165,7 +5165,7 @@ TEX_mode (inf) { /* Skip to next line if we hit the TeX comment char. */ if (c == '%') - while (c != '\n') + while (c != '\n' && c != EOF) c = getc (inf); else if (c == TEX_LESC || c == TEX_SESC ) break; @@ -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 + && lbp->buffer[start] == '"') { - char *endp = lbp->buffer + start; + char *endp = lbp->buffer + ++start; assert (start > 0); while ((endp = etags_strchr (endp, '"')) != NULL |
