[USER32]
authorAmine Khaldi <amine.khaldi@reactos.org>
Thu, 23 Oct 2014 12:24:07 +0000 (12:24 +0000)
committerAmine Khaldi <amine.khaldi@reactos.org>
Thu, 23 Oct 2014 12:24:07 +0000 (12:24 +0000)
* Merge r64866 from the shell branch which had:

* Fix wrong array length passed to GetClassNameW. CID 716222
* Replace other instances of explicit array length to GetWindowTextW with _countof(x).
Based on a patch by Christoph von Wittich.

svn path=/trunk/; revision=64924

reactos/win32ss/user/user32/controls/appswitch.c

index 5e1f7ce..ab28959 100644 (file)
@@ -83,7 +83,7 @@ void CompleteSwitch(BOOL doSwitch)
       {
          HWND hwnd = windowList[selectedWindow];
                   
       {
          HWND hwnd = windowList[selectedWindow];
                   
-         GetWindowTextW(hwnd, windowText, 1023);
+         GetWindowTextW(hwnd, windowText, _countof(windowText));
 
          TRACE("[ATbot] CompleteSwitch Switching to 0x%08x (%ls)\n", hwnd, windowText);
 
 
          TRACE("[ATbot] CompleteSwitch Switching to 0x%08x (%ls)\n", hwnd, windowText);
 
@@ -103,9 +103,9 @@ BOOL CALLBACK EnumerateCallback(HWND window, LPARAM lParam)
    if (!IsWindowVisible(window))
             return TRUE;
 
    if (!IsWindowVisible(window))
             return TRUE;
 
-   GetClassNameW(window,windowText,4095);
-   if ((wcscmp(L"Shell_TrayWnd",windowText)==0) ||
-       (wcscmp(L"Progman",windowText)==0) )
+   GetClassNameW(window, windowText, _countof(windowText));
+   if ((wcscmp(L"Shell_TrayWnd", windowText)==0) ||
+       (wcscmp(L"Progman", windowText)==0) )
             return TRUE;
       
    // First try to get the big icon assigned to the window
             return TRUE;
       
    // First try to get the big icon assigned to the window
@@ -194,7 +194,7 @@ void OnPaint(HWND hWnd)
    HPEN hPen;
    HFONT dcFont;
    COLORREF cr;
    HPEN hPen;
    HFONT dcFont;
    COLORREF cr;
-   int nch = GetWindowTextW(windowList[selectedWindow], windowText, 1023);
+   int nch = GetWindowTextW(windowList[selectedWindow], windowText, _countof(windowText));
 
    dialogDC = BeginPaint(hWnd, &paint);
    {
 
    dialogDC = BeginPaint(hWnd, &paint);
    {
@@ -373,7 +373,7 @@ LRESULT WINAPI DoAppSwitch( WPARAM wParam, LPARAM lParam )
          }
          TRACE("DoAppSwitch VK_ESCAPE 1 Count %d windowCount %d\n",Count,windowCount);
          hwnd = windowList[Count];
          }
          TRACE("DoAppSwitch VK_ESCAPE 1 Count %d windowCount %d\n",Count,windowCount);
          hwnd = windowList[Count];
-         GetWindowTextW(hwnd, Text, 1023);
+         GetWindowTextW(hwnd, Text, _countof(Text));
          TRACE("[ATbot] Switching to 0x%08x (%ls)\n", hwnd, Text);
          MakeWindowActive(hwnd);
          Esc = TRUE;
          TRACE("[ATbot] Switching to 0x%08x (%ls)\n", hwnd, Text);
          MakeWindowActive(hwnd);
          Esc = TRUE;
@@ -456,7 +456,7 @@ LRESULT WINAPI DoAppSwitch( WPARAM wParam, LPARAM lParam )
                       Count = windowCount - 1;
                 }
                 hwnd = windowList[Count];
                       Count = windowCount - 1;
                 }
                 hwnd = windowList[Count];
-                GetWindowTextW(hwnd, Text, 1023);
+                GetWindowTextW(hwnd, Text, _countof(Text));
                 MakeWindowActive(hwnd);
              }
           }
                 MakeWindowActive(hwnd);
              }
           }