comctl32: Hack for imagelist width greater than 2^16 (bug #3573)

Marcus Meissner meissner at suse.de
Tue Oct 24 04:36:10 CDT 2006


On Tue, Oct 24, 2006 at 06:11:30PM +0900, Mike McCormack wrote:
> ---
> 
> This hack is for bug #3573.  I don't expect it to be applied to Wine, 
> but perhaps it will give somebody some insight into solving the bug.
> 
> WinRAR calls ImageList create and asks for an ImageList for 256 images, 
> *expandable* to 2048.  It doesn't actually use 2048 images:
> 
> ImageList_Create (16 16 0x21 256 2048)
> 
> 2048*256 is a bitmap wider than X.org wants, so it fails with a BadAlloc 
> error.

Actually 2048*16 is too wide.

> The correct solution is to rewrite the imagelist code to either
> 
> 1) Allocate the bitmap on demand
> 
> or
> 
> 2) Store images in separate DIB sections.

3) Allocate in a 4 image deep band like Windows does.
 
Ciao, Marcus



More information about the wine-devel mailing list