[PATCH libreoffice-4-0] fdo#54087 refactor/fix browser plugin detection on Windows
Andras Timar (via Code Review)
gerrit at gerrit.libreoffice.org
Sat May 4 10:02:35 PDT 2013
Hi,
I have submitted a patch for review:
https://gerrit.libreoffice.org/3784
To pull it, you can do:
git pull ssh://gerrit.libreoffice.org:29418/core refs/changes/84/3784/1
fdo#54087 refactor/fix browser plugin detection on Windows
Former code did not find the Firefox plugin, if it was
registered under HKEY_CURRENT_USER. Therefore the checkbox state was not
preserved in Tools - Options - Internet - Browser Plug-in.
Change-Id: I9ae2a7dae1501500d7ea7cb42517605219450af3
---
M cui/source/dialogs/winpluginlib.cxx
1 file changed, 5 insertions(+), 26 deletions(-)
diff --git a/cui/source/dialogs/winpluginlib.cxx b/cui/source/dialogs/winpluginlib.cxx
index ce4ab24..5391375 100644
--- a/cui/source/dialogs/winpluginlib.cxx
+++ b/cui/source/dialogs/winpluginlib.cxx
@@ -33,36 +33,17 @@
extern "C" {
int lc_isInstalled(const char* realFilePath)
{
- HKEY hKeySoftware;
- HKEY hMozillaPlugins;
- HKEY hStarOffice;
+ HKEY hLibreOffice;
char sSoPath[SO_PATH_SIZE];
char sPluginPath[SO_PATH_SIZE];
LONG ret;
- ret = RegOpenKeyEx(HKEY_LOCAL_MACHINE, "SOFTWARE", 0, KEY_READ, &hKeySoftware);
+ ret = RegOpenKeyEx(HKEY_LOCAL_MACHINE, "SOFTWARE\\MozillaPlugins\\@sun.com/npsopluginmi;version=1.0", 0, KEY_READ, &hLibreOffice);
if(ret != ERROR_SUCCESS){
- ret = RegOpenKeyEx(HKEY_CURRENT_USER, "SOFTWARE", 0, KEY_READ, &hKeySoftware);
+ ret = RegOpenKeyEx(HKEY_CURRENT_USER, "SOFTWARE\\MozillaPlugins\\@sun.com/npsopluginmi;version=1.0", 0, KEY_READ, &hLibreOffice);
if(ret != ERROR_SUCCESS){
return -1;
}
- }
- ret = RegOpenKeyEx(hKeySoftware, "MozillaPlugins", 0, KEY_READ, &hMozillaPlugins);
- if(ret != ERROR_SUCCESS){
- RegCloseKey(hKeySoftware);
- if( ret == ERROR_FILE_NOT_FOUND)
- return 1;
- else
- return -1;
- }
- ret = RegOpenKeyEx(hMozillaPlugins, "@sun.com/npsopluginmi;version=1.0", 0, KEY_READ, &hStarOffice);
- if(ret != ERROR_SUCCESS){
- RegCloseKey(hKeySoftware);
- RegCloseKey(hMozillaPlugins);
- if( ret == ERROR_FILE_NOT_FOUND)
- return 1;
- else
- return -1;
}
if((realFilePath == NULL) || (strlen(realFilePath) == 0) || (strlen(realFilePath) >= SO_PATH_SIZE))
@@ -76,7 +57,7 @@
if(ret == 0){
DWORD dType = REG_SZ;
DWORD dSize = SO_PATH_SIZE;
- ret = RegQueryValueEx (hStarOffice, "Path", NULL, &dType , (LPBYTE) sPluginPath, &dSize);
+ ret = RegQueryValueEx (hLibreOffice, "Path", NULL, &dType , (LPBYTE) sPluginPath, &dSize);
if(ret == ERROR_SUCCESS){
if(strcmp(sPluginPath, sSoPath) == 0)
ret = 0;
@@ -88,9 +69,7 @@
}
else
ret = -1;
- RegCloseKey(hStarOffice);
- RegCloseKey(hMozillaPlugins);
- RegCloseKey(hKeySoftware);
+ RegCloseKey(hLibreOffice);
return ret;
}
--
To view, visit https://gerrit.libreoffice.org/3784
To unsubscribe, visit https://gerrit.libreoffice.org/settings
Gerrit-MessageType: newchange
Gerrit-Change-Id: I9ae2a7dae1501500d7ea7cb42517605219450af3
Gerrit-PatchSet: 1
Gerrit-Project: core
Gerrit-Branch: libreoffice-4-0
Gerrit-Owner: Andras Timar <atimar at suse.com>
More information about the LibreOffice
mailing list