summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorTimo Sirainen <cras@irssi.org>2003-06-27 10:53:32 +0000
committercras <cras@dbcabf3a-b0e7-0310-adc4-f8d773084564>2003-06-27 10:53:32 +0000
commit9c7360ad46949b9bc0ff22ded13b6a711ea5c614 (patch)
tree0591b3c36ea4a1dbff022648c64a4b1156e2b108
parentb729120ca4fda66b9cc66fa75b7b10ead38dc198 (diff)
downloadirssi-9c7360ad46949b9bc0ff22ded13b6a711ea5c614.zip
don't unload libraries when deinitializing. leaks some more memory, but fixes some crashes.
git-svn-id: http://svn.irssi.org/repos/irssi/trunk@3117 dbcabf3a-b0e7-0310-adc4-f8d773084564
-rw-r--r--src/perl/perl-core.c7
1 files changed, 6 insertions, 1 deletions
diff --git a/src/perl/perl-core.c b/src/perl/perl-core.c
index 2d300289..7f05314f 100644
--- a/src/perl/perl-core.c
+++ b/src/perl/perl-core.c
@@ -160,7 +160,12 @@ void perl_scripts_deinit(void)
/* Unload all perl libraries loaded with dynaloader */
perl_eval_pv("foreach my $lib (@DynaLoader::dl_modules) { if ($lib =~ /^Irssi\\b/) { $lib .= '::deinit();'; eval $lib; } }", TRUE);
- perl_eval_pv("eval { foreach my $lib (@DynaLoader::dl_librefs) { DynaLoader::dl_unload_file($lib); } }", TRUE);
+
+ /* We could unload all libraries .. but this crashes with some
+ libraries, probably because we don't call some deinit function..
+ Anyway, this would free some memory with /SCRIPT RESET, but it
+ leaks memory anyway. */
+ /*perl_eval_pv("eval { foreach my $lib (@DynaLoader::dl_librefs) { DynaLoader::dl_unload_file($lib); } }", TRUE);*/
/* perl interpreter */
perl_destruct(my_perl);