diff options
-rw-r--r-- | bridges/source/jni_uno/jni_bridge.cxx | 9 | ||||
-rw-r--r-- | cppu/inc/uno/environment.h | 7 | ||||
-rw-r--r-- | cppu/source/uno/lbenv.cxx | 4 |
3 files changed, 19 insertions, 1 deletions
diff --git a/bridges/source/jni_uno/jni_bridge.cxx b/bridges/source/jni_uno/jni_bridge.cxx index 87d210d300c7..f8fdbce87875 100644 --- a/bridges/source/jni_uno/jni_bridge.cxx +++ b/bridges/source/jni_uno/jni_bridge.cxx @@ -456,6 +456,10 @@ void SAL_CALL java_env_disposing( uno_Environment * java_env ) } } +#ifdef DISABLE_DYNLOADING +#define uno_initEnvironment java_uno_initEnvironment +#endif + //------------------------------------------------------------------------------ void SAL_CALL uno_initEnvironment( uno_Environment * java_env ) SAL_THROW_EXTERN_C() @@ -554,12 +558,17 @@ void SAL_CALL uno_ext_getMapping( } } +#ifndef DISABLE_DYNLOADING + //------------------------------------------------------------------------------ SAL_DLLPUBLIC_EXPORT sal_Bool SAL_CALL component_canUnload( TimeValue * pTime ) SAL_THROW_EXTERN_C() { return (*g_moduleCount.canUnload)( &g_moduleCount, pTime ); } + +#endif + } /* vim:set shiftwidth=4 softtabstop=4 expandtab: */ diff --git a/cppu/inc/uno/environment.h b/cppu/inc/uno/environment.h index bbba4c980c0b..e76ed2fc7ba6 100644 --- a/cppu/inc/uno/environment.h +++ b/cppu/inc/uno/environment.h @@ -258,9 +258,14 @@ typedef void (SAL_CALL * uno_initEnvironmentFunc)( uno_Environment * pEnv ); #define UNO_INIT_ENVIRONMENT "uno_initEnvironment" #ifdef DISABLE_DYNLOADING -/* We link statically and have just one kind of environment */ +/* We link statically and have just the C++ environment */ void SAL_CALL CPPU_ENV_uno_initEnvironment( uno_Environment * Env ) SAL_THROW_EXTERN_C(); +#ifdef SOLAR_JAVA +/* We also have the Java environment */ +void SAL_CALL java_uno_initEnvironment( uno_Environment * Env ) + SAL_THROW_EXTERN_C(); +#endif #endif /** Gets a specific environment. If the specified environment does not exist, then a default one diff --git a/cppu/source/uno/lbenv.cxx b/cppu/source/uno/lbenv.cxx index ff6de9a9a815..439d49bf8748 100644 --- a/cppu/source/uno/lbenv.cxx +++ b/cppu/source/uno/lbenv.cxx @@ -1058,6 +1058,10 @@ static bool loadEnv(OUString const & cLibStem, if ( cLibStem == CPPU_CURRENT_LANGUAGE_BINDING_NAME "_uno" ) fpInit = CPPU_ENV_uno_initEnvironment; +#ifdef SOLAR_JAVA + else if ( cLibStem == "java_uno" ) + fpInit = java_uno_initEnvironment; +#endif else { #if OSL_DEBUG_LEVEL > 1 |