From: <ke...@us...> - 2008-11-25 07:41:38
|
Revision: 8080 http://bacula.svn.sourceforge.net/bacula/?rev=8080&view=rev Author: kerns Date: 2008-11-25 07:41:22 +0000 (Tue, 25 Nov 2008) Log Message: ----------- Try to eliminate possible plugin termination problems Modified Paths: -------------- trunk/bacula/src/dird/dir_plugins.c trunk/bacula/src/dird/job.c Modified: trunk/bacula/src/dird/dir_plugins.c =================================================================== --- trunk/bacula/src/dird/dir_plugins.c 2008-11-24 08:00:44 UTC (rev 8079) +++ trunk/bacula/src/dird/dir_plugins.c 2008-11-25 07:41:22 UTC (rev 8080) @@ -166,7 +166,10 @@ Dmsg2(dbglvl, "Free instance plugin_ctx_list=%p JobId=%d\n", jcr->plugin_ctx_list, jcr->JobId); foreach_alist(plugin, plugin_list) { /* Free the plugin instance */ - plug_func(plugin)->freePlugin(&plugin_ctx_list[i++]); + plug_func(plugin)->freePlugin(&plugin_ctx_list[i]); + plugin_ctx_list[i].bContext = NULL; + plugin_ctx_list[i].pContext = NULL; + i++; } free(plugin_ctx_list); jcr->plugin_ctx_list = NULL; Modified: trunk/bacula/src/dird/job.c =================================================================== --- trunk/bacula/src/dird/job.c 2008-11-24 08:00:44 UTC (rev 8079) +++ trunk/bacula/src/dird/job.c 2008-11-25 07:41:22 UTC (rev 8080) @@ -1023,8 +1023,6 @@ jcr->rstore_source = NULL; } - free_plugins(jcr); /* release instantiated plugins */ - /* Delete lists setup to hold storage pointers */ free_rwstorage(jcr); @@ -1033,6 +1031,8 @@ if (jcr->JobId != 0) write_state_file(director->working_directory, "bacula-dir", get_first_port_host_order(director->DIRaddrs)); + free_plugins(jcr); /* release instantiated plugins */ + Dmsg0(200, "End dird free_jcr\n"); } This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |