comparison plugins/perl/perl.c @ 9578:7cd7da72c872

[gaim-migrate @ 10421] Fix a pretty good-sized problem that deryni pointed out in the Perl plugin. Basically, if a script didn't have an unload function set, the data, signals, timeouts, commands, etc. was remaining after the plugin was unloaded. This should be fixed now, barring any bizarre bugs that result from the simple change. committer: Tailor Script <tailor@pidgin.im>
author Christian Hammond <chipx86@chipx86.com>
date Fri, 23 Jul 2004 00:12:55 +0000
parents 294ae6548d4e
children f8e395a054e2
comparison
equal deleted inserted replaced
9577:4c36ffbdbf8d 9578:7cd7da72c872
416 static gboolean 416 static gboolean
417 unload_perl_plugin(GaimPlugin *plugin) 417 unload_perl_plugin(GaimPlugin *plugin)
418 { 418 {
419 GaimPerlScript *gps = (GaimPerlScript *)plugin->info->extra_info; 419 GaimPerlScript *gps = (GaimPerlScript *)plugin->info->extra_info;
420 420
421 if (gps == NULL || gps->unload_sub == NULL) 421 if (gps == NULL)
422 return FALSE; 422 return FALSE;
423 423
424 gaim_debug(GAIM_DEBUG_INFO, "perl", "Unloading perl script\n"); 424 gaim_debug(GAIM_DEBUG_INFO, "perl", "Unloading perl script\n");
425 425
426 if (gps->unload_sub != NULL)
426 { 427 {
427 dSP; 428 dSP;
428 ENTER; 429 ENTER;
429 SAVETMPS; 430 SAVETMPS;
430 PUSHMARK(sp); 431 PUSHMARK(sp);