Added patch to ensure dbghelp always checks for debug symbols in BINDIR.

This commit is contained in:
Sebastian Lackner 2014-11-15 20:24:21 +01:00
parent 87684b59a7
commit 54b4500a85
4 changed files with 62 additions and 1 deletions

4
debian/changelog vendored
View File

@ -1,3 +1,7 @@
wine-compholio (1.7.32) UNRELEASED; urgency=low
* Added patch to ensure dbghelp always checks for debug symbols in BINDIR.
-- Sebastian Lackner <sebastian@fds-team.de> Sat, 15 Nov 2014 20:21:53 +0100
wine-compholio (1.7.31) unstable; urgency=low
* Improve output of 'wine --patches' and simplify syntax of definition files.
* Update kernel32-GetSystemTimes patches.

View File

@ -176,7 +176,7 @@ def read_definition(revision, filename, name_to_id):
try:
with open(os.devnull, 'w') as devnull:
content = subprocess.check_output(["git", "show", filename], stderr=devnull)
except CalledProcessError:
except subprocess.CalledProcessError:
raise IOError("Failed to load %s" % filename)
depends = set()

View File

@ -34,6 +34,7 @@ PATCHLIST := \
d3dx9_36-Optimize_Inplace.ok \
d3dx9_36-Texture_Align.ok \
d3dx9_36-UpdateSkinnedMesh.ok \
dbghelp-Debug_Symbols.ok \
dbghelp-KdHelp.ok \
dsound-Fast_Mixer.ok \
fonts-Missing_Fonts.ok \
@ -399,6 +400,18 @@ d3dx9_36-UpdateSkinnedMesh.ok:
echo '+ { "Christian Costa", "d3dx9_36: Implement ID3DXSkinInfoImpl_UpdateSkinnedMesh.", 1 },'; \
) > d3dx9_36-UpdateSkinnedMesh.ok
# Patchset dbghelp-Debug_Symbols
# |
# | Modified files:
# | * dlls/dbghelp/Makefile.in, dlls/dbghelp/elf_module.c
# |
.INTERMEDIATE: dbghelp-Debug_Symbols.ok
dbghelp-Debug_Symbols.ok:
$(call APPLY_FILE,dbghelp-Debug_Symbols/0001-dbghelp-Always-check-for-debug-symbols-in-BINDIR.patch)
@( \
echo '+ { "Sebastian Lackner", "dbghelp: Always check for debug symbols in BINDIR.", 1 },'; \
) > dbghelp-Debug_Symbols.ok
# Patchset dbghelp-KdHelp
# |
# | This patchset fixes the following Wine bugs:

View File

@ -0,0 +1,44 @@
From 2f02387d53e803b7347d70ef8199bdd5c0d08732 Mon Sep 17 00:00:00 2001
From: Sebastian Lackner <sebastian@fds-team.de>
Date: Mon, 6 Oct 2014 05:06:06 +0200
Subject: dbghelp: Always check for debug symbols in BINDIR.
---
dlls/dbghelp/Makefile.in | 2 +-
dlls/dbghelp/elf_module.c | 8 +++++---
2 files changed, 6 insertions(+), 4 deletions(-)
diff --git a/dlls/dbghelp/Makefile.in b/dlls/dbghelp/Makefile.in
index e5d40b1..cfb5b3e 100644
--- a/dlls/dbghelp/Makefile.in
+++ b/dlls/dbghelp/Makefile.in
@@ -1,6 +1,6 @@
MODULE = dbghelp.dll
IMPORTLIB = dbghelp
-EXTRADEFS = -D_IMAGEHLP_SOURCE_ -DDLLPREFIX='"$(DLLPREFIX)"'
+EXTRADEFS = -D_IMAGEHLP_SOURCE_ -DDLLPREFIX='"$(DLLPREFIX)"' -DBINDIR="\"${bindir}\""
IMPORTS = psapi
DELAYIMPORTS = version
EXTRALIBS = $(Z_LIBS)
diff --git a/dlls/dbghelp/elf_module.c b/dlls/dbghelp/elf_module.c
index b176143..8e22265 100644
--- a/dlls/dbghelp/elf_module.c
+++ b/dlls/dbghelp/elf_module.c
@@ -1486,9 +1486,11 @@ static BOOL elf_search_and_load_file(struct process* pcs, const WCHAR* filename,
if (!ret && !strchrW(filename, '/'))
{
ret = elf_load_file_from_path(pcs, filename, load_offset, dyn_addr,
- getenv("PATH"), elf_info) ||
- elf_load_file_from_path(pcs, filename, load_offset, dyn_addr,
- getenv("LD_LIBRARY_PATH"), elf_info);
+ getenv("PATH"), elf_info);
+ if (!ret) ret = elf_load_file_from_path(pcs, filename, load_offset, dyn_addr,
+ getenv("LD_LIBRARY_PATH"), elf_info);
+ if (!ret) ret = elf_load_file_from_path(pcs, filename, load_offset, dyn_addr,
+ BINDIR, elf_info);
if (!ret) ret = elf_load_file_from_dll_path(pcs, filename,
load_offset, dyn_addr, elf_info);
}
--
2.1.2