cui/source/dialogs/winpluginlib.cxx |   31 +++++--------------------------
 1 file changed, 5 insertions(+), 26 deletions(-)

New commits:
commit c0126be4cca4a88aa7b5d2a36962e9828c9b2c15
Author: Andras Timar <ati...@suse.com>
Date:   Sat May 4 09:48:27 2013 -0700

    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
    Reviewed-on: https://gerrit.libreoffice.org/3785
    Reviewed-by: Michael Stahl <mst...@redhat.com>
    Tested-by: Michael Stahl <mst...@redhat.com>

diff --git a/cui/source/dialogs/winpluginlib.cxx 
b/cui/source/dialogs/winpluginlib.cxx
index 237e33b..b34d3be 100644
--- a/cui/source/dialogs/winpluginlib.cxx
+++ b/cui/source/dialogs/winpluginlib.cxx
@@ -42,37 +42,18 @@
 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))
         ret = -1;
@@ -85,7 +66,7 @@ int lc_isInstalled(const  char* realFilePath)
     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;
@@ -97,9 +78,7 @@ int lc_isInstalled(const  char* realFilePath)
     }
     else
         ret = -1;
-    RegCloseKey(hStarOffice);
-    RegCloseKey(hMozillaPlugins);
-    RegCloseKey(hKeySoftware);
+    RegCloseKey(hLibreOffice);
     return ret;
 }
 
_______________________________________________
Libreoffice-commits mailing list
libreoffice-comm...@lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/libreoffice-commits

Reply via email to