Kaydet (Commit) 4c251ddd authored tarafından Matúš Kukan's avatar Matúš Kukan

Fix creating custom dialog windows for libmerged

Change-Id: Idb1e67d8165298faca7c9a5a2a48097d5a82b497
üst f5c74abc
......@@ -49,6 +49,7 @@ $(eval $(call gb_Library_add_defs,vcl,\
-DCUI_DLL_NAME=\"$(call gb_Library_get_runtime_filename,$(call gb_Library__get_name,cui))\" \
-DDESKTOP_DETECTOR_DLL_NAME=\"$(call gb_Library_get_runtime_filename,$(call gb_Library__get_name,desktop_detector))\" \
-DTK_DLL_NAME=\"$(call gb_Library_get_runtime_filename,$(call gb_Library__get_name,tk))\" \
-DENABLE_MERGELIBS=$(if $(MERGELIBS),1,0) \
))
$(eval $(call gb_Library_use_sdk_api,vcl))
......
......@@ -1664,14 +1664,15 @@ vcl::Window *VclBuilder::makeObject(vcl::Window *pParent, const OString &name, c
}
else
{
#ifndef SAL_DLLPREFIX
#define SAL_DLLPREFIX ""
#endif
sal_Int32 nDelim = name.indexOf('-');
if (nDelim != -1)
{
#ifndef DISABLE_DYNLOADING
OUStringBuffer sModuleBuf;
#ifdef SAL_DLLPREFIX
sModuleBuf.append(SAL_DLLPREFIX);
#endif
sModuleBuf.append(OStringToOUString(name.copy(0, nDelim), RTL_TEXTENCODING_UTF8));
sModuleBuf.append(SAL_DLLEXTENSION);
#endif
......@@ -1682,7 +1683,19 @@ vcl::Window *VclBuilder::makeObject(vcl::Window *pParent, const OString &name, c
if (aI == m_aModuleMap.end())
{
osl::Module* pModule = new osl::Module;
#if ENABLE_MERGELIBS
sModuleBuf.append(SAL_DLLPREFIX);
sModuleBuf.append("mergedlo");
sModuleBuf.append(SAL_DLLEXTENSION);
OUString sMergedModule = sModuleBuf.makeStringAndClear();
pModule->loadRelative(&thisModule, sMergedModule);
if (!pModule->getFunctionSymbol(sFunction))
{
pModule->loadRelative(&thisModule, sModule);
}
#else
pModule->loadRelative(&thisModule, sModule);
#endif
aI = m_aModuleMap.insert(sModule, pModule).first;
}
customMakeWidget pFunction = reinterpret_cast<customMakeWidget>(aI->second->getFunctionSymbol(sFunction));
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment