[PATCH 1/3] dbghelp: Reimplement SymGetLineFromAddrW64
Alistair Leslie-Hughes
leslie_alistair at hotmail.com
Tue Jun 4 19:43:35 CDT 2019
On 5/6/19 2:16 am, Alexandre Julliard wrote:
> Alistair Leslie-Hughes <leslie_alistair at hotmail.com> writes:
>
>> Signed-off-by: Alistair Leslie-Hughes <leslie_alistair at hotmail.com>
>> ---
>> dlls/dbghelp/symbol.c | 75 +++++++++++++++++++++++++++++++------------
>> 1 file changed, 54 insertions(+), 21 deletions(-)
> Why is that better?
>
Its not. The title should be something "Dont call SymGetLineFromAddr64
from SymGetLineFromAddrW64"
or the like.
My end goal is to fix
https://bugs.winehq.org/show_bug.cgi?id=34687
My first attempt, Huw suggested to "For SymGetLineFromAddr64() calls
SymGetLineFromAddrW64()"
https://www.winehq.org/pipermail/wine-devel/2017-February/116170.html
My next attempt Zebediah pointed out that I would have a double
conversion when using SymGetLineFromAddr.
These three patches address both concerns.
During my investigation, I found that dbghelp is using a flag value for
working out if winedbg is the one actually
calling it. However, this value is actually now a valid option (may not
of been at the time it was written).
So my current plan is
1. Have all SymGetLineFromAddr* call SymGetLineFromAddrW64
2. Implement/Stub functions SymSetExtendedOption/SymGetExtendedOption
(available windows 10)
3. Add an internal value into SymSetExtendedOption for winedbg to use
(which doesn't conflict with current values).
4. Update dbghelp/winedbg to use the internal value.
5. Return windows path when winedbg isn't in use.
Hope this makes things clearer.
Regards
Alistair.
More information about the wine-devel
mailing list