From 02a3a25aa0263d19bd4fb1124fdd1503eebca74c Mon Sep 17 00:00:00 2001 From: Benno Schulenberg Date: Tue, 10 Nov 2015 10:39:12 +0000 Subject: [PATCH] Skipping a zero-length match only when there /is/ a match. (Finally I understood what valgrind was complaining about.) git-svn-id: svn://svn.savannah.gnu.org/nano/trunk/nano@5398 35c25a1d-7b9e-4130-9fde-d3aeb78583b8 --- ChangeLog | 4 ++++ src/winio.c | 2 +- 2 files changed, 5 insertions(+), 1 deletion(-) diff --git a/ChangeLog b/ChangeLog index 9e46b63d..faa27234 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,7 @@ +2015-11-10 Benno Schulenberg + * src/winio.c (edit_draw): Skip a zero-length match only when there + /is/ a match. Found with valgrind. This fixes Savannah bug #41908. + 2015-11-08 Benno Schulenberg * src/global.c (shortcut_init): Allow exiting from the file browser with the same key (^T) as it was entered (as ^G for the help viewer). diff --git a/src/winio.c b/src/winio.c index 53025405..6b8e5271 100644 --- a/src/winio.c +++ b/src/winio.c @@ -2613,7 +2613,7 @@ void edit_draw(filestruct *fileptr, const char *converted, int goto step_two; /* Skip over a zero-length regex match. */ - if (startmatch.rm_so == startmatch.rm_eo) + if (start_line != NULL && startmatch.rm_so == startmatch.rm_eo) startmatch.rm_eo++; else { /* If no start was found, skip to the next step. */ -- 2.39.5