qemacs-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[PATCH] text_display_line: Fix overflow while colorizing region


From: Jean-Philippe Menil
Subject: [PATCH] text_display_line: Fix overflow while colorizing region
Date: Sat, 5 Dec 2020 09:51:14 +0100

This happens while searching text.

Core was generated by `./qe /home/jenfi/Downloads/74-83-c2-4d-75-de.json'.
Program terminated with signal SIGSEGV, Segmentation fault.
4417                        sbuf[i] = s->region_style;
(gdb) bt
(gdb) p start_char
$1 = 17907
(gdb) p i
$2 = <optimized out>
(gdb) p end_char
$3 = 17911

Signed-off-by: Jean-Philippe Menil <jpmenil@gmail.com>
---
 qe.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/qe.c b/qe.c
index d28f9b8a36d5..98ba98fa77cf 100644
--- a/qe.c
+++ b/qe.c
@@ -4413,7 +4413,7 @@ int text_display_line(EditState *s, DisplayState *ds, int 
offset)
                 else
                     eb_get_pos(s->b, &line, &end_char, end_offset);
 
-                for (i = start_char; i < end_char; i++) {
+                for (i = start_char; i < end_char && i < colored_nb_chars; 
i++) {
                     sbuf[i] = s->region_style;
                 }
             }
-- 
2.29.2




reply via email to

[Prev in Thread] Current Thread [Next in Thread]