Remove ERR() if menu entry isn't of type MF_STRING as some
applications set flags of MT_SEPARATOR and erroneous errors are
produced. Add a couple of comments.
diff --git a/controls/menu.c b/controls/menu.c
index 7889b9d..1174665 100644
--- a/controls/menu.c
+++ b/controls/menu.c
@@ -1891,6 +1891,8 @@
*
* Parse a standard menu resource and add items to the menu.
* Return a pointer to the end of the resource.
+ *
+ * NOTE: flags is equivalent to the mtOption field
*/
static LPCSTR MENU_ParseResource( LPCSTR res, HMENU hMenu, BOOL unicode )
{
@@ -1906,8 +1908,6 @@
id = GET_WORD(res);
res += sizeof(WORD);
}
- if (!IS_STRING_ITEM(flags))
- ERR("not a string item %04x\n", flags );
str = res;
if (!unicode) res += strlen(str) + 1;
else res += (strlenW((LPCWSTR)str) + 1) * sizeof(WCHAR);
@@ -4192,7 +4192,7 @@
TRACE("%p, ver %d\n", template, version );
switch (version)
{
- case 0:
+ case 0: /* standard format is version of 0 */
offset = GET_WORD(p);
p += sizeof(WORD) + offset;
if (!(hMenu = CreateMenu())) return 0;
@@ -4202,7 +4202,7 @@
return 0;
}
return hMenu;
- case 1:
+ case 1: /* extended format is version of 1 */
offset = GET_WORD(p);
p += sizeof(WORD) + offset;
if (!(hMenu = CreateMenu())) return 0;