https://bugs.freedesktop.org/show_bug.cgi?id=50964
Bug #: 50964
Summary: PresenterConsole - missing all images...
Classification: Unclassified
Product: LibreOffice
Version: LibO Master
Platform: Other
OS/Version: All
Status: UNCONFIRMED
Severity: blocker
Priority: medium
Component: Presentation
AssignedTo: [email protected]
ReportedBy: [email protected]
This is down to the PresenterConsole not getting the correct path to load it's
bitmaps from. It achieves this feat via:
void ReadContext::SetBitmapSourceExtension (const OUString&
rsExtensionIdentifier)
{
// Get base path to bitmaps.
msBasePath = PresenterComponent::GetBasePath(mxComponentContext,
rsExtensionIdentifier);
}
Which erroneously returns '/' - the rsExtensionIdentifier is -very- odd (cf.
the sdext stuff like this:
Library_presenter.mk:
-DPRESENTER_IMPL_IDENTIFIER=\"com.sun.PresenterScreen-$(PLATFORMID)\" \
StaticLibrary_pdfimport_s.mk:
-DPDFI_IMPL_IDENTIFIER=\"com.sun.star.PDFImport-$(sdext_PLATFORM)\" \
Where the idea of mangling the PLATFORMID into some impl identifier came from I
have no clue - it seems crazy on the surface.
The code then calls:
::rtl::OUString PresenterComponent::GetBasePath (
const Reference<XComponentContext>& rxComponentContext,
const OUString& rsExtensionIdentifier)
{
static ::rtl::OUString sBasePath;
if (sBasePath.isEmpty())
{
// Determine the base path of the bitmaps.
Reference<deployment::XPackageInformationProvider> xInformationProvider
(
rxComponentContext->getValueByName(
OUString(RTL_CONSTASCII_USTRINGPARAM(
"/singletons/com.sun.star.deployment.PackageInformationProvider"))),
UNO_QUERY);
if (xInformationProvider.is())
{
try
{
sBasePath =
xInformationProvider->getPackageLocation(rsExtensionIdentifier)
+ OUString(RTL_CONSTASCII_USTRINGPARAM("/"));
}
catch (const deployment::DeploymentException&)
{
}
}
}
And walking through:
dp_informationprovider.cxx's
rtl::OUString PackageInformationProvider::getPackageLocation(
shows it operating on an empty sequence. ie.
const uno::Sequence< uno::Reference< deployment::XPackage > > packages(
xManager->getDeployedExtensions(
repository,
uno::Reference< task::XAbortChannel >(),
uno::Reference< css_ucb::XCommandEnvironment > () ) );
returns an empty sequence. That seems to be the cause of the problem.
--
Configure bugmail: https://bugs.freedesktop.org/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the assignee for the bug.
_______________________________________________
Libreoffice-bugs mailing list
[email protected]
http://lists.freedesktop.org/mailman/listinfo/libreoffice-bugs