summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/gui/curses/gui-curses-main.c3
-rw-r--r--src/gui/gui-nicklist.c14
-rw-r--r--src/gui/gui-nicklist.h1
3 files changed, 18 insertions, 0 deletions
diff --git a/src/gui/curses/gui-curses-main.c b/src/gui/curses/gui-curses-main.c
index e097855db..8cfcc8ed7 100644
--- a/src/gui/curses/gui-curses-main.c
+++ b/src/gui/curses/gui-curses-main.c
@@ -567,6 +567,9 @@ gui_main_end (int clean_exit)
/* free some variables used for chat area */
gui_chat_end ();
+
+ /* free some variables used for nicklist */
+ gui_nicklist_end ();
}
/* end of Curses output */
diff --git a/src/gui/gui-nicklist.c b/src/gui/gui-nicklist.c
index 7c82699e6..21ff7cabd 100644
--- a/src/gui/gui-nicklist.c
+++ b/src/gui/gui-nicklist.c
@@ -1332,3 +1332,17 @@ gui_nicklist_print_log (struct t_gui_nick_group *group, int indent)
log_printf (format, " ", ptr_nick->next_nick);
}
}
+
+/*
+ * Frees all allocated data.
+ */
+
+void
+gui_nicklist_end ()
+{
+ if (gui_nicklist_hsignal)
+ {
+ hashtable_free (gui_nicklist_hsignal);
+ gui_nicklist_hsignal = NULL;
+ }
+}
diff --git a/src/gui/gui-nicklist.h b/src/gui/gui-nicklist.h
index ea4419c10..6b3315293 100644
--- a/src/gui/gui-nicklist.h
+++ b/src/gui/gui-nicklist.h
@@ -116,5 +116,6 @@ extern int gui_nicklist_add_to_infolist (struct t_infolist *infolist,
struct t_gui_buffer *buffer,
const char *name);
extern void gui_nicklist_print_log (struct t_gui_nick_group *group, int indent);
+extern void gui_nicklist_end ();
#endif /* __WEECHAT_GUI_NICKLIST_H */