From: <ale...@us...> - 2014-04-28 12:51:37
|
Revision: 59491 http://sourceforge.net/p/firebird/code/59491 Author: alexpeshkoff Date: 2014-04-28 12:51:34 +0000 (Mon, 28 Apr 2014) Log Message: ----------- Fixed CORE-4395: execute statement on external doesn't find Firebird 2.5 database Modified Paths: -------------- firebird/trunk/src/yvalve/PluginManager.cpp firebird/trunk/src/yvalve/why.cpp Modified: firebird/trunk/src/yvalve/PluginManager.cpp =================================================================== --- firebird/trunk/src/yvalve/PluginManager.cpp 2014-04-28 12:50:31 UTC (rev 59490) +++ firebird/trunk/src/yvalve/PluginManager.cpp 2014-04-28 12:51:34 UTC (rev 59491) @@ -42,6 +42,9 @@ #include "../common/classes/GenericMap.h" #include "../common/db_alias.h" +// register builtin plugins +#include "../remote/client/interface.h" + //#define DEBUG_PLUGINS using namespace Firebird; @@ -887,6 +890,20 @@ return NULL; } + + class BuiltinRegister + { + public: + static void init() + { + PluginManagerInterfacePtr pi; + Remote::registerRedirector(pi); + } + + static void cleanup() + { + } + }; } // anonymous namespace @@ -965,6 +982,9 @@ { try { + static InitMutex<BuiltinRegister> registerBuiltinPlugins("RegisterBuiltinPlugins"); + registerBuiltinPlugins.init(); + MutexLockGuard g(plugins->mutex, FB_FUNCTION); IPluginSet* rc = new PluginSet(interfaceType, namesList, desiredVersion, ui, firebirdConf); Modified: firebird/trunk/src/yvalve/why.cpp =================================================================== --- firebird/trunk/src/yvalve/why.cpp 2014-04-28 12:50:31 UTC (rev 59490) +++ firebird/trunk/src/yvalve/why.cpp 2014-04-28 12:51:34 UTC (rev 59491) @@ -66,7 +66,6 @@ #include "../yvalve/why_proto.h" #include "../yvalve/MasterImplementation.h" #include "../yvalve/PluginManager.h" -#include "../remote/client/interface.h" #include "../jrd/acl.h" #include "../jrd/align.h" #include "../jrd/blr.h" @@ -1159,20 +1158,6 @@ ShutChain* ShutChain::list = NULL; GlobalPtr<Mutex> ShutChain::shutdownCallbackMutex; - class BuiltinRegister - { - public: - static void init() - { - PluginManagerInterfacePtr pi; - Remote::registerRedirector(pi); - } - - static void cleanup() - { - } - }; - class NoEntrypoint { public: @@ -1344,9 +1329,6 @@ aStatus->init(); signalInit(); - static InitMutex<BuiltinRegister> registerBuiltinPlugins("RegisterBuiltinPlugins"); - registerBuiltinPlugins.init(); - if (!shutdownMode) { ++dispCounter; This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |