Kirill K. Smirnov : shell32: Avoid usage of undefined xdg_results variable, since XDG_UserDirLookup() always corrupts it.

Alexandre Julliard julliard at winehq.org
Mon Jul 21 08:51:55 CDT 2008


Module: wine
Branch: master
Commit: de3afabf084c3ee3e5b94d9f61bfec69ec4251dc
URL:    http://source.winehq.org/git/wine.git/?a=commit;h=de3afabf084c3ee3e5b94d9f61bfec69ec4251dc

Author: Kirill K. Smirnov <lich at math.spbu.ru>
Date:   Sat Jul 19 00:38:03 2008 +0400

shell32: Avoid usage of undefined xdg_results variable, since XDG_UserDirLookup() always corrupts it.

---

 dlls/shell32/shellpath.c |    5 +++--
 1 files changed, 3 insertions(+), 2 deletions(-)

diff --git a/dlls/shell32/shellpath.c b/dlls/shell32/shellpath.c
index fb0c309..362a25a 100644
--- a/dlls/shell32/shellpath.c
+++ b/dlls/shell32/shellpath.c
@@ -2139,7 +2139,7 @@ static void _SHCreateSymbolicLinks(void)
     const char *pszHome;
     HRESULT hr;
     const unsigned int num = sizeof(xdg_dirs) / sizeof(xdg_dirs[0]);
-    char ** xdg_results = NULL;
+    char ** xdg_results;
     char * xdg_desktop_dir;
 
     /* Create all necessary profile sub-dirs up to 'My Documents' and get the unix path. */
@@ -2149,7 +2149,8 @@ static void _SHCreateSymbolicLinks(void)
     pszPersonal = wine_get_unix_file_name(wszTempPath);
     if (!pszPersonal) return;
 
-    XDG_UserDirLookup(xdg_dirs, num, &xdg_results);
+    hr = XDG_UserDirLookup(xdg_dirs, num, &xdg_results);
+    if (FAILED(hr)) xdg_results = NULL;
 
     pszHome = getenv("HOME");
     if (pszHome && !stat(pszHome, &statFolder) && S_ISDIR(statFolder.st_mode)) {




More information about the wine-cvs mailing list