From f9b84f9f4baeb658b57a0a92c3dee9df5b4ab028 Mon Sep 17 00:00:00 2001 From: Chong Yidong Date: Sat, 20 Feb 2010 09:11:20 -0500 Subject: [PATCH] * etags.c (Scheme_functions): Don't loop past a null character (Bug#5601). --- lib-src/ChangeLog | 5 +++++ lib-src/etags.c | 5 +++-- 2 files changed, 8 insertions(+), 2 deletions(-) diff --git a/lib-src/ChangeLog b/lib-src/ChangeLog index 5a1b3ff7d5..fd7097c095 100644 --- a/lib-src/ChangeLog +++ b/lib-src/ChangeLog @@ -1,3 +1,8 @@ +2010-02-20 Kevin Ryde + + * etags.c (Scheme_functions): Don't loop past a null character + (Bug#5601). + 2010-01-29 Kester Habermann (tiny change) * etags.c (Fortran_functions): Handle recursive keyword diff --git a/lib-src/etags.c b/lib-src/etags.c index 2715df8b5c..17aad9a225 100644 --- a/lib-src/etags.c +++ b/lib-src/etags.c @@ -5004,8 +5004,9 @@ Scheme_functions (inf) if (strneq (bp, "(def", 4) || strneq (bp, "(DEF", 4)) { bp = skip_non_spaces (bp+4); - /* Skip over open parens and white space */ - while (notinname (*bp)) + /* Skip over open parens and white space. Don't continue past + '\0'. */ + while (*bp && notinname (*bp)) bp++; get_tag (bp, NULL); } -- 2.20.1