[WIN32K:NTUSER] Safely handle allocation failure in IntCloneMenu. CORE-14222 366/head
authorThomas Faber <thomas.faber@reactos.org>
Thu, 1 Feb 2018 10:08:14 +0000 (11:08 +0100)
committerThomas Faber <thomas.faber@reactos.org>
Sun, 18 Feb 2018 10:27:35 +0000 (11:27 +0100)
win32ss/user/ntuser/menu.c

index 46382e4..888b4ea 100644 (file)
@@ -815,6 +815,7 @@ IntCloneMenuItems(PMENU Destination, PMENU Source)
          NewMenuItem->Xlpstr = NewMenuItem->lpstr.Buffer;
       }
       NewMenuItem->hbmp = MenuItem->hbmp;
+      Destination->cItems = i + 1;
    }
    return TRUE;
 }
@@ -847,7 +848,7 @@ IntCloneMenu(PMENU Source)
    Menu->spwndNotify = NULL;
    Menu->cyMenu = 0;
    Menu->cxMenu = 0;
-   Menu->cItems = Source->cItems;
+   Menu->cItems = 0;
    Menu->iTop = 0;
    Menu->iMaxTop = 0;
    Menu->cxTextAlign = 0;