Eric Pouech : dbghelp: MapDebugInformation and UnmapDebugInformation are not available on 64 bit architectures.
Alexandre Julliard
julliard at winehq.org
Wed Oct 6 15:51:37 CDT 2021
Module: wine
Branch: master
Commit: e1132a6e5aeb5d0f15ebe96c6e898adfc0f1528e
URL: https://source.winehq.org/git/wine.git/?a=commit;h=e1132a6e5aeb5d0f15ebe96c6e898adfc0f1528e
Author: Eric Pouech <eric.pouech at gmail.com>
Date: Wed Oct 6 10:02:18 2021 +0200
dbghelp: MapDebugInformation and UnmapDebugInformation are not available on 64 bit architectures.
Signed-off-by: Eric Pouech <eric.pouech at gmail.com>
Signed-off-by: Alexandre Julliard <julliard at winehq.org>
---
dlls/dbghelp/dbghelp.spec | 4 ++--
dlls/dbghelp/image.c | 6 ++++--
include/dbghelp.h | 9 +++++----
include/imagehlp.h | 17 ++++++++++-------
4 files changed, 21 insertions(+), 15 deletions(-)
diff --git a/dlls/dbghelp/dbghelp.spec b/dlls/dbghelp/dbghelp.spec
index 39820a98566..9f719bd6a6e 100644
--- a/dlls/dbghelp/dbghelp.spec
+++ b/dlls/dbghelp/dbghelp.spec
@@ -25,7 +25,7 @@
@ stdcall ImagehlpApiVersion()
@ stdcall ImagehlpApiVersionEx(ptr)
@ stdcall MakeSureDirectoryPathExists(str)
-@ stdcall MapDebugInformation(long str str long)
+@ stdcall -arch=win32 MapDebugInformation(long str str long)
@ stdcall MiniDumpReadDumpStream(ptr long ptr ptr ptr)
@ stdcall MiniDumpWriteDump(ptr long ptr long ptr ptr ptr)
@ stdcall SearchTreeForFile(str str ptr)
@@ -187,7 +187,7 @@
@ stdcall SymUnloadModule64(long int64)
@ stdcall UnDecorateSymbolName(str ptr long long)
@ stdcall UnDecorateSymbolNameW(wstr ptr long long)
-@ stdcall UnmapDebugInformation(ptr)
+@ stdcall -arch=win32 UnmapDebugInformation(ptr)
@ stdcall WinDbgExtensionDllInit(ptr long long)
#@ stub block
#@ stub chksym
diff --git a/dlls/dbghelp/image.c b/dlls/dbghelp/image.c
index 59622180dc7..7de0a6e23c8 100644
--- a/dlls/dbghelp/image.c
+++ b/dlls/dbghelp/image.c
@@ -26,8 +26,6 @@
#include "winternl.h"
#include "wine/debug.h"
-WINE_DEFAULT_DEBUG_CHANNEL(dbghelp);
-
/***********************************************************************
* GetTimestampForLoadedLibrary (DBGHELP.@)
*/
@@ -37,6 +35,9 @@ DWORD WINAPI GetTimestampForLoadedLibrary(HMODULE Module)
return (nth) ? nth->FileHeader.TimeDateStamp : 0;
}
+#ifndef _WIN64
+WINE_DEFAULT_DEBUG_CHANNEL(dbghelp);
+
/***********************************************************************
* MapDebugInformation (DBGHELP.@)
*/
@@ -57,3 +58,4 @@ BOOL WINAPI UnmapDebugInformation(PIMAGE_DEBUG_INFORMATION DebugInfo)
SetLastError(ERROR_CALL_NOT_IMPLEMENTED);
return FALSE;
}
+#endif
diff --git a/include/dbghelp.h b/include/dbghelp.h
index 75dfd76b327..c4770553809 100644
--- a/include/dbghelp.h
+++ b/include/dbghelp.h
@@ -1408,6 +1408,7 @@ typedef struct API_VERSION
LPAPI_VERSION WINAPI ImagehlpApiVersion(void);
LPAPI_VERSION WINAPI ImagehlpApiVersionEx(LPAPI_VERSION);
+#ifndef _WIN64
typedef struct _IMAGE_DEBUG_INFORMATION
{
LIST_ENTRY List;
@@ -1443,6 +1444,10 @@ typedef struct _IMAGE_DEBUG_INFORMATION
DWORD Reserved[ 2 ];
} IMAGE_DEBUG_INFORMATION, *PIMAGE_DEBUG_INFORMATION;
+PIMAGE_DEBUG_INFORMATION WINAPI MapDebugInformation(HANDLE, PCSTR, PCSTR, ULONG);
+BOOL WINAPI UnmapDebugInformation(PIMAGE_DEBUG_INFORMATION);
+#endif
+
typedef enum
{
SYMOPT_EX_DISABLEACCESSTIMEUPDATE,
@@ -1453,10 +1458,6 @@ typedef enum
#endif
} IMAGEHLP_EXTENDED_OPTIONS;
-PIMAGE_DEBUG_INFORMATION WINAPI MapDebugInformation(HANDLE, PCSTR, PCSTR, ULONG);
-
-BOOL WINAPI UnmapDebugInformation(PIMAGE_DEBUG_INFORMATION);
-
DWORD WINAPI SymGetOptions(void);
DWORD WINAPI SymSetOptions(DWORD);
diff --git a/include/imagehlp.h b/include/imagehlp.h
index 5ee978a3d4c..72936e4353e 100644
--- a/include/imagehlp.h
+++ b/include/imagehlp.h
@@ -239,6 +239,7 @@ typedef struct _API_VERSION {
USHORT Reserved;
} API_VERSION, *LPAPI_VERSION;
+#ifndef _WIN64
typedef struct _IMAGE_DEBUG_INFORMATION {
LIST_ENTRY List;
DWORD Size;
@@ -282,6 +283,15 @@ typedef struct _IMAGE_DEBUG_INFORMATION {
DWORD Reserved[3];
} IMAGE_DEBUG_INFORMATION, *PIMAGE_DEBUG_INFORMATION;
+PIMAGE_DEBUG_INFORMATION WINAPI MapDebugInformation(
+ HANDLE FileHandle, PCSTR FileName,
+ PCSTR SymbolPath, ULONG ImageBase
+);
+BOOL WINAPI UnmapDebugInformation(
+ PIMAGE_DEBUG_INFORMATION DebugInfo
+);
+#endif
+
typedef struct _ADDRESS {
DWORD Offset;
WORD Segment;
@@ -958,10 +968,6 @@ BOOL WINAPI MapAndLoad(
PCSTR ImageName, PCSTR DllPath, PLOADED_IMAGE LoadedImage,
BOOL DotDll, BOOL ReadOnly
);
-PIMAGE_DEBUG_INFORMATION WINAPI MapDebugInformation(
- HANDLE FileHandle, PCSTR FileName,
- PCSTR SymbolPath, ULONG ImageBase
-);
DWORD WINAPI MapFileAndCheckSumA(
PCSTR Filename, PDWORD HeaderSum, PDWORD CheckSum
);
@@ -1385,9 +1391,6 @@ DWORD WINAPI UnDecorateSymbolNameW(
BOOL WINAPI UnMapAndLoad(
PLOADED_IMAGE LoadedImage
);
-BOOL WINAPI UnmapDebugInformation(
- PIMAGE_DEBUG_INFORMATION DebugInfo
-);
BOOL WINAPI UpdateDebugInfoFile(
PCSTR ImageFileName, PCSTR SymbolPath,
PSTR DebugFilePath, PIMAGE_NT_HEADERS32 NtHeaders
More information about the wine-cvs
mailing list