Kaydet (Commit) 1b8812e7 authored tarafından Michael Meeks's avatar Michael Meeks Kaydeden (comit) Tor Lillqvist

tdf#93546 -Add HKEY_CURRENT_USER registry integration.

Back-port this to allow merging a user registry fragment.

Conflicts:
	configmgr/source/components.cxx
	instsetoo_native/CustomTarget_setup.mk
	scp2/source/ooo/common_brand.scp

Conflicts:
	scp2/source/ooo/common_brand.scp

Change-Id: Ia32ba9ff3e7878d40032bd7d10fba2c143d11757
Reviewed-on: https://gerrit.libreoffice.org/17884Tested-by: 's avatarJenkins <ci@libreoffice.org>
Reviewed-by: 's avatarTor Lillqvist <tml@collabora.com>
üst bf8a43a9
......@@ -533,7 +533,7 @@ Components::Components(
parseModificationLayer(url);
}
#ifdef WNT
else if ( type == "winreg" )
else if (type == "winreg" || type == "winuserreg")
{
if (!url.isEmpty()) {
SAL_WARN(
......@@ -541,8 +541,10 @@ Components::Components(
"winreg URL is not empty, URL handling is not implemented for winreg");
}
OUString aTempFileURL;
if ( dumpWindowsRegistry(&aTempFileURL) )
{
WinRegType eType = WinRegType::LOCAL_MACHINE;
if (type == "winuserreg")
eType = WinRegType::CURRENT_USER;
if (dumpWindowsRegistry(&aTempFileURL, eType)) {
parseFileLeniently(&parseXcuFile, aTempFileURL, layer, data_, 0, 0, 0);
layer++;
osl::File::remove(aTempFileURL);
......
......@@ -188,10 +188,11 @@ void dumpWindowsRegistryKey(HKEY hKey, OUString aKeyName, oslFileHandle aFileHan
}
}
bool dumpWindowsRegistry(OUString* pFileURL)
bool dumpWindowsRegistry(OUString* pFileURL, WinRegType eType)
{
HKEY hKey;
if(RegOpenKeyExW(HKEY_LOCAL_MACHINE, L"SOFTWARE\\Policies\\LibreOffice", 0, KEY_READ, &hKey) != ERROR_SUCCESS)
HKEY hDomain = eType == LOCAL_MACHINE ? HKEY_LOCAL_MACHINE : HKEY_CURRENT_USER;
if(RegOpenKeyExW(hDomain, L"SOFTWARE\\Policies\\LibreOffice", 0, KEY_READ, &hKey) != ERROR_SUCCESS)
{
SAL_INFO(
"configmgr",
......
......@@ -13,7 +13,9 @@
namespace configmgr {
bool dumpWindowsRegistry(OUString* pFileURL);
enum WinRegType { LOCAL_MACHINE, CURRENT_USER };
bool dumpWindowsRegistry(OUString* pFileURL, WinRegType eType);
}
......
......@@ -1123,7 +1123,7 @@ ProfileItem gid_Brand_Profileitem_Fundamental_Configuration_Layers
Section = "Bootstrap";
Key = "CONFIGURATION_LAYERS";
#if defined WNT
Value = "xcsxcu:${BRAND_BASE_DIR}/" LIBO_SHARE_FOLDER "/registry winreg: res:${BRAND_BASE_DIR}/" LIBO_SHARE_FOLDER "/registry bundledext:${${BRAND_BASE_DIR}/" LIBO_ETC_FOLDER "/" PROFILENAME(louno) ":BUNDLED_EXTENSIONS_USER}/registry/com.sun.star.comp.deployment.configuration.PackageRegistryBackend/configmgr.ini sharedext:${${BRAND_BASE_DIR}/" LIBO_ETC_FOLDER "/" PROFILENAME(louno) ":SHARED_EXTENSIONS_USER}/registry/com.sun.star.comp.deployment.configuration.PackageRegistryBackend/configmgr.ini userext:${${BRAND_BASE_DIR}/" LIBO_ETC_FOLDER "/" PROFILENAME(louno) ":UNO_USER_PACKAGES_CACHE}/registry/com.sun.star.comp.deployment.configuration.PackageRegistryBackend/configmgr.ini user:${$BRAND_BASE_DIR/" LIBO_ETC_FOLDER "/" PROFILENAME(bootstrap) ":UserInstallation}/user/registrymodifications.xcu";
Value = "xcsxcu:${BRAND_BASE_DIR}/" LIBO_SHARE_FOLDER "/registry winreg: winuserreg: res:${BRAND_BASE_DIR}/" LIBO_SHARE_FOLDER "/registry bundledext:${${BRAND_BASE_DIR}/" LIBO_ETC_FOLDER "/" PROFILENAME(louno) ":BUNDLED_EXTENSIONS_USER}/registry/com.sun.star.comp.deployment.configuration.PackageRegistryBackend/configmgr.ini sharedext:${${BRAND_BASE_DIR}/" LIBO_ETC_FOLDER "/" PROFILENAME(louno) ":SHARED_EXTENSIONS_USER}/registry/com.sun.star.comp.deployment.configuration.PackageRegistryBackend/configmgr.ini userext:${${BRAND_BASE_DIR}/" LIBO_ETC_FOLDER "/" PROFILENAME(louno) ":UNO_USER_PACKAGES_CACHE}/registry/com.sun.star.comp.deployment.configuration.PackageRegistryBackend/configmgr.ini user:${$BRAND_BASE_DIR/" LIBO_ETC_FOLDER "/" PROFILENAME(bootstrap) ":UserInstallation}/user/registrymodifications.xcu";
#else
Value = "xcsxcu:${BRAND_BASE_DIR}/" LIBO_SHARE_FOLDER "/registry res:${BRAND_BASE_DIR}/" LIBO_SHARE_FOLDER "/registry bundledext:${${BRAND_BASE_DIR}/" LIBO_ETC_FOLDER "/" PROFILENAME(louno) ":BUNDLED_EXTENSIONS_USER}/registry/com.sun.star.comp.deployment.configuration.PackageRegistryBackend/configmgr.ini sharedext:${${BRAND_BASE_DIR}/" LIBO_ETC_FOLDER "/" PROFILENAME(louno) ":SHARED_EXTENSIONS_USER}/registry/com.sun.star.comp.deployment.configuration.PackageRegistryBackend/configmgr.ini userext:${${BRAND_BASE_DIR}/" LIBO_ETC_FOLDER "/" PROFILENAME(louno) ":UNO_USER_PACKAGES_CACHE}/registry/com.sun.star.comp.deployment.configuration.PackageRegistryBackend/configmgr.ini user:${$BRAND_BASE_DIR/" LIBO_ETC_FOLDER "/" PROFILENAME(bootstrap) ":UserInstallation}/user/registrymodifications.xcu";
#endif
......
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