dbghelp: SymSet/GetExtendedOption support a WINE only option.

Signed-off-by: Alistair Leslie-Hughes <leslie_alistair@hotmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
This commit is contained in:
Alistair Leslie-Hughes 2019-06-06 23:44:30 +00:00 committed by Alexandre Julliard
parent 3fed878725
commit fa5e5df71d
3 changed files with 29 additions and 4 deletions

View File

@ -65,6 +65,7 @@ WINE_DEFAULT_DEBUG_CHANNEL(dbghelp);
*/
unsigned dbghelp_options = SYMOPT_UNDNAME;
BOOL dbghelp_opt_native = FALSE;
static struct process* process_first /* = NULL */;
@ -457,8 +458,19 @@ DWORD WINAPI SymGetOptions(void)
*/
BOOL WINAPI SymSetExtendedOption(IMAGEHLP_EXTENDED_OPTIONS option, BOOL value)
{
FIXME("%d, %d\n", option, value);
return FALSE;
BOOL old = FALSE;
switch(option)
{
case SYMOPT_EX_WINE_NATIVE_MODULES:
old = dbghelp_opt_native;
dbghelp_opt_native = value;
break;
default:
FIXME("Unsupported option %d with value %d\n", option, value);
}
return old;
}
/******************************************************************
@ -467,7 +479,14 @@ BOOL WINAPI SymSetExtendedOption(IMAGEHLP_EXTENDED_OPTIONS option, BOOL value)
*/
BOOL WINAPI SymGetExtendedOption(IMAGEHLP_EXTENDED_OPTIONS option)
{
FIXME("%d\n", option);
switch(option)
{
case SYMOPT_EX_WINE_NATIVE_MODULES:
return dbghelp_opt_native;
default:
FIXME("Unsupported option %d\n", option);
}
return FALSE;
}

View File

@ -114,6 +114,8 @@ void* hash_table_iter_up(struct hash_table_iter* hti) DECLSPEC_HIDDEN;
extern unsigned dbghelp_options DECLSPEC_HIDDEN;
extern BOOL dbghelp_opt_native DECLSPEC_HIDDEN;
/* some more Wine extensions */
#define SYMOPT_WINE_WITH_NATIVE_MODULES 0x40000000

View File

@ -1427,7 +1427,11 @@ typedef struct _IMAGE_DEBUG_INFORMATION
typedef enum
{
SYMOPT_EX_DISABLEACCESSTIMEUPDATE,
SYMOPT_EX_MAX
SYMOPT_EX_MAX,
#ifdef __WINESRC__
SYMOPT_EX_WINE_NATIVE_MODULES = 1000,
#endif
} IMAGEHLP_EXTENDED_OPTIONS;
PIMAGE_DEBUG_INFORMATION WINAPI MapDebugInformation(HANDLE, PCSTR, PCSTR, ULONG);