File tree Expand file tree Collapse file tree 1 file changed +12
-4
lines changed Expand file tree Collapse file tree 1 file changed +12
-4
lines changed Original file line number Diff line number Diff line change @@ -194,14 +194,20 @@ class TraceManager
194194 {
195195 char pluginName[MAXPATHLEN] = {};
196196
197- Firebird::ITraceFactory* factory;
198197 Firebird::ITracePlugin* plugin;
198+ Firebird::ITraceFactory* factory;
199199 ULONG ses_id;
200200
201- inline void release ()
201+ inline void release (Firebird::PluginManagerInterfacePtr& pi )
202202 {
203- factory->release ();
204203 plugin->release ();
204+ pi->releasePlugin (factory);
205+ }
206+
207+ inline void release ()
208+ {
209+ Firebird::PluginManagerInterfacePtr pi;
210+ release (pi);
205211 }
206212
207213 // Used for SortedArray::find
@@ -217,9 +223,11 @@ class TraceManager
217223
218224 ~Sessions ()
219225 {
226+ Firebird::PluginManagerInterfacePtr pi;
227+
220228 for (unsigned int i = 0 ; i < getCount (); ++i)
221229 {
222- getElement (i).release ();
230+ getElement (i).release (pi );
223231 }
224232 }
225233 };
You can’t perform that action at this time.
0 commit comments