On 5/6/19 2:16 am, Alexandre Julliard wrote:
Alistair Leslie-Hughes leslie_alistair@hotmail.com writes:
Signed-off-by: Alistair Leslie-Hughes leslie_alistair@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.