Closed mstange closed 3 years ago
For some reasons, these symbols have function: false
set on them.
[src/lib.rs:291] symbol.parse() = Ok(
Public(
PublicSymbol {
code: false,
function: false,
managed: false,
msil: false,
offset: PdbInternalSectionOffset {
section: 0x8,
offset: 0x208b90,
},
name: RawString("KiSystemServiceCopyEnd"),
},
),
)
I'm not sure what that means. Maybe we can just include all public symbols, regardless of whether they're marked as function symbols.
@jrmuizel
These symbols probably come from code written in assembly. It seems reasonable to include them.
Fixed in 0.7.0. I ended up only including non-function public symbols which are in executable sections.
In this PDB file, pdb-addr2line does not seem to find the functions
KiSystemServiceCopyEnd
orKiSystemServiceExit
. According to thepdb_symbols
example in the pdb repo, these two functions are global symbols in section 8, with section internal offsets208b90
and208bc0
.