reactos/modules/rostests/apitests/shell32/testlist.c
Bișoc George 8ec05f5fa1 [SHELL32] Do not return -1 if a file is not valid or not found - ExtractIconEx() (#2113)
ExtractIconEx() returns the number of successfully extracted icons from a file. The routine may return 0 in case no icons could be extracted but it could also return 0 if the file is not a valid PE image file or the file couldn't be found.

PrivateExtractIcons and the internal USER32 routine, ICO_ExtractIconExW(), return -1 in such scenarios. The behaviour is correct however we do not want that ExtractIconEx() returns -1 as well as it doesn't comply with the general documentation. In such cases, simply return 0 as no successful icons have been extracted due to related file failures.

CORE-16535
2019-12-12 08:24:20 +09:00

53 lines
1.8 KiB
C

#define __ROS_LONG64__
#define STANDALONE
#include <wine/test.h>
extern void func_AddCommas(void);
extern void func_Control_RunDLLW(void);
extern void func_CFSFolder(void);
extern void func_CIDLData(void);
extern void func_CMyComputer(void);
extern void func_CShellDesktop(void);
extern void func_CShellLink(void);
extern void func_CUserNotification(void);
extern void func_DragDrop(void);
extern void func_ExtractIconEx(void);
extern void func_IShellFolderViewCB(void);
extern void func_menu(void);
extern void func_OpenAs_RunDLL(void);
extern void func_PathResolve(void);
extern void func_SHCreateDataObject(void);
extern void func_SHCreateFileExtractIconW(void);
extern void func_ShellExecCmdLine(void);
extern void func_ShellExecuteEx(void);
extern void func_ShellState(void);
extern void func_SHLimitInputEdit(void);
extern void func_SHParseDisplayName(void);
const struct test winetest_testlist[] =
{
{ "AddCommas", func_AddCommas },
{ "Control_RunDLLW", func_Control_RunDLLW },
{ "CFSFolder", func_CFSFolder },
{ "CIDLData", func_CIDLData },
{ "CMyComputer", func_CMyComputer },
{ "CShellDesktop", func_CShellDesktop },
{ "CShellLink", func_CShellLink },
{ "CUserNotification", func_CUserNotification },
{ "DragDrop", func_DragDrop },
{ "ExtractIconEx", func_ExtractIconEx },
{ "IShellFolderViewCB", func_IShellFolderViewCB },
{ "menu", func_menu },
{ "OpenAs_RunDLL", func_OpenAs_RunDLL },
{ "PathResolve", func_PathResolve },
{ "SHCreateDataObject", func_SHCreateDataObject },
{ "SHCreateFileExtractIconW", func_SHCreateFileExtractIconW },
{ "ShellExecCmdLine", func_ShellExecCmdLine },
{ "ShellExecuteEx", func_ShellExecuteEx },
{ "ShellState", func_ShellState },
{ "SHLimitInputEdit", func_SHLimitInputEdit },
{ "SHParseDisplayName", func_SHParseDisplayName },
{ 0, 0 }
};