fix assembly rewriter stripping assembly resources
This commit is contained in:
@@ -19,10 +19,10 @@ internal static class AssemblyRewriter
|
|||||||
{
|
{
|
||||||
_defaultResolver = new();
|
_defaultResolver = new();
|
||||||
_zipResolver = new(_defaultResolver);
|
_zipResolver = new(_defaultResolver);
|
||||||
_defaultResolver.AddSearchDirectory(Directory.GetCurrentDirectory());
|
_defaultResolver.AddSearchDirectory(AppContext.BaseDirectory);
|
||||||
_defaultResolver.AddSearchDirectory(Path.Combine(Directory.GetCurrentDirectory(), "DedicatedServer64"));
|
_defaultResolver.AddSearchDirectory(Path.Combine(Directory.GetCurrentDirectory(), "DedicatedServer64"));
|
||||||
#if !DEBUG
|
#if !DEBUG
|
||||||
_defaultResolver.AddSearchDirectory(Path.Join(Directory.GetCurrentDirectory(), "torch64"));
|
_defaultResolver.AddSearchDirectory(Path.Join(AppContext.BaseDirectory, "torch64"));
|
||||||
#endif
|
#endif
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -63,17 +63,17 @@ internal static class AssemblyRewriter
|
|||||||
|
|
||||||
private static Assembly ProcessInternal(Stream inputStream, IAssemblyResolver resolver)
|
private static Assembly ProcessInternal(Stream inputStream, IAssemblyResolver resolver)
|
||||||
{
|
{
|
||||||
using var module = ModuleDefinition.ReadModule(inputStream, new()
|
using var assembly = AssemblyDefinition.ReadAssembly(inputStream, new()
|
||||||
{
|
{
|
||||||
AssemblyResolver = resolver
|
AssemblyResolver = resolver
|
||||||
});
|
});
|
||||||
foreach (var fieldDefinition in FindAllToRewrite(module))
|
foreach (var fieldDefinition in FindAllToRewrite(assembly.MainModule))
|
||||||
{
|
{
|
||||||
fieldDefinition.IsInitOnly = false;
|
fieldDefinition.IsInitOnly = false;
|
||||||
}
|
}
|
||||||
|
|
||||||
using var memStream = new MemoryStream();
|
using var memStream = new MemoryStream();
|
||||||
module.Assembly.Write(memStream);
|
assembly.Write(memStream);
|
||||||
return Assembly.Load(memStream.ToArray());
|
return Assembly.Load(memStream.ToArray());
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Reference in New Issue
Block a user