Author: khornicek
Date: Wed Oct 22 16:01:24 2014
New Revision: 64890

URL: http://svn.reactos.org/svn/reactos?rev=64890&view=rev
Log:
[TASKMGR]
- fix CIDs 731628 (unlikely buffer overrun), 500038 (dead code), 1101977 
(unchecked return value)

Modified:
    trunk/reactos/base/applications/taskmgr/column.c
    trunk/reactos/base/applications/taskmgr/graphctl.c
    trunk/reactos/base/applications/taskmgr/graphctl.h
    trunk/reactos/base/applications/taskmgr/taskmgr.c

Modified: trunk/reactos/base/applications/taskmgr/column.c
URL: 
http://svn.reactos.org/svn/reactos/trunk/reactos/base/applications/taskmgr/column.c?rev=64890&r1=64889&r2=64890&view=diff
==============================================================================
--- trunk/reactos/base/applications/taskmgr/column.c    [iso-8859-1] (original)
+++ trunk/reactos/base/applications/taskmgr/column.c    [iso-8859-1] Wed Oct 22 
16:01:24 2014
@@ -204,10 +204,13 @@
     HDITEM        hditem;
     WCHAR         text[260];
     ULONG         Index;
+    ULONG         uItems;
     WCHAR         szTemp[256];
-    unsigned int  i;
-
-    for (Index=0; Index<(ULONG)SendMessageW(hProcessPageHeaderCtrl, 
HDM_GETITEMCOUNT, 0, 0); Index++)
+    UINT          i;
+
+    uItems = min(SendMessageW(hProcessPageHeaderCtrl, HDM_GETITEMCOUNT, 0, 0), 
COLUMN_NMAX);
+
+    for (Index=0; Index<uItems; Index++)
     {
         memset(&hditem, 0, sizeof(HDITEM));
 

Modified: trunk/reactos/base/applications/taskmgr/graphctl.c
URL: 
http://svn.reactos.org/svn/reactos/trunk/reactos/base/applications/taskmgr/graphctl.c?rev=64890&r1=64889&r2=64890&view=diff
==============================================================================
--- trunk/reactos/base/applications/taskmgr/graphctl.c  [iso-8859-1] (original)
+++ trunk/reactos/base/applications/taskmgr/graphctl.c  [iso-8859-1] Wed Oct 22 
16:01:24 2014
@@ -120,17 +120,15 @@
     if (this->m_brushBack     != NULL) DeleteObject(this->m_brushBack);
 }
 
-BOOL GraphCtrl_Create(TGraphCtrl* this, HWND hWnd, HWND hParentWnd, UINT nID)
-{
-    BOOL result = 0;
-
+void GraphCtrl_Create(TGraphCtrl* this, HWND hWnd, HWND hParentWnd, UINT nID)
+{
     GraphCtrl_Init(this);
     this->m_hParentWnd = hParentWnd;
     this->m_hWnd = hWnd;
+
     GraphCtrl_Resize(this);
-    if (result != 0)
-        GraphCtrl_InvalidateCtrl(this, FALSE);
-    return result;
+
+    return;
 }
 
 void GraphCtrl_SetRange(TGraphCtrl* this, double dLower, double dUpper, int 
nDecimalPlaces)

Modified: trunk/reactos/base/applications/taskmgr/graphctl.h
URL: 
http://svn.reactos.org/svn/reactos/trunk/reactos/base/applications/taskmgr/graphctl.h?rev=64890&r1=64889&r2=64890&view=diff
==============================================================================
--- trunk/reactos/base/applications/taskmgr/graphctl.h  [iso-8859-1] (original)
+++ trunk/reactos/base/applications/taskmgr/graphctl.h  [iso-8859-1] Wed Oct 22 
16:01:24 2014
@@ -88,7 +88,7 @@
 double  GraphCtrl_AppendPoint(TGraphCtrl* this,
                               double dNewPoint0, double dNewPoint1,
                               double dNewPoint2, double dNewPoint3);
-BOOL    GraphCtrl_Create(TGraphCtrl* this, HWND hWnd, HWND hParentWnd,
+void    GraphCtrl_Create(TGraphCtrl* this, HWND hWnd, HWND hParentWnd,
 UINT nID);
 void    GraphCtrl_Dispose(TGraphCtrl* this);
 void    GraphCtrl_DrawPoint(TGraphCtrl* this);

Modified: trunk/reactos/base/applications/taskmgr/taskmgr.c
URL: 
http://svn.reactos.org/svn/reactos/trunk/reactos/base/applications/taskmgr/taskmgr.c?rev=64890&r1=64889&r2=64890&view=diff
==============================================================================
--- trunk/reactos/base/applications/taskmgr/taskmgr.c   [iso-8859-1] (original)
+++ trunk/reactos/base/applications/taskmgr/taskmgr.c   [iso-8859-1] Wed Oct 22 
16:01:24 2014
@@ -154,13 +154,14 @@
     /* Get a token for this process.  */
     if (OpenProcessToken(GetCurrentProcess(), TOKEN_ADJUST_PRIVILEGES | 
TOKEN_QUERY, &hToken)) {
         /* Get the LUID for the debug privilege.  */
-        LookupPrivilegeValueW(NULL, SE_DEBUG_NAME, &tkp.Privileges[0].Luid);
-
-        tkp.PrivilegeCount = 1;  /* one privilege to set */
-        tkp.Privileges[0].Attributes = SE_PRIVILEGE_ENABLED;
-
-        /* Get the debug privilege for this process. */
-        AdjustTokenPrivileges(hToken, FALSE, &tkp, 0, (PTOKEN_PRIVILEGES)NULL, 
0);
+        if(LookupPrivilegeValueW(NULL, SE_DEBUG_NAME, &tkp.Privileges[0].Luid))
+        {
+            tkp.PrivilegeCount = 1;  /* one privilege to set */
+            tkp.Privileges[0].Attributes = SE_PRIVILEGE_ENABLED;
+
+            /* Get the debug privilege for this process. */
+            AdjustTokenPrivileges(hToken, FALSE, &tkp, 0, 
(PTOKEN_PRIVILEGES)NULL, 0);
+        }
         CloseHandle(hToken);
     }
 


Reply via email to