132 Commits

Author SHA1 Message Date
Francois Gouget
013949fc0b shell32: Tweak / fix the MS-DOS name in a comment.
Signed-off-by: Francois Gouget <fgouget@free.fr>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-12-13 09:59:08 +01:00
Gabriel Ivăncescu
4e633f9244 shell32/iconcache: Prevent the imagelists from going out of sync when loading an icon.
When populating the imagelists cache with icons of different sizes, it
can happen that only some icon sizes actually succeed the extraction,
with others failing with a NULL handle. This is especially true with some
broken "executable packers" where for example, a 32x32 icon loads okay,
but a 16x16 fails. Even when PrivateExtractIconsW succeeds, the returned
handle can still be NULL, leading to the ImageLists becoming out of sync.

Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=45696
Signed-off-by: Gabriel Ivăncescu <gabrielopcode@gmail.com>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-11-29 17:48:33 +01:00
Alex Henrie
4b5d0f2f43 shell32: Rename IDI_SHELL_DOCUMENT to IDI_SHELL_FILE.
Signed-off-by: Alex Henrie <alexhenrie24@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-08-17 09:46:36 +02:00
Nikolay Sivov
e51c9b47b8 shell32: Add SHIL_JUMBO list.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-03-21 10:13:43 +01:00
Nikolay Sivov
7db6885da7 shell32: Add support for SHIL_SYSSMALL list.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-03-21 10:13:36 +01:00
Nikolay Sivov
479dc1d8c3 shell32: Add support for SHIL_EXTRALARGE list.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-03-21 10:13:32 +01:00
Nikolay Sivov
0075b05adf shell32: Move SHGetImageList() to related source file.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-03-21 10:13:27 +01:00
Nikolay Sivov
09389c4bab shell32: Pass handle arrays between icon cache helpers.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-03-21 10:13:23 +01:00
Nikolay Sivov
ff5cfaab56 shell32: Use array for icon lists.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-03-21 10:13:18 +01:00
Nikolay Sivov
e3b200bd8a shell32: Use global memory allocation helpers.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-02-22 14:16:33 +01:00
André Hentschel
460053b8fc shell32: Don't cast return value from DPA_GetPtr.
Signed-off-by: André Hentschel <nerv@dawncrow.de>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-01-02 15:52:22 +01:00
Huw Davies
a7d79fe445 shell32: Load icons with the correct size.
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-05-02 17:51:29 +02:00
Huw Davies
3a1b289d66 shell32: Fix the icon sizes of the shell imagelists.
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-05-02 17:51:25 +02:00
Huw Davies
734dc8f200 shell32: Use the imagelist to determine the icon size.
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-04-19 14:20:49 +02:00
Huw Davies
524e316a14 shell32: Avoid leaking icon handles.
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-04-19 14:20:48 +02:00
Francois Gouget
cc2a2b0970 shell32: Spelling fixes.
Signed-off-by: Francois Gouget <fgouget@free.fr>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-05-30 11:55:57 +09:00
Mark Harmstone
77b75ca14b shell32: Don't hardcode icon sizes in SIC_LoadIcon. 2015-08-03 11:00:54 +02:00
Alexandre Julliard
e330a128d5 shell32: Use Shell_GetImageLists to retrieve image lists instead of using a global variable. 2014-01-02 11:56:11 +01:00
Nikolay Sivov
b5312b70f5 shell32: Don't call comctl32 on unload time if it wasn't used before. 2013-12-11 12:56:07 +01:00
Alexandre Julliard
116e33d50a shell32: Delay initialization of the icon cache until needed. 2013-10-17 20:29:23 +02:00
Francois Gouget
653354ab25 Assorted spelling fixes. 2013-07-03 21:20:04 +02:00
Detlef Riekenberg
ea516bfc10 shell32: Fix a copy & paste typo. 2013-04-29 11:42:06 +02:00
Detlef Riekenberg
eafc9e84a6 shell32: Add a semi-stub for SHGetStockIconInfo. 2013-04-26 11:55:26 +02:00
David Hedberg
be2259dce9 shell32: Shell_GetImageLists should be declared in shlobj.h and exported by name. 2010-07-20 12:35:17 +02:00
Marcus Meissner
265c959ed9 shell32: handle corrupt entry in iconcache registry entry (Coverity). 2009-12-04 14:34:58 +01:00
Vincent Povirk
e083dc831c shell32: Handle NULL return icon parameters in SHDefExtractIcon. 2009-05-18 12:31:56 +02:00
Michael Stefaniuc
6c54ad3dba shell32: Remove superfluous pointer casts. 2009-02-19 12:52:02 +01:00
Alexandre Julliard
1abff5afef shell32: Make some functions static. 2008-12-03 12:09:38 +01:00
Michael Stefaniuc
b7de266082 shell32: Remove superfluous casts; mostly of void pointers. 2008-11-06 11:09:51 +01:00
Zac Brown
7a42aba9da shell32: Add stub implementation for SHGetIconOverlayIndex[AW]. 2008-06-27 11:32:10 +02:00
Francois Gouget
44b52b128c Assorted spelling fixes. 2008-01-16 12:48:29 +01:00
Andrew Talbot
a77715c23b shell32: Exclude unused headers. 2007-05-21 12:31:29 +02:00
Hans Leidekker
bab2ddb77e shell32: Add a stub implementation for SHMapIDListToImageListIndexAsync. 2007-04-26 14:24:13 +02:00
Jonathan Ernst
360a3f9142 Update the address of the Free Software Foundation. 2006-05-23 14:11:13 +02:00
Martin Fuchs
7114f8c3bd shell32: Fix folder icon index when read from registry.
Change "DWORD dwNr" into "int icon_idx" at several places.
2006-01-11 12:33:24 +01:00
Ge van Geldorp
0991687d3c Load shortcut icon by resource id instead of by icon index. 2005-11-28 10:59:06 +01:00
Martin Fuchs
d3521da667 SHGetFileInfoW(): handle SHGFI_LINKOVERLAY and SHGFI_OVERLAYINDEX.
SHMapPIDLToSystemImageListIndex(): determine overlay flag for
PidlToSicIndex() and return -1 in error cases.
Read shell overlay icon settings from registry to allow icon
overrides.
2005-11-21 13:35:06 +00:00
Michael Jung
d699222eae Remove iconcache pre-initialization hack, it's not necessary any
more.
2005-10-27 12:08:44 +00:00
Ge van Geldorp
348449a486 Save a few megabytes of memory by loading the default icon only once
into the image lists.
2005-09-13 11:24:52 +00:00
Alexandre Julliard
20a1a203c6 Use a more portable scheme for storing the name of a critical
section.
2005-09-09 10:19:44 +00:00
Michael Jung
b0b4777422 Implemented 'My Documents' folder. 2005-08-26 10:05:34 +00:00
Francois Gouget
9769816b6e Fix winapi_check documentation warnings. 2005-06-17 20:58:33 +00:00
Marcus Meissner
96ebd31066 ExtractAssociatedIconA needs to allocate enough space to have EAIW
fill in lpIconPathW.
2005-06-17 09:52:33 +00:00
Michael Jung
82ed0ce999 Consider only the GIL_FORSHORTCUT flag in SIC_CompareEntries. 2005-05-20 18:58:35 +00:00
Ge van Geldorp
40cb98269b Overlay icons for .lnk files with a small arrow in the lower left
corner.
2005-05-13 17:48:33 +00:00
Huw Davies
861282bf28 Fix the icon resource ids (most were off by one).
Fix IExtractIcon_{GetIconLocation,Extract} to use -ve icon resource
ids and fix bugs relating to confusion between resource ids and the
system imagelist indicies.
Extend the system imagelist initialization hack to load both +ve and
-ve resource ids.
Add a printer icon (that'll be used by an upcoming printer folder
patch).
2005-04-11 13:04:41 +00:00
Hans Leidekker
c1236fd120 Stub implementations for SHUpdateImageA, SHHandleUpdateImage,
SHObjectProperties, SHGetNewLinkInfo{A,W}, SHStartNetConnectionDialog,
SHEmptyRecycleBin{A,W}, SHFormatDrive, SHQueryRecycleBin{A,W}.
'HeapAlloc can fail' fix for ExtractIconExA.
Implement ExtractAssociatedIconA -> W.
Correct prototype for SHObjectProperties.
Forward SHGetNewLinkInfo to SHGetNewLinkInfoA.
2005-01-03 20:26:06 +00:00
Alexandre Julliard
758b2887e9 Remove some no longer needed AW functions. 2004-12-17 19:20:07 +00:00
Jon Griffiths
f82272c92f Remove unneeded headers to reduce unneeded rebuilds. 2004-12-16 14:35:55 +00:00
Francois Gouget
486d020c1b Don't define COBJMACROS in objbase.h.
Update the Wine sources accordingly.
2004-10-07 03:06:48 +00:00