DynamoRIO / DynamoRIO/drmemory
symbol availability check not working with SymGetSymbolFileW
- Dominant language
- C
- Stars
- 2.7k
- Forks
- 290
- PR merge metrics
- No merged PRs in 30d
Description
_From [bruen...@google.com](https://code.google.com/u/109494838902877177630/) on October 29, 2013 17:42:20_
I was running app_suite_tests.exe on my win8.1 VM, copied from a different
machine where I have a compiler installed. I didn't copy the pdb at first.
A bunch of unaddrs and uninits show up in static string routines.
After copying over the pdb, they were still there -- b/c the symcache
didn't correctly realize I had the pdb now, even though the error
callstacks clearly have the symbols.
Xref issue #973 which added symbol presence info to the symcache file.
"module C:\derek\app_suite_tests.exe still doesn't have debug info"
The problem is that SymGetSymbolFileW fails with lasterror == 2 == ERROR_FILE_NOT_FOUND
Calling the slower drsym_get_module_debug_kind() in module_has_debug_info() does
the right thing, and:
module now has debug info: app_suite_tests.exe symbol cache is stale
We need to re-evaluate the use of SymGetSymbolFileW, unless we can figure
out how to make it work properly.
_Original issue: http://code.google.com/p/drmemory/issues/detail?id=1365_
Contributor guide
Assessment
This issue has not been assessed yet.