[PATCH 3/6] regedit: Free allocated memory after calling GetValueName()

Hugh McMaster hugh.mcmaster at outlook.com
Mon Jul 16 07:20:46 CDT 2018


Signed-off-by: Hugh McMaster <hugh.mcmaster at outlook.com>
---
 programs/regedit/framewnd.c | 5 +++--
 programs/regedit/listview.c | 2 +-
 programs/regedit/main.h     | 2 +-
 3 files changed, 5 insertions(+), 4 deletions(-)

diff --git a/programs/regedit/framewnd.c b/programs/regedit/framewnd.c
index ed0c5bbfc8..4d828c0e7c 100644
--- a/programs/regedit/framewnd.c
+++ b/programs/regedit/framewnd.c
@@ -853,10 +853,11 @@ static BOOL _CmdWndProc(HWND hWnd, UINT message, WPARAM wParam, LPARAM lParam)
     case ID_EDIT_MODIFY:
     case ID_EDIT_MODIFY_BIN:
     {
-        LPCWSTR valueName = GetValueName(g_pChildWnd->hListWnd);
-        WCHAR* keyPath = GetItemPath(g_pChildWnd->hTreeWnd, 0, &hKeyRoot);
+        WCHAR *valueName = GetValueName(g_pChildWnd->hListWnd);
+        WCHAR *keyPath = GetItemPath(g_pChildWnd->hTreeWnd, 0, &hKeyRoot);
         ModifyValue(hWnd, hKeyRoot, keyPath, valueName);
         heap_free(keyPath);
+        heap_free(valueName);
         break;
     }
     case ID_EDIT_FIND:
diff --git a/programs/regedit/listview.c b/programs/regedit/listview.c
index f42f9c2e2f..758482860e 100644
--- a/programs/regedit/listview.c
+++ b/programs/regedit/listview.c
@@ -63,7 +63,7 @@ LPWSTR GetItemText(HWND hwndLV, UINT item)
     return NULL;
 }
 
-LPCWSTR GetValueName(HWND hwndLV)
+WCHAR *GetValueName(HWND hwndLV)
 {
     INT item;
 
diff --git a/programs/regedit/main.h b/programs/regedit/main.h
index edcc90154b..ae03440564 100644
--- a/programs/regedit/main.h
+++ b/programs/regedit/main.h
@@ -150,7 +150,7 @@ int CALLBACK CompareFunc(LPARAM lParam1, LPARAM lParam2, LPARAM lParamSort);
 BOOL RefreshListView(HWND hwndLV, HKEY hKeyRoot, LPCWSTR keyPath, LPCWSTR highlightValue);
 HWND StartValueRename(HWND hwndLV);
 LPWSTR GetItemText(HWND hwndLV, UINT item);
-LPCWSTR GetValueName(HWND hwndLV);
+WCHAR *GetValueName(HWND hwndLV);
 BOOL ListWndNotifyProc(HWND hWnd, WPARAM wParam, LPARAM lParam, BOOL *Result);
 BOOL IsDefaultValue(HWND hwndLV, int i);
 
-- 
2.18.0




More information about the wine-devel mailing list