about summary refs log tree commit diff
path: root/Src/Zle/zle_refresh.c
diff options
context:
space:
mode:
authorPeter Stephenson <p.w.stephenson@ntlworld.com>2014-12-16 21:14:16 +0000
committerPeter Stephenson <p.w.stephenson@ntlworld.com>2014-12-18 18:54:55 +0000
commit04e555a92e49eb41f4321c67511bec94a86b867a (patch)
treebbd87dee69e6878c3e18c5bf1aa987611cc62177 /Src/Zle/zle_refresh.c
parentfe51f39dadfc2a1651ac92edfb783f1e6100b7b1 (diff)
downloadzsh-04e555a92e49eb41f4321c67511bec94a86b867a.tar.gz
zsh-04e555a92e49eb41f4321c67511bec94a86b867a.tar.xz
zsh-04e555a92e49eb41f4321c67511bec94a86b867a.zip
33981: more care with region_highlights management
Diffstat (limited to 'Src/Zle/zle_refresh.c')
-rw-r--r--Src/Zle/zle_refresh.c7
1 files changed, 5 insertions, 2 deletions
diff --git a/Src/Zle/zle_refresh.c b/Src/Zle/zle_refresh.c
index 467629d25..9f8075386 100644
--- a/Src/Zle/zle_refresh.c
+++ b/Src/Zle/zle_refresh.c
@@ -396,8 +396,9 @@ get_region_highlight(UNUSED(Param pm))
     struct region_highlight *rhp;
 
     /* region_highlights may not have been set yet */
-    if (arrsize)
-	arrsize -= N_SPECIAL_HIGHLIGHTS;
+    if (!arrsize)
+	return hmkarray(NULL);
+    arrsize -= N_SPECIAL_HIGHLIGHTS;
     arrp = retarr = (char **)zhalloc((arrsize+1)*sizeof(char *));
 
     /* ignore special highlighting */
@@ -1028,6 +1029,8 @@ zrefresh(void)
     /* this will create region_highlights if it's still NULL */
     zle_set_highlight();
 
+    DPUTS(!region_highlights, "region_highlights not created");
+
     /* check for region between point ($CURSOR) and mark ($MARK) */
     if (region_active) {
 	if (zlecs <= mark) {