[RAPPS] Rapps trivial fixes (#2819)
authorHe Yang <1160386205@qq.com>
Wed, 20 May 2020 22:21:26 +0000 (06:21 +0800)
committerGitHub <noreply@github.com>
Wed, 20 May 2020 22:21:26 +0000 (00:21 +0200)
- Specify W explicitly for URL_COMPONENTS;
- Remove malloc/free for once used HostName in urlComponents;
- Use PathAppendW to operate on path string.

base/applications/rapps/loaddlg.cpp
base/applications/rapps/winmain.cpp

index b394d0d..cc88af6 100644 (file)
@@ -563,7 +563,7 @@ unsigned int WINAPI CDownloadManager::ThreadFunc(LPVOID param)
 
     unsigned char lpBuffer[4096];
     LPCWSTR lpszAgent = L"RApps/1.0";
-    URL_COMPONENTS urlComponents;
+    URL_COMPONENTSW urlComponents;
     size_t urlLength, filenameLength;
 
     const ATL::CSimpleArray<DownloadInfo> &InfoArray = static_cast<DownloadParam*>(param)->AppInfo;
@@ -698,8 +698,6 @@ unsigned int WINAPI CDownloadManager::ThreadFunc(LPVOID param)
         urlLength = InfoArray[iAppId].szUrl.GetLength();
         urlComponents.dwSchemeLength = urlLength + 1;
         urlComponents.lpszScheme = (LPWSTR) malloc(urlComponents.dwSchemeLength * sizeof(WCHAR));
-        urlComponents.dwHostNameLength = urlLength + 1;
-        urlComponents.lpszHostName = (LPWSTR) malloc(urlComponents.dwHostNameLength * sizeof(WCHAR));
 
         if (!InternetCrackUrlW(InfoArray[iAppId].szUrl, urlLength + 1, ICU_DECODE | ICU_ESCAPE, &urlComponents))
         {
@@ -766,7 +764,6 @@ unsigned int WINAPI CDownloadManager::ThreadFunc(LPVOID param)
         }
 
         free(urlComponents.lpszScheme);
-        free(urlComponents.lpszHostName);
 
 #ifdef USE_CERT_PINNING
         // are we using HTTPS to download the RAPPS update package? check if the certificate is original
index f4e4a4f..1c351e8 100644 (file)
@@ -63,7 +63,9 @@ VOID FillDefaultSettings(PSETTINGS_INFO pSettingsInfo)
         szDownloadDir.ReleaseBuffer();
     }
 
-    szDownloadDir += L"\\RAPPS Downloads";
+    PathAppendW(szDownloadDir.GetBuffer(MAX_PATH), L"\\RAPPS Downloads");
+    szDownloadDir.ReleaseBuffer();
+       
     ATL::CStringW::CopyChars(pSettingsInfo->szDownloadDir,
                              _countof(pSettingsInfo->szDownloadDir),
                              szDownloadDir.GetString(),