From 569028fafb98e723a7d19497b250e8f0d01416cd Mon Sep 17 00:00:00 2001 From: Ged Murphy Date: Mon, 30 Mar 2009 19:28:39 +0000 Subject: [PATCH] fix wine's code a little better svn path=/trunk/; revision=40298 --- reactos/dll/win32/shell32/iconcache.c | 21 +++++++++++++++------ 1 file changed, 15 insertions(+), 6 deletions(-) diff --git a/reactos/dll/win32/shell32/iconcache.c b/reactos/dll/win32/shell32/iconcache.c index a9ab1035811..c8533b524a1 100644 --- a/reactos/dll/win32/shell32/iconcache.c +++ b/reactos/dll/win32/shell32/iconcache.c @@ -438,6 +438,11 @@ BOOL SIC_Initialize(void) cx_small, cy_small, LR_SHARED | LR_DEFAULTCOLOR); + if (!hSm) + { + ERR("Failed to load IDI_SHELL_DOCUMENT icon!\n"); + return FALSE; + } } ShellBigIconList = ImageList_Create(cx_large, @@ -445,7 +450,7 @@ BOOL SIC_Initialize(void) ilMask, 100, 100); - if (!ShellSmallIconList) + if (!ShellBigIconList) { hLg = (HICON)LoadImageW(shell32_hInstance, MAKEINTRESOURCEW(IDI_SHELL_DOCUMENT), @@ -453,17 +458,21 @@ BOOL SIC_Initialize(void) cx_large, cy_large, LR_SHARED | LR_DEFAULTCOLOR); + if (!hLg) + { + ERR("Failed to load IDI_SHELL_DOCUMENT icon!\n"); + DestroyIcon(hSm); + return FALSE; + } } - if (!hSm || !hLg) - { - FIXME("Failed to load IDI_SHELL_DOCUMENT icon!\n"); - return FALSE; - } SIC_IconAppend(swShell32Name, IDI_SHELL_DOCUMENT-1, hSm, hLg, 0); SIC_IconAppend(swShell32Name, -IDI_SHELL_DOCUMENT, hSm, hLg, 0); + DestroyIcon(hSm); + DestroyIcon(hLg); + TRACE("hIconSmall=%p hIconBig=%p\n",ShellSmallIconList, ShellBigIconList); return TRUE;