aboutsummaryrefslogtreecommitdiff
path: root/src/plugger.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/plugger.h')
-rw-r--r--src/plugger.h8
1 files changed, 5 insertions, 3 deletions
diff --git a/src/plugger.h b/src/plugger.h
index 615a662..2124b7a 100644
--- a/src/plugger.h
+++ b/src/plugger.h
@@ -116,13 +116,15 @@ namespace Bu
116 116
117 void registerExternalPlugin( const char *sFName, const char *sPluginName ) 117 void registerExternalPlugin( const char *sFName, const char *sPluginName )
118 { 118 {
119 PluginReg *pReg = (PluginReg *)hPlugin[sPluginName]; 119 PluginReg *pReg;
120 if( pReg != NULL ) 120 try {
121 { 121 pReg = (PluginReg *)hPlugin[sPluginName];
122 hPlugin.erase( sPluginName ); 122 hPlugin.erase( sPluginName );
123 dlclose( pReg->dlHandle ); 123 dlclose( pReg->dlHandle );
124 delete pReg; 124 delete pReg;
125 pReg = NULL; 125 pReg = NULL;
126 } catch( Bu::HashException &e )
127 {
126 } 128 }
127 129
128 pReg = new PluginReg; 130 pReg = new PluginReg;