diff options
-rw-r--r-- | ChangeLog | 4 | ||||
-rw-r--r-- | src/plugins/scripts/perl/weechat-perl.c | 8 |
2 files changed, 9 insertions, 3 deletions
@@ -1,7 +1,7 @@ WeeChat ChangeLog ================= FlashCode <flashcode@flashtux.org> -v0.3.2-dev, 2010-04-05 +v0.3.2-dev, 2010-04-12 Version 0.3.2 (under dev!) @@ -57,6 +57,8 @@ Version 0.3.2 (under dev!) * scripts: fix bug with callbacks when loading a script already loaded * perl: fix crash when callbacks are called during script initialization (bug #29018) +* perl: fix crash on /quit or unload of plugin under FreeBSD and Cygwin + (bug #29467) * irc: add SASL authentication, with PLAIN and DH-BLOWFISH mechanisms (task #8829) * irc: fix crash with SSL connection if option ssl_cert is set (bug #28752) diff --git a/src/plugins/scripts/perl/weechat-perl.c b/src/plugins/scripts/perl/weechat-perl.c index 01210bd26..5fef4e7c6 100644 --- a/src/plugins/scripts/perl/weechat-perl.c +++ b/src/plugins/scripts/perl/weechat-perl.c @@ -892,8 +892,12 @@ weechat_plugin_end (struct t_weechat_plugin *plugin) perl_main = NULL; } #endif - -#ifdef PERL_SYS_TERM + +#if defined(PERL_SYS_TERM) && !defined(__FreeBSD__) && !defined(WIN32) && !defined(__CYGWIN__) + /* + * we call this function on all OS, but NOT on FreeBSD or Cygwin, + * because it crashes with no reason (bug in Perl?) + */ if (perl_quit_or_upgrade) PERL_SYS_TERM (); #endif |