Nikolay Sivov : dwrite/tests: Fix buffer overflow when filling test string.
Alexandre Julliard
julliard at wine.codeweavers.com
Tue Jan 6 15:05:17 CST 2015
Module: wine
Branch: master
Commit: de09e9b94ed340c8004a0919157a52fd90cb9f28
URL: http://source.winehq.org/git/wine.git/?a=commit;h=de09e9b94ed340c8004a0919157a52fd90cb9f28
Author: Nikolay Sivov <nsivov at codeweavers.com>
Date: Tue Jan 6 19:45:04 2015 +0300
dwrite/tests: Fix buffer overflow when filling test string.
---
dlls/dwrite/tests/layout.c | 6 ++----
1 file changed, 2 insertions(+), 4 deletions(-)
diff --git a/dlls/dwrite/tests/layout.c b/dlls/dwrite/tests/layout.c
index b90d7af..1a1cfd9 100644
--- a/dlls/dwrite/tests/layout.c
+++ b/dlls/dwrite/tests/layout.c
@@ -927,7 +927,7 @@ todo_wine {
static void test_SetLocaleName(void)
{
static const WCHAR strW[] = {'a','b','c','d',0};
- WCHAR buffW[LOCALE_NAME_MAX_LENGTH+5];
+ WCHAR buffW[LOCALE_NAME_MAX_LENGTH+sizeof(strW)/sizeof(WCHAR)];
IDWriteTextFormat *format;
IDWriteTextLayout *layout;
DWRITE_TEXT_RANGE range;
@@ -971,10 +971,8 @@ if (0) /* crashes on native */
/* name is too long */
lstrcpyW(buffW, strW);
- while (lstrlenW(buffW) < LOCALE_NAME_MAX_LENGTH) {
+ while (lstrlenW(buffW) <= LOCALE_NAME_MAX_LENGTH)
lstrcatW(buffW, strW);
- }
- lstrcatW(buffW, strW);
range.startPosition = 0;
range.length = 1;
More information about the wine-cvs
mailing list