commit 3be5f461f7dadc4995d423494c13a97cbc0d9002
parent c7b0e5469094e21a2db19e6c6839642f82f457f8
Author: Benno Schulenberg <bensberg@justemail.net>
Date: Sat, 17 May 2014 20:25:42 +0000
Not skipping the colour-off commands at the end of the colouring loop.
git-svn-id: svn://svn.savannah.gnu.org/nano/trunk/nano@4902 35c25a1d-7b9e-4130-9fde-d3aeb78583b8
Diffstat:
2 files changed, 7 insertions(+), 4 deletions(-)
diff --git a/ChangeLog b/ChangeLog
@@ -1,6 +1,9 @@
2014-05-17 Benno Schulenberg <bensberg@justemail.net>
* doc/syntax/json.nanorc: New file, originally from Aapo Rantalainen,
but edited, extended, and improved. See Savannah patch #7410.
+ * src/winio.c (edit_draw): Do not skip the colour-off commands at the
+ end of the loop. Based on Savannah patch #7550 by Ryan Lothian.
+ This fixes bug #26111 reported by Dave Geering <dreamlax@Savannah>.
2014-05-16 Benno Schulenberg <bensberg@justemail.net>
* src/text.c, src/winio.c: Remove some more double spaces.
diff --git a/src/winio.c b/src/winio.c
@@ -2603,16 +2603,16 @@ void edit_draw(filestruct *fileptr, const char *converted, int
if (md == -1)
fileptr->multidata[tmpcolor->id] = CNONE; /* until we find out otherwise */
else if (md == CNONE)
- continue;
+ goto end_of_loop;
else if (md == CWHOLELINE) {
mvwaddnstr(edit, line, 0, converted, -1);
- continue;
+ goto end_of_loop;
} else if (md == CBEGINBEFORE) {
regexec(tmpcolor->end, fileptr->data, 1, &endmatch, 0);
paintlen = actual_x(converted, strnlenpt(fileptr->data,
endmatch.rm_eo) - start);
mvwaddnstr(edit, line, 0, converted, paintlen);
- continue;
+ goto end_of_loop;
}
while (start_line != NULL && regexec(tmpcolor->start,
@@ -2762,7 +2762,7 @@ void edit_draw(filestruct *fileptr, const char *converted, int
}
}
}
-
+ end_of_loop:
wattroff(edit, A_BOLD);
wattroff(edit, COLOR_PAIR(tmpcolor->pairnum));
}