Skip to content
This repository was archived by the owner on Jan 27, 2019. It is now read-only.

Force AssemblyResolver to find symbols from assemblies using exact matches. This setting precedes EnableFrameworkRedirect. This patch allows an assembly to target symbols that exist in multiple versions of another assembly, without crashing ConfuserEx.#559

Open
salcho wants to merge 1 commit intoyck1509:masterfrom
salcho:master

Conversation

@salcho
Copy link
Copy Markdown

@salcho salcho commented Nov 7, 2016

This patch fixes a bug we found in the ConfuserEngine class when trying to obfuscate an assembly that was previously merged with ilmerge/il-repack. If assemblies A and B reference different versions of a particular assembly (say, System.dll versions 2 and 4), multi-module assembly C (result from merging A and B) will contain both these references. Now, although AssemblyResolver holds a reference to both version 2 and 4 in the CachedAssemblies dict, it'll fail to find types in one of those depending on the order. Setting the FindExactMatch flag to true will force AssemblyResolver to look for types in the right assembly version.

…tches. This setting precedes EnableFrameworkRedirect. This patch allows an assembly to target symbols that exist in multiple versions of another assembly, without crashing ConfuserEx.
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants