summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMatúš Kukan <matus.kukan@gmail.com>2011-07-11 17:41:58 +0100
committerMichael Meeks <michael.meeks@novell.com>2011-07-11 17:47:02 +0100
commit6d8f44b0bb27d97d679d2a6f699a25048a905951 (patch)
treedbeac427a27ba219d75b9b9804527eb8b5b29b24
parent27a81bb077daa5491761762ac18d3970ce1a7bb2 (diff)
Default to current language binding name, if not specified.
Signed-off-by: Michael Meeks <michael.meeks@novell.com>
-rw-r--r--cppuhelper/source/shlib.cxx28
1 files changed, 9 insertions, 19 deletions
diff --git a/cppuhelper/source/shlib.cxx b/cppuhelper/source/shlib.cxx
index 1fb136acf..a97945431 100644
--- a/cppuhelper/source/shlib.cxx
+++ b/cppuhelper/source/shlib.cxx
@@ -270,16 +270,13 @@ static OUString makeComponentPath(
}
//==============================================================================
-static OUString getLibEnv(OUString const & aModulePath,
- oslModule lib,
- uno::Environment * pEnv,
+static OUString getLibEnv(oslModule lib,
+ uno::Environment * pEnv,
OUString * pSourceEnv_name,
uno::Environment const & cTargetEnv,
OUString const & cImplName = OUString(),
OUString const & rPrefix = OUString())
{
- OUString aExcMsg;
-
sal_Char const * pEnvTypeName = NULL;
OUString aGetEnvNameExt = rPrefix + OUSTR(COMPONENT_GETENVEXT);
@@ -300,15 +297,10 @@ static OUString getLibEnv(OUString const & aModulePath,
if (pGetImplEnv)
pGetImplEnv(&pEnvTypeName, (uno_Environment **)pEnv);
- else
- {
- aExcMsg = aModulePath;
- aExcMsg += OUSTR(": cannot get symbol: ");
- aExcMsg += aGetEnvName;
- aExcMsg += OUSTR("- nor: ");
- }
+ else // this symbol used to be mandatory, but is no longer
+ pEnvTypeName = CPPU_CURRENT_LANGUAGE_BINDING_NAME;
}
-
+
if (!pEnv->is() && pEnvTypeName)
{
*pSourceEnv_name = OUString::createFromAscii(pEnvTypeName);
@@ -326,12 +318,10 @@ static OUString getLibEnv(OUString const & aModulePath,
*pSourceEnv_name += ::rtl::OUString(RTL_CONSTASCII_USTRINGPARAM(":log"));
break;
}
- } while( nIndex != -1 );
+ } while( nIndex != -1 );
}
-
}
-
- return aExcMsg;
+ return OUString();
}
extern "C" {static void s_getFactory(va_list * pParam)
@@ -389,7 +379,7 @@ Reference< XInterface > SAL_CALL loadSharedLibComponentFactory(
OUString aEnvTypeName;
- OUString aExcMsg = getLibEnv(aModulePath, lib, &env, &aEnvTypeName, currentEnv, rImplName, rPrefix);
+ OUString aExcMsg = getLibEnv(lib, &env, &aEnvTypeName, currentEnv, rImplName, rPrefix);
if (!aExcMsg.getLength())
{
OUString aGetFactoryName = rPrefix + OUSTR(COMPONENT_GETFACTORY);
@@ -535,7 +525,7 @@ void SAL_CALL writeSharedLibComponentInfo(
uno::Environment env;
OUString aEnvTypeName;
- OUString aExcMsg = getLibEnv(aModulePath, lib, &env, &aEnvTypeName, currentEnv);
+ OUString aExcMsg = getLibEnv(lib, &env, &aEnvTypeName, currentEnv);
if (!aExcMsg.getLength())
{
OUString aWriteInfoName = OUSTR(COMPONENT_WRITEINFO);