From b0b6b32a8fb9229a1bb26ccb8f5cd382dcc11166 Mon Sep 17 00:00:00 2001 From: Ralf Ertzinger Date: Tue, 30 Apr 2013 16:04:53 +0200 Subject: [PATCH] videosite-weechat: make hooking of signals dependant on successful init --- videosite-weechat.pl | 18 ++++++++++-------- 1 file changed, 10 insertions(+), 8 deletions(-) diff --git a/videosite-weechat.pl b/videosite-weechat.pl index fdcc5d5..62c8870 100644 --- a/videosite-weechat.pl +++ b/videosite-weechat.pl @@ -120,19 +120,15 @@ sub videosite_reset { _debug => sub { 1 }, })) { weechat::print("", sprintf("videosite API register failed: %s", $libvideosite::error)); - return; + return 0; } unless(libvideosite::init()) { weechat::print("", sprintf("videosite init failed: %s", $libvideosite::error)); - return; + return 0; } - weechat::hook_print("", "notify_message", "://", 1, "message_hook", ""); - weechat::hook_print("", "notify_private", "://", 1, "message_hook", ""); - weechat::hook_print("", "notify_highlight", "://", 1, "message_hook", ""); - weechat::hook_print("", "notify_none", "://", 1, "message_hook", ""); - weechat::hook_command( "videosite", "videosite control functions", "", "", "", "videosite_hook", ""); + return 1; } sub videosite_init { @@ -142,7 +138,13 @@ sub videosite_init { push(@INC, File::Spec->catfile(weechat::info_get("weechat_dir", ""), 'perl')); load 'libvideosite'; - videosite_reset(); + if (videosite_reset()) { + weechat::hook_print("", "notify_message", "://", 1, "message_hook", ""); + weechat::hook_print("", "notify_private", "://", 1, "message_hook", ""); + weechat::hook_print("", "notify_highlight", "://", 1, "message_hook", ""); + weechat::hook_print("", "notify_none", "://", 1, "message_hook", ""); + weechat::hook_command( "videosite", "videosite control functions", "", "", "", "videosite_hook", ""); + } } videosite_init(); -- 1.8.3.1