Dmitry Timoshkov : user32: For an owner-drawn listbox without strings WM_MEASUREITEM still needs correct itemData.
Nikolay Sivov
bunglehead at gmail.com
Fri Jul 6 05:29:13 CDT 2018
On 6/28/2018 11:55 PM, Alexandre Julliard wrote:
> Module: wine
> Branch: master
> Commit: 8b864ae9aa6284206dcef57ed716227cb41ca6c9
> URL: https://source.winehq.org/git/wine.git/?a=commit;h=8b864ae9aa6284206dcef57ed716227cb41ca6c9
>
> Author: Dmitry Timoshkov <dmitry at baikal.ru>
> Date: Thu Jun 28 18:48:50 2018 +0800
>
> user32: For an owner-drawn listbox without strings WM_MEASUREITEM still needs correct itemData.
>
> Signed-off-by: Dmitry Timoshkov <dmitry at baikal.ru>
> Signed-off-by: Alexandre Julliard <julliard at winehq.org>
>
> ---
>
> dlls/user32/listbox.c | 2 +-
> dlls/user32/tests/msg.c | 2 +-
> 2 files changed, 2 insertions(+), 2 deletions(-)
>
> diff --git a/dlls/user32/listbox.c b/dlls/user32/listbox.c
> index 9caccf6..af8ee40 100644
> --- a/dlls/user32/listbox.c
> +++ b/dlls/user32/listbox.c
> @@ -1554,7 +1554,7 @@ static LRESULT LISTBOX_InsertItem( LB_DESCR *descr, INT index,
> mis.CtlType = ODT_LISTBOX;
> mis.CtlID = id;
> mis.itemID = index;
> - mis.itemData = data;
> + mis.itemData = str ? (ULONG_PTR)str : data;
> mis.itemHeight = descr->item_height;
> SendMessageW( descr->owner, WM_MEASUREITEM, id, (LPARAM)&mis );
> item->height = mis.itemHeight ? mis.itemHeight : 1;
> diff --git a/dlls/user32/tests/msg.c b/dlls/user32/tests/msg.c
> index da01766..052b9b9 100644
> --- a/dlls/user32/tests/msg.c
> +++ b/dlls/user32/tests/msg.c
> @@ -14387,7 +14387,7 @@ static void test_listbox_messages(void)
> ret = SendMessageA(listbox, LB_ADDSTRING, 0, (LPARAM)"item 2");
> ok(ret == 2, "expected 2, got %ld\n", ret);
>
> - ok_sequence(wm_lb_addstring_sort_ownerdraw, "LB_ADDSTRING", TRUE);
> + ok_sequence(wm_lb_addstring_sort_ownerdraw, "LB_ADDSTRING", FALSE);
> check_lb_state(listbox, 3, LB_ERR, 0, 0);
>
> log_all_parent_messages--;
>
I wonder how was this tested. Included test diff does not seem to be
relevant, i.e. I don't get any new failures with functional part reverted.
More information about the wine-devel
mailing list