summaryrefslogtreecommitdiff
path: root/jvmfwk/plugins/sunmajor/pluginlib/util.cxx
diff options
context:
space:
mode:
Diffstat (limited to 'jvmfwk/plugins/sunmajor/pluginlib/util.cxx')
-rw-r--r--jvmfwk/plugins/sunmajor/pluginlib/util.cxx72
1 files changed, 43 insertions, 29 deletions
diff --git a/jvmfwk/plugins/sunmajor/pluginlib/util.cxx b/jvmfwk/plugins/sunmajor/pluginlib/util.cxx
index d1a0088f1510..062abf494f0a 100644
--- a/jvmfwk/plugins/sunmajor/pluginlib/util.cxx
+++ b/jvmfwk/plugins/sunmajor/pluginlib/util.cxx
@@ -577,35 +577,6 @@ bool decodeOutput(const OString& s, OUString* out)
#if defined(_WIN32)
-void addJavaInfoFromWinReg(
- std::vector<rtl::Reference<VendorBase> > & allInfos,
- std::vector<rtl::Reference<VendorBase> > & addedInfos)
-{
- // Get Java s from registry
- std::vector<OUString> vecJavaHome;
- if(getSDKInfoFromRegistry(vecJavaHome))
- {
- // create impl objects
- typedef std::vector<OUString>::iterator ItHome;
- for(ItHome it_home= vecJavaHome.begin(); it_home != vecJavaHome.end();
- ++it_home)
- {
- getAndAddJREInfoByPath(*it_home, allInfos, addedInfos);
- }
- }
-
- vecJavaHome.clear();
- if(getJREInfoFromRegistry(vecJavaHome))
- {
- typedef std::vector<OUString>::iterator ItHome;
- for(ItHome it_home= vecJavaHome.begin(); it_home != vecJavaHome.end();
- ++it_home)
- {
- getAndAddJREInfoByPath(*it_home, allInfos, addedInfos);
- }
- }
-}
-
bool getJavaInfoFromRegistry(const wchar_t* szRegKey,
vector<OUString>& vecJavaHome)
@@ -687,6 +658,49 @@ bool getJREInfoFromRegistry(vector<OUString>& vecJavaHome)
return getJavaInfoFromRegistry(HKEY_SUN_JRE, vecJavaHome);
}
+void addJavaInfoFromWinReg(
+ std::vector<rtl::Reference<VendorBase> > & allInfos,
+ std::vector<rtl::Reference<VendorBase> > & addedInfos)
+{
+ // Get Java s from registry
+ std::vector<OUString> vecJavaHome;
+ if(getSDKInfoFromRegistry(vecJavaHome))
+ {
+ // create impl objects
+ typedef std::vector<OUString>::iterator ItHome;
+ for(ItHome it_home= vecJavaHome.begin(); it_home != vecJavaHome.end();
+ ++it_home)
+ {
+ getAndAddJREInfoByPath(*it_home, allInfos, addedInfos);
+ }
+ }
+
+ vecJavaHome.clear();
+ if(getJREInfoFromRegistry(vecJavaHome))
+ {
+ typedef std::vector<OUString>::iterator ItHome;
+ for(ItHome it_home= vecJavaHome.begin(); it_home != vecJavaHome.end();
+ ++it_home)
+ {
+ getAndAddJREInfoByPath(*it_home, allInfos, addedInfos);
+ }
+ }
+
+ vecJavaHome.clear();
+ if (getJavaInfoFromRegistry(L"Software\\JavaSoft\\JDK", vecJavaHome)) {
+ for (auto const & javaHome: vecJavaHome) {
+ getAndAddJREInfoByPath(javaHome, allInfos, addedInfos);
+ }
+ }
+
+ vecJavaHome.clear();
+ if (getJavaInfoFromRegistry(L"Software\\JavaSoft\\JRE", vecJavaHome)) {
+ for (auto const & javaHome: vecJavaHome) {
+ getAndAddJREInfoByPath(javaHome, allInfos, addedInfos);
+ }
+ }
+}
+
#endif // WNT
void bubbleSortVersion(vector<rtl::Reference<VendorBase> >& vec)