summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--cppuhelper/source/servicemanager.cxx14
1 files changed, 11 insertions, 3 deletions
diff --git a/cppuhelper/source/servicemanager.cxx b/cppuhelper/source/servicemanager.cxx
index 8f49b4ecb908..b4c2503db1a1 100644
--- a/cppuhelper/source/servicemanager.cxx
+++ b/cppuhelper/source/servicemanager.cxx
@@ -1788,6 +1788,7 @@ void cppuhelper::ServiceManager::preloadImplementations() {
std::vector<OUString> aReported;
std::vector<OUString> aDisabled;
OUStringBuffer aDisabledMsg;
+ OUStringBuffer aMissingMsg;
/// Allow external callers & testers to disable certain components
const char *pDisable = getenv("UNODISABLELIBRARY");
@@ -1810,6 +1811,7 @@ void cppuhelper::ServiceManager::preloadImplementations() {
rEntry.second->status == Data::Implementation::STATUS_LOADED)
continue;
+ OUString simplified;
try
{
const OUString &aLibrary = rEntry.second->info->uri;
@@ -1817,7 +1819,8 @@ void cppuhelper::ServiceManager::preloadImplementations() {
if (aLibrary.isEmpty())
continue;
- OUString simplified = simplifyModule(aLibrary);
+ simplified = simplifyModule(aLibrary);
+
bool bDisabled =
std::find(aDisabled.begin(), aDisabled.end(), simplified) != aDisabled.end();
@@ -1854,8 +1857,8 @@ void cppuhelper::ServiceManager::preloadImplementations() {
if (!aModule.is())
{
- std::cerr << ":failed" << std::endl;
- std::cerr.flush();
+ aMissingMsg.append(simplified);
+ aMissingMsg.append(" ");
}
if (aModule.is() &&
@@ -1948,6 +1951,11 @@ void cppuhelper::ServiceManager::preloadImplementations() {
}
std::cerr << std::endl;
+ if (aMissingMsg.getLength() > 0)
+ {
+ OUString aMsg = aMissingMsg.makeStringAndClear();
+ std::cerr << "Absent (often optional): " << aMsg << "\n";
+ }
if (aDisabledMsg.getLength() > 0)
{
OUString aMsg = aDisabledMsg.makeStringAndClear();