[PATCH v4 4/7] comctl32/listbox: Always retrieve zeros in LB_GETTEXT for LBS_NODATA listboxes
Gabriel Ivăncescu
gabrielopcode at gmail.com
Tue Nov 13 04:36:00 CST 2018
Signed-off-by: Gabriel Ivăncescu <gabrielopcode at gmail.com>
---
dlls/comctl32/listbox.c | 3 ++-
dlls/comctl32/tests/listbox.c | 1 -
2 files changed, 2 insertions(+), 2 deletions(-)
diff --git a/dlls/comctl32/listbox.c b/dlls/comctl32/listbox.c
index 76b09aa..aa42c3a 100644
--- a/dlls/comctl32/listbox.c
+++ b/dlls/comctl32/listbox.c
@@ -762,7 +762,8 @@ static LRESULT LISTBOX_GetText( LB_DESCR *descr, INT index, LPWSTR buffer, BOOL
} else
{
if (buffer)
- *((ULONG_PTR *)buffer) = descr->items[index].data;
+ *((ULONG_PTR *)buffer) = (descr->style & LBS_NODATA)
+ ? 0 : descr->items[index].data;
len = sizeof(ULONG_PTR);
}
return len;
diff --git a/dlls/comctl32/tests/listbox.c b/dlls/comctl32/tests/listbox.c
index c63cccd..265cffd 100644
--- a/dlls/comctl32/tests/listbox.c
+++ b/dlls/comctl32/tests/listbox.c
@@ -2301,7 +2301,6 @@ static void test_LBS_NODATA(void)
memset(&data, 0xee, sizeof(data));
ret = SendMessageA(listbox, LB_GETTEXT, valid_idx[i], (LPARAM)&data);
ok(ret == sizeof(data), "Unexpected return value %d.\n", ret);
- todo_wine
ok(!memcmp(&data, &zero_data, sizeof(data)), "Unexpected item data.\n");
ret = SendMessageA(listbox, LB_GETITEMDATA, valid_idx[i], 0);
--
2.19.1
More information about the wine-devel
mailing list