diff options
author | Sefa Eyeoglu <contact@scrumplex.net> | 2022-07-16 20:08:02 +0200 |
---|---|---|
committer | Sefa Eyeoglu <contact@scrumplex.net> | 2022-07-16 20:08:08 +0200 |
commit | 17ea51ce276a1ad639fb7f62724230de25983d4c (patch) | |
tree | 8b25a5e2edfc0ed885a2790fce69257ea46a8a45 | |
parent | a4672ba00ff03620bcbd9d43ee924cb6a81c79b4 (diff) | |
download | PrismLauncher-17ea51ce276a1ad639fb7f62724230de25983d4c.tar.gz PrismLauncher-17ea51ce276a1ad639fb7f62724230de25983d4c.tar.bz2 PrismLauncher-17ea51ce276a1ad639fb7f62724230de25983d4c.zip |
fix: fix memory leak on Windows
Signed-off-by: Sefa Eyeoglu <contact@scrumplex.net>
-rw-r--r-- | launcher/java/JavaUtils.cpp | 8 |
1 files changed, 3 insertions, 5 deletions
diff --git a/launcher/java/JavaUtils.cpp b/launcher/java/JavaUtils.cpp index 48add99e..749c9c88 100644 --- a/launcher/java/JavaUtils.cpp +++ b/launcher/java/JavaUtils.cpp @@ -202,8 +202,6 @@ QList<JavaInstallPtr> JavaUtils::FindJavaFromRegistryKey(DWORD keyType, QString { // Read the current type version from the registry. // This will be used to find any key that contains the JavaHome value. - TCHAR *value = new TCHAR[0]; - DWORD valueSz = 0; TCHAR subKeyName[255]; DWORD subKeyNameSize, numSubKeys, retCode; @@ -231,9 +229,8 @@ QList<JavaInstallPtr> JavaUtils::FindJavaFromRegistryKey(DWORD keyType, QString KEY_READ | KEY_WOW64_64KEY, &newKey) == ERROR_SUCCESS) { // Read the JavaHome value to find where Java is installed. - delete [] value; - value = new TCHAR[0]; - valueSz = 0; + TCHAR *value = NULL; + DWORD valueSz = 0; if (RegQueryValueExW(newKey, keyJavaDir.toStdWString().c_str(), NULL, NULL, (BYTE *)value, &valueSz) == ERROR_MORE_DATA) { @@ -242,6 +239,7 @@ QList<JavaInstallPtr> JavaUtils::FindJavaFromRegistryKey(DWORD keyType, QString &valueSz); QString newValue = QString::fromWCharArray(value); + delete [] value; // Now, we construct the version object and add it to the list. JavaInstallPtr javaVersion(new JavaInstall()); |