[Libreoffice-commits] core.git: cppuhelper/source
Stephan Bergmann
sbergman at redhat.com
Fri Nov 13 07:04:45 PST 2015
cppuhelper/source/shlib.cxx | 22 ++++++++++++----------
1 file changed, 12 insertions(+), 10 deletions(-)
New commits:
commit 97464be9808c0d349be8b84fea6973527496bf26
Author: Stephan Bergmann <sbergman at redhat.com>
Date: Fri Nov 13 15:59:33 2015 +0100
Bogus assert
implementation can indeed be empty when cppu::writeSharedLibComponentInfo calls
getEnvironmentFromModule(mod, curEnv, "", ""), which in the final if-branch
calls getEnvironment with implementation = "". Happens when adding desktop/qa's
test-active.oxt. Regression introduced with
ae3a0c8da50b36db395984637f5ad74d3b4887bc "Add .component <implementation
constructor='...' feature."
Change-Id: Ia70958e4aa18d378ff35063bdf6187f6e073b765
diff --git a/cppuhelper/source/shlib.cxx b/cppuhelper/source/shlib.cxx
index e4f5c05..7e334e7 100644
--- a/cppuhelper/source/shlib.cxx
+++ b/cppuhelper/source/shlib.cxx
@@ -40,17 +40,19 @@
css::uno::Environment cppuhelper::detail::getEnvironment(
rtl::OUString const & name, rtl::OUString const & implementation)
{
- assert(!implementation.isEmpty());
rtl::OUString n(name);
- static char const * log = std::getenv("UNO_ENV_LOG");
- if (log != nullptr && *log != 0) {
- rtl::OString imps(log);
- for (sal_Int32 i = 0; i != -1;) {
- rtl::OString imp(imps.getToken(0, ';', i));
- //TODO: this assumes UNO_ENV_LOG only contains ASCII characters:
- if (implementation.equalsAsciiL(imp.getStr(), imp.getLength())) {
- n += ":log";
- break;
+ if (!implementation.isEmpty()) {
+ static char const * log = std::getenv("UNO_ENV_LOG");
+ if (log != nullptr && *log != 0) {
+ rtl::OString imps(log);
+ for (sal_Int32 i = 0; i != -1;) {
+ rtl::OString imp(imps.getToken(0, ';', i));
+ //TODO: this assumes UNO_ENV_LOG only contains ASCII characters:
+ if (implementation.equalsAsciiL(imp.getStr(), imp.getLength()))
+ {
+ n += ":log";
+ break;
+ }
}
}
}
More information about the Libreoffice-commits
mailing list