Author: ashaposhnikov
Date: Mon Jul 10 22:26:01 2017
New Revision: 75316
URL:
http://svn.reactos.org/svn/reactos?rev=75316&view=rev
Log:
[RAPPS] Some fixes
- winmain.cpp, loaddlg.cpp, installed.cpp:
Changed string-related opreations
- installed.cpp: Fixed buffer sizing when calling RegQueryValueExW()
- misc.cpp: Removed unused function
- rosui.h: Made use of GetWindowTextLength()
Modified:
branches/GSoC_2017/rapps/reactos/base/applications/rapps/installed.cpp
branches/GSoC_2017/rapps/reactos/base/applications/rapps/loaddlg.cpp
branches/GSoC_2017/rapps/reactos/base/applications/rapps/misc.cpp
branches/GSoC_2017/rapps/reactos/base/applications/rapps/rosui.h
branches/GSoC_2017/rapps/reactos/base/applications/rapps/winmain.cpp
Modified: branches/GSoC_2017/rapps/reactos/base/applications/rapps/installed.cpp
URL:
http://svn.reactos.org/svn/reactos/branches/GSoC_2017/rapps/reactos/base/ap…
==============================================================================
--- branches/GSoC_2017/rapps/reactos/base/applications/rapps/installed.cpp [iso-8859-1]
(original)
+++ branches/GSoC_2017/rapps/reactos/base/applications/rapps/installed.cpp [iso-8859-1]
Mon Jul 10 22:26:01 2017
@@ -32,7 +32,7 @@
return TRUE;
}
- szString = L"---";
+ StringCchCopyW(szString, MAX_PATH, L"---");
return FALSE;
}
@@ -44,8 +44,8 @@
ATL::CStringW szPath =
L"Software\\Microsoft\\Windows\\CurrentVersion\\Uninstall\\" + RegName;
if (RegOpenKeyExW(IsUserKey ? HKEY_CURRENT_USER : HKEY_LOCAL_MACHINE,
- szPath, 0, keyWow | KEY_READ,
- &hKey) == ERROR_SUCCESS)
+ szPath, 0, keyWow | KEY_READ,
+ &hKey) == ERROR_SUCCESS)
{
IsInstalled = TRUE;
}
@@ -62,17 +62,17 @@
ATL::CStringW szPath =
L"Software\\Microsoft\\Windows\\CurrentVersion\\Uninstall\\" + RegName;
if (RegOpenKeyExW(IsUserKey ? HKEY_CURRENT_USER : HKEY_LOCAL_MACHINE,
- szPath.GetString(), 0, keyWow | KEY_READ,
- &hKey) == ERROR_SUCCESS)
- {
- DWORD dwSize = MAX_PATH;
+ szPath.GetString(), 0, keyWow | KEY_READ,
+ &hKey) == ERROR_SUCCESS)
+ {
+ DWORD dwSize = MAX_PATH * sizeof(WCHAR);
DWORD dwType = REG_SZ;
if (RegQueryValueExW(hKey,
- L"DisplayVersion",
- NULL,
- &dwType,
- (LPBYTE) szVersion.GetBuffer(dwSize),
- &dwSize) == ERROR_SUCCESS)
+ L"DisplayVersion",
+ NULL,
+ &dwType,
+ (LPBYTE) szVersion.GetBuffer(MAX_PATH),
+ &dwSize) == ERROR_SUCCESS)
{
szVersion.ReleaseBuffer();
szVersionResult = szVersion;
@@ -126,11 +126,11 @@
if (!ListView_GetItem(hListView, &Item))
return FALSE;
- ItemInfo = (PINSTALLED_INFO)Item.lParam;
+ ItemInfo = (PINSTALLED_INFO) Item.lParam;
hKey = ItemInfo->hSubKey;
dwType = REG_SZ;
- dwSize = sizeof(szPath);
+ dwSize = MAX_PATH * sizeof(WCHAR);
if (RegQueryValueExW(hKey,
bModify ? szModify : szUninstall,
NULL,
@@ -208,11 +208,14 @@
if (MessageBoxW(hMainWnd, szMsgText, szMsgTitle, MB_YESNO | MB_ICONQUESTION) ==
IDYES)
{
- wcsncat(szFullName, Info->szKeyName.GetString(), MAX_PATH -
wcslen(szFullName));
+ ATL::CStringW::CopyChars(szFullName,
+ MAX_PATH,
+ Info->szKeyName.GetString(),
+ MAX_PATH - wcslen(szFullName));
if (RegDeleteKeyW(Info->hRootKey, szFullName) == ERROR_SUCCESS)
{
- (VOID) ListView_DeleteItem(hListView, ItemIndex);
+ ListView_DeleteItem(hListView, ItemIndex);
return;
}
@@ -267,21 +270,22 @@
}
dwType = REG_SZ;
- dwSize = MAX_PATH;
+ dwSize = MAX_PATH * sizeof(WCHAR);
bIsUpdate = (RegQueryValueExW(Info.hSubKey,
L"ParentKeyName",
NULL,
&dwType,
- (LPBYTE) szParentKeyName.GetBuffer(dwSize),
+ (LPBYTE) szParentKeyName.GetBuffer(MAX_PATH),
&dwSize) == ERROR_SUCCESS);
szParentKeyName.ReleaseBuffer();
- dwSize = sizeof(szDisplayName);
+ dwType = REG_SZ;
+ dwSize = MAX_PATH * sizeof(WCHAR);
if (RegQueryValueExW(Info.hSubKey,
L"DisplayName",
NULL,
&dwType,
- (LPBYTE) szDisplayName.GetBuffer(dwSize),
+ (LPBYTE) szDisplayName.GetBuffer(MAX_PATH),
&dwSize) == ERROR_SUCCESS)
{
szDisplayName.ReleaseBuffer();
Modified: branches/GSoC_2017/rapps/reactos/base/applications/rapps/loaddlg.cpp
URL:
http://svn.reactos.org/svn/reactos/branches/GSoC_2017/rapps/reactos/base/ap…
==============================================================================
--- branches/GSoC_2017/rapps/reactos/base/applications/rapps/loaddlg.cpp [iso-8859-1]
(original)
+++ branches/GSoC_2017/rapps/reactos/base/applications/rapps/loaddlg.cpp [iso-8859-1] Mon
Jul 10 22:26:01 2017
@@ -366,8 +366,8 @@
memset(&urlComponents, 0, sizeof(urlComponents));
urlComponents.dwStructSize = sizeof(urlComponents);
-
- if (FAILED(StringCbLengthW(AppInfo->szUrlDownload,
sizeof(AppInfo->szUrlDownload), &urlLength)))
+
+ if (AppInfo->szUrlDownload.GetLength() > urlLength)
goto end;
urlLength /= sizeof(WCHAR);
Modified: branches/GSoC_2017/rapps/reactos/base/applications/rapps/misc.cpp
URL:
http://svn.reactos.org/svn/reactos/branches/GSoC_2017/rapps/reactos/base/ap…
==============================================================================
--- branches/GSoC_2017/rapps/reactos/base/applications/rapps/misc.cpp [iso-8859-1]
(original)
+++ branches/GSoC_2017/rapps/reactos/base/applications/rapps/misc.cpp [iso-8859-1] Mon Jul
10 22:26:01 2017
@@ -493,10 +493,3 @@
return (UINT) Result;
}
-
-LPWSTR HeapBufferFromCStringW(const ATL::CStringW& String)
-{
- LPWSTR szBuffer = (LPWSTR) HeapAlloc(GetProcessHeap(), 0, MAX_PATH * sizeof(WCHAR));
- ATL::CString::CopyChars(szBuffer, MAX_PATH, String.GetString(), String.GetLength() +
1);
- return szBuffer;
-}
Modified: branches/GSoC_2017/rapps/reactos/base/applications/rapps/rosui.h
URL:
http://svn.reactos.org/svn/reactos/branches/GSoC_2017/rapps/reactos/base/ap…
==============================================================================
--- branches/GSoC_2017/rapps/reactos/base/applications/rapps/rosui.h [iso-8859-1]
(original)
+++ branches/GSoC_2017/rapps/reactos/base/applications/rapps/rosui.h [iso-8859-1] Mon Jul
10 22:26:01 2017
@@ -495,7 +495,8 @@
void GetWindowTextW(ATL::CStringW& szText)
{
- CWindow::GetWindowText(szText.GetBuffer(MAX_STR_LEN), MAX_STR_LEN);
+ INT length = CWindow::GetWindowTextLengthW();
+ CWindow::GetWindowText(szText.GetBuffer(length), length);
szText.ReleaseBuffer();
}
};
Modified: branches/GSoC_2017/rapps/reactos/base/applications/rapps/winmain.cpp
URL:
http://svn.reactos.org/svn/reactos/branches/GSoC_2017/rapps/reactos/base/ap…
==============================================================================
--- branches/GSoC_2017/rapps/reactos/base/applications/rapps/winmain.cpp [iso-8859-1]
(original)
+++ branches/GSoC_2017/rapps/reactos/base/applications/rapps/winmain.cpp [iso-8859-1] Mon
Jul 10 22:26:01 2017
@@ -69,7 +69,10 @@
szDownloadDir.ReleaseBuffer();
szDownloadDir += L"\\RAPPS Downloads";
- StringCchCopyW(pSettingsInfo->szDownloadDir,
_countof(pSettingsInfo->szDownloadDir), szDownloadDir.GetString());
+ ATL::CStringW::CopyChars(pSettingsInfo->szDownloadDir,
+ _countof(pSettingsInfo->szDownloadDir),
+ szDownloadDir.GetString(),
+ szDownloadDir.GetLength() + 1);
pSettingsInfo->bDelInstaller = FALSE;
pSettingsInfo->Maximized = FALSE;
@@ -79,8 +82,8 @@
pSettingsInfo->Height = 450;
pSettingsInfo->Proxy = 0;
- StringCbCopyW(pSettingsInfo->szProxyServer,
sizeof(pSettingsInfo->szProxyServer), L"");
- StringCbCopyW(pSettingsInfo->szNoProxyFor, sizeof(pSettingsInfo->szNoProxyFor),
L"");
+ pSettingsInfo->szProxyServer[0] = UNICODE_NULL;
+ pSettingsInfo->szNoProxyFor[0] = UNICODE_NULL;
}
static BOOL