summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--ChangeLog3
-rw-r--r--Src/Modules/curses.c5
2 files changed, 6 insertions, 2 deletions
diff --git a/ChangeLog b/ChangeLog
index ede9650e2..e34cc6136 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,5 +1,8 @@
2007-10-19 Clint Adams <clint@zsh.org>
+ * 23997: Src/Modules/curses.c: don't delete color pair hash
+ on module unload unless it's been previously initialized.
+
* 23994: Completion/Unix/Command/_git: tweaks for 23993.
* Mikael Magnusson: 23993: Completion/Unix/Command/_git: improved
diff --git a/Src/Modules/curses.c b/Src/Modules/curses.c
index ecd235d9c..6b2d0a4d4 100644
--- a/Src/Modules/curses.c
+++ b/Src/Modules/curses.c
@@ -58,7 +58,7 @@ static WINDOW *win_zero;
static struct ttyinfo saved_tty_state;
static struct ttyinfo curses_tty_state;
static LinkList zcurses_windows;
-static HashTable zcurses_colorpairs;
+static HashTable zcurses_colorpairs = NULL;
#define ZCURSES_ERANGE 1
#define ZCURSES_EDEFINED 2
@@ -599,7 +599,8 @@ int
cleanup_(Module m)
{
freelinklist(zcurses_windows, (FreeFunc) zcurses_free_window);
- deletehashtable(zcurses_colorpairs);
+ if (zcurses_colorpairs)
+ deletehashtable(zcurses_colorpairs);
return setfeatureenables(m, &module_features, NULL);
}