Added patch to check if menu text is a valid string in MENU_DrawMenuItem.

This commit is contained in:
Sebastian Lackner 2016-05-30 15:40:30 +02:00
parent 8c43c80df2
commit 5c3c83fef5
4 changed files with 48 additions and 2 deletions

View File

@ -57,7 +57,7 @@ upstream_commit()
# Show version information
version()
{
echo "Wine Staging 1.9.11"
echo "Wine Staging 1.9.12 (unreleased)"
echo "Copyright (C) 2014-2016 the Wine Staging project authors."
echo ""
echo "Patchset to be applied on upstream Wine:"
@ -331,6 +331,7 @@ patch_enable_all ()
enable_user32_DeferWindowPos="$1"
enable_user32_DialogBoxParam="$1"
enable_user32_Dialog_Paint_Event="$1"
enable_user32_DrawMenuItem="$1"
enable_user32_DrawTextExW="$1"
enable_user32_GetSystemMetrics="$1"
enable_user32_Invalidate_Key_State="$1"
@ -1173,6 +1174,9 @@ patch_enable ()
user32-Dialog_Paint_Event)
enable_user32_Dialog_Paint_Event="$2"
;;
user32-DrawMenuItem)
enable_user32_DrawMenuItem="$2"
;;
user32-DrawTextExW)
enable_user32_DrawTextExW="$2"
;;
@ -6811,6 +6815,21 @@ if test "$enable_user32_Dialog_Paint_Event" -eq 1; then
) >> "$patchlist"
fi
# Patchset user32-DrawMenuItem
# |
# | This patchset fixes the following Wine bugs:
# | * [#40704] Add a check if the menu text is a valid string in MENU_DrawMenuItem
# |
# | Modified files:
# | * dlls/user32/menu.c
# |
if test "$enable_user32_DrawMenuItem" -eq 1; then
patch_apply user32-DrawMenuItem/0001-user32-Add-a-check-if-the-menu-text-is-a-valid-strin.patch
(
echo '+ { "Dmitry Timoshkov", "user32: Add a check if the menu text is a valid string.", 1 },';
) >> "$patchlist"
fi
# Patchset user32-DrawTextExW
# |
# | This patchset fixes the following Wine bugs:

View File

@ -0,0 +1,26 @@
From 67313bff113c1ea8df68d6117fa17bfa10a260d2 Mon Sep 17 00:00:00 2001
From: Dmitry Timoshkov <dmitry@baikal.ru>
Date: Mon, 30 May 2016 17:14:13 +0800
Subject: user32: Add a check if the menu text is a valid string.
Fixes #40704.
---
dlls/user32/menu.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/dlls/user32/menu.c b/dlls/user32/menu.c
index e42d8f7..e1b78ca 100644
--- a/dlls/user32/menu.c
+++ b/dlls/user32/menu.c
@@ -1658,7 +1658,7 @@ static void MENU_DrawMenuItem( HWND hwnd, HMENU hmenu, HWND hwndOwner, HDC hdc,
SetViewportOrgEx( hdc, origorg.x, origorg.y, NULL);
}
/* process text if present */
- if (lpitem->text)
+ if (!IS_INTRESOURCE(lpitem->text))
{
int i;
HFONT hfontOld = 0;
--
2.8.0

View File

@ -0,0 +1 @@
Fixes: [40704] Add a check if the menu text is a valid string in MENU_DrawMenuItem

View File

@ -1 +1 @@
Wine Staging 1.9.11
Wine Staging 1.9.12 (unreleased)