static void RewriteAssembly (string assemblyLocation, Dictionary<string, string> resourcesStrings, CmdOptions options)
{
- Stream pdbSymbols = null;
-
- var debugSymbols = Path.ChangeExtension (assemblyLocation, "pdb");
- if (File.Exists (debugSymbols))
- pdbSymbols = File.Open (debugSymbols, FileMode.Open, FileAccess.ReadWrite);
-
var readerParameters = new ReaderParameters {
+ ReadSymbols = true,
ReadWrite = true,
+ SymbolReaderProvider = new DefaultSymbolReaderProvider (false)
};
- if (pdbSymbols != null) {
- readerParameters.ReadSymbols = true;
- readerParameters.SymbolReaderProvider = new PortablePdbReaderProvider ();
- readerParameters.SymbolStream = pdbSymbols;
- }
-
using (var assembly = AssemblyDefinition.ReadAssembly (assemblyLocation, readerParameters)) {
foreach (var module in assembly.Modules) {
foreach (var type in module.GetTypes ()) {
}
}
- var writerParameters = new WriterParameters ();
-
- if (pdbSymbols != null) {
- writerParameters.WriteSymbols = true;
- writerParameters.SymbolStream = pdbSymbols;
- writerParameters.SymbolWriterProvider = new PortablePdbWriterProvider ();
- pdbSymbols.Seek (0, SeekOrigin.Begin);
- }
+ var writerParameters = new WriterParameters () {
+ WriteSymbols = assembly.MainModule.HasSymbols
+ };
assembly.Write (writerParameters);
}
-
- pdbSymbols?.Dispose ();
}
static bool LoadGetResourceStrings (Dictionary<string, string> resourcesStrings, CmdOptions options)