[PATCH v2 0/3] MR10059: comctl32: Fix the bug when the cInitial is too large which lead to...
I'm sorry I have pushed another mr for this topic due to my fault for pushing to the master branch of my forked project. This is about the failure of CreateDIBSection in ImageList_Create. Last discussion is in !10039 (https://gitlab.winehq.org/wine/wine/-/merge_requests/10039). I have made my last fix in https://gitlab.winehq.org/wine/wine/-/merge_requests/10039#note_129134. Please review it again @zhiyi . I am sorry for making a new merge request again. -- v2: comctl32: Expand only when the range is exceeded in ImageList_Add. comctl32: Fix the bug when the cInitial is too large which lead to CreateDIBSection fails. comctl32/tests: Add tests for the large cInitial in ImageList_CreateImage. https://gitlab.winehq.org/wine/wine/-/merge_requests/10059
@zhiyi I fixed my patch. I found another bug. By using ImageList_Replace to test cMaxImage=1, it do work successful on Windows. But it works different on Wine. Windows comctl32 expand cMaxImage only when exceeded. That means if cMaxImage=1, only 1 image was added into the list. It won't grow. But in wine cMaxImage grows to 6 when only 1 image was added into the list which space is enouph. I think the boundary conditions are inaccurate, so I made another patch. -- https://gitlab.winehq.org/wine/wine/-/merge_requests/10059#note_132167
participants (1)
-
Kun Yang (@yangkun)