summaryrefslogtreecommitdiff
path: root/src/fe-common
diff options
context:
space:
mode:
authorTimo Sirainen <cras@irssi.org>2002-04-15 14:06:57 +0000
committercras <cras@dbcabf3a-b0e7-0310-adc4-f8d773084564>2002-04-15 14:06:57 +0000
commit53d595ba7fd05f392853c1c6cb3c58b03949a247 (patch)
treed4c88db495b668ca9470e3ac73e9bfa2ef1e1be6 /src/fe-common
parent8b9c4823bfb9a1b60f31aa62eb882143e3dec153 (diff)
downloadirssi-53d595ba7fd05f392853c1c6cb3c58b03949a247.zip
fixed several signal leaks
git-svn-id: http://svn.irssi.org/repos/irssi/trunk@2683 dbcabf3a-b0e7-0310-adc4-f8d773084564
Diffstat (limited to 'src/fe-common')
-rw-r--r--src/fe-common/core/fe-common-core.c2
-rw-r--r--src/fe-common/core/keyboard.c5
-rw-r--r--src/fe-common/irc/fe-netjoin.c4
3 files changed, 10 insertions, 1 deletions
diff --git a/src/fe-common/core/fe-common-core.c b/src/fe-common/core/fe-common-core.c
index 3c1d5870..f356aa28 100644
--- a/src/fe-common/core/fe-common-core.c
+++ b/src/fe-common/core/fe-common-core.c
@@ -240,7 +240,7 @@ void fe_common_core_deinit(void)
fe_queries_deinit();
fe_messages_deinit();
- fe_ignore_messages_init();
+ fe_ignore_messages_deinit();
theme_unregister();
themes_deinit();
diff --git a/src/fe-common/core/keyboard.c b/src/fe-common/core/keyboard.c
index 8b764fce..10b42307 100644
--- a/src/fe-common/core/keyboard.c
+++ b/src/fe-common/core/keyboard.c
@@ -842,6 +842,11 @@ void keyboard_init(void)
void keyboard_deinit(void)
{
+ key_unbind("command", (SIGNAL_FUNC) sig_command);
+ key_unbind("key", (SIGNAL_FUNC) sig_key);
+ key_unbind("multi", (SIGNAL_FUNC) sig_multi);
+ key_unbind("nothing", (SIGNAL_FUNC) sig_nothing);
+
while (keyinfos != NULL)
keyinfo_remove(keyinfos->data);
g_hash_table_destroy(keys);
diff --git a/src/fe-common/irc/fe-netjoin.c b/src/fe-common/irc/fe-netjoin.c
index 7d720362..400b198c 100644
--- a/src/fe-common/irc/fe-netjoin.c
+++ b/src/fe-common/irc/fe-netjoin.c
@@ -429,4 +429,8 @@ void fe_netjoin_deinit(void)
}
signal_remove("setup changed", (SIGNAL_FUNC) read_settings);
+
+ signal_remove("message quit", (SIGNAL_FUNC) msg_quit);
+ signal_remove("message join", (SIGNAL_FUNC) msg_join);
+ signal_remove("message mode", (SIGNAL_FUNC) msg_mode);
}