Skip to content

Conversation

@DrChat
Copy link

@DrChat DrChat commented Sep 1, 2020

This PR addresses #3.
Note that we still don't handle more advanced forms of _NT_SYMBOL_PATH - only the most basic.
This set of changes also does not handle compressed symbols, or alternate symbol server layouts (indicated by the presence of index2.txt).

This does however break the dependency on symchk.exe, allowing this tool to be used on Linux machines the same as Windows.
In addition, a design of using a thread pool is certainly more efficient than spawning multiple copies of symchk.exe.

More to potentially come as features are needed.

@DrChat DrChat force-pushed the fetch_async branch 2 times, most recently from ab91ba1 to f6804fa Compare January 15, 2021 03:20
@gamozolabs
Copy link
Owner

This looks good. I won't want to merge it in yet until it supported compressed PDBs as that seems to be the primary format at least from MSDL symbol store (unless something has changed).

I've done something like this before, and historically I had case sensitivity issues. I can't remember if it was on the download side, the storage side, or the symbol matching side. But something to be aware of. Looks goo otherwise.

@DrChat
Copy link
Author

DrChat commented Apr 18, 2021

👍 - It doesn't appear that Microsoft offers compressed PDBs (oddly enough).
As far as I'm aware, compressed PDBs are offered with the pdb extension changed to a pd_ extension, and on Microsoft servers that 404's.

Do you have a good test case for compressed PDBs?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants