shell32: only fill used pointers

Nikolay Sivov bunglehead at gmail.com
Thu Apr 16 08:30:21 CDT 2009


André Hentschel wrote:
> This is needed to bring up IE8. Otherwise there is a Backtrace:
> =>0 0x7e80198d SHDefExtractIconW+0x7d(pszIconFile=0x32e310, iIndex=0, 
> uFlags=0, phiconLarge=(nil), phiconSmall=0x32e30c, nIconSize=1048592)
>
> ---
>  dlls/shell32/iconcache.c |    4 ++--
>  1 files changed, 2 insertions(+), 2 deletions(-)
>
>
I think you're leaking here:

+	  if (phiconLarge) *phiconLarge = hIcons[0];
          /* 'else' should DestroyIcon(hIcons[0]) */
+	  if (phiconSmall) *phiconSmall = hIcons[1];
          /* 'else' should DestroyIcon(hIcons[1]) */

cause these handles won't come to caller.

P.S. What about a test for that?
I've tested the same patch some times ago with IE8 RC1 and it definitely goes further with
it (on 1.1.19 git) but tests are required I think.






More information about the wine-devel mailing list