windowscodecs: support ICO files with embedded PNGs

Damjan Jovanovic damjan.jov at
Fri Aug 27 03:34:21 CDT 2010

If this patch isn't accepted then the winemenubuilder ones shouldn't be
either. PNG is typically used to compress the largest icon in the ICO file,
and the largest icon is the one winemenubuilder will extracts to be used
during the +/- 1 minute delay in Gnome before a menu item starts having the
best-sized icon, so with the winemenubuilder patches and without this one
some icons will regress to showing nothing initially.

IWICStream::InitializeFromIStreamRegion can always come later. The read loop
is thus temporary, and a 256x256 PNG (the largest size ICO supports) cannot
take up more than 256*256*4 bytes = 256 kB, so the memory usage with this
patch is not a concern.

On Fri, Aug 27, 2010 at 7:42 AM, Vincent Povirk <madewokherd at>wrote:

> You mean you're not going to implement
> IWICStream::InitializeFromIStreamRegion? That's no fun.
> Also, that read loop is a bit silly. You might as well just lock the
> HGLOBAL and read into it directly.
> On Fri, Aug 27, 2010 at 12:30 AM, Damjan Jovanovic <damjan.jov at>
> wrote:
> > Changelog:
> > * windowscodecs: support ICO files with embedded PNGs
> > Closes #23708.
> > Damjan Jovanovic
> >
> >
> >
> >
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <>

More information about the wine-devel mailing list