mirror of
https://github.com/reactos/reactos.git
synced 2025-01-01 03:54:02 +00:00
[WINESYNC] dbghelp: Support Windows paths in elf_locate_debug_link.
Signed-off-by: Jacek Caban <jacek@codeweavers.com> Signed-off-by: Alexandre Julliard <julliard@winehq.org> wine commit id e1b28a9c988ef0ff49d7254fd7ba05316f1c9b98 by Jacek Caban <jacek@codeweavers.com>
This commit is contained in:
parent
9a74d137ed
commit
f71124fa11
2 changed files with 8 additions and 5 deletions
|
@ -1010,23 +1010,26 @@ static BOOL elf_locate_debug_link(struct image_file_map* fmap, const char* filen
|
|||
static const WCHAR globalDebugDirW[] = {'/','u','s','r','/','l','i','b','/','d','e','b','u','g','/'};
|
||||
static const WCHAR dotDebugW[] = {'.','d','e','b','u','g','/'};
|
||||
const size_t globalDebugDirLen = ARRAY_SIZE(globalDebugDirW);
|
||||
size_t filename_len;
|
||||
size_t filename_len, path_len;
|
||||
WCHAR* p = NULL;
|
||||
WCHAR* slash;
|
||||
WCHAR* slash2;
|
||||
struct image_file_map* fmap_link = NULL;
|
||||
|
||||
fmap_link = HeapAlloc(GetProcessHeap(), 0, sizeof(*fmap_link));
|
||||
if (!fmap_link) return FALSE;
|
||||
|
||||
filename_len = MultiByteToWideChar(CP_UNIXCP, 0, filename, -1, NULL, 0);
|
||||
path_len = strlenW(loaded_file);
|
||||
p = HeapAlloc(GetProcessHeap(), 0,
|
||||
(globalDebugDirLen + strlenW(loaded_file) + 6 + 1 + filename_len + 1) * sizeof(WCHAR));
|
||||
(globalDebugDirLen + path_len + 6 + 1 + filename_len + 1) * sizeof(WCHAR));
|
||||
if (!p) goto found;
|
||||
|
||||
/* we prebuild the string with "execdir" */
|
||||
strcpyW(p, loaded_file);
|
||||
slash = strrchrW(p, '/');
|
||||
if (slash == NULL) slash = p; else slash++;
|
||||
slash = p;
|
||||
if ((slash2 = strrchrW(slash, '/'))) slash = slash2 + 1;
|
||||
if ((slash2 = strrchrW(slash, '\\'))) slash = slash2 + 1;
|
||||
|
||||
/* testing execdir/filename */
|
||||
MultiByteToWideChar(CP_UNIXCP, 0, filename, -1, slash, filename_len);
|
||||
|
|
|
@ -4,4 +4,4 @@ files:
|
|||
include/dbghelp.h: sdk/include/psdk/dbghelp.h
|
||||
include/wine/mscvpdb.h: sdk/include/reactos/wine/mscvpdb.h
|
||||
tags:
|
||||
wine: a5a6b0dcb65d8e3576e34d350c80f4789dcfdb7a
|
||||
wine: e1b28a9c988ef0ff49d7254fd7ba05316f1c9b98
|
||||
|
|
Loading…
Reference in a new issue