Mirror: Stack overflow in the weaver
reproduce: import uMMORPG from the asset store. (doesn’t happen when I import it from my hard drive)
bug:
Mirror.Weaver error: Exception :: The requested operation caused a stack overflow. at (wrapper managed-to-native) System.GC._SuppressFinalize(object) at System.GC.SuppressFinalize (System.Object obj) [0x0000e] in <d7ac571ca2d04b2f981d0d886fa067cf>:0 at System.IO.Stream.Close () [0x00007] in <d7ac571ca2d04b2f981d0d886fa067cf>:0 at System.IO.Stream.Dispose () [0x00000] in <d7ac571ca2d04b2f981d0d886fa067cf>:0 at Mono.Disposable1[T].Dispose () [0x00015] in <cdc17f3d0a5e40c9ac948b7bd952fda8>:0
at Mono.Cecil.PE.Image.Dispose () [0x00000] in <cdc17f3d0a5e40c9ac948b7bd952fda8>:0
at Mono.Cecil.ModuleDefinition.Dispose () [0x00008] in <cdc17f3d0a5e40c9ac948b7bd952fda8>:0
at Mono.Cecil.AssemblyDefinition.Dispose () [0x00008] in <cdc17f3d0a5e40c9ac948b7bd952fda8>:0
at Mirror.Weaver.Weaver.Weave (System.String assName, System.Collections.Generic.IEnumerable1[T] dependencies, Mono.Cecil.IAssemblyResolver assemblyResolver, System.String unityEngineDLLPath, System.String mirrorNetDLLPath, System.String outputDir) [0x002ce] in /ummorpg_as/Assets/uMMORPG/Plugins/Mirror/Editor/Weaver/Weaver.cs:633 at Mirror.Weaver.Weaver.WeaveAssemblies (System.Collections.Generic.IEnumerable1[T] assemblies, System.Collections.Generic.IEnumerable1[T] dependencies, Mono.Cecil.IAssemblyResolver assemblyResolver, System.String outputDir, System.String unityEngineDLLPath, System.String mirrorNetDLLPath) [0x00046] in /ummorpg_as/Assets/uMMORPG/Plugins/Mirror/Editor/Weaver/Weaver.cs:652 UnityEngine.Debug:LogError(Object) Mirror.Weaver.CompilationFinishedHook:HandleError(String) (at Assets/uMMORPG/Plugins/Mirror/Editor/Weaver/CompilationFinishedHook.cs:46) Mirror.Weaver.Log:Error(String) (at Assets/uMMORPG/Plugins/Mirror/Editor/Weaver/Program.cs:20) Mirror.Weaver.Weaver:WeaveAssemblies(IEnumerable1, IEnumerable1, IAssemblyResolver, String, String, String) (at Assets/uMMORPG/Plugins/Mirror/Editor/Weaver/Weaver.cs:660) Mirror.Weaver.Program:Process(String, String, String, String[], String[], Action1, Action1) (at Assets/uMMORPG/Plugins/Mirror/Editor/Weaver/Program.cs:35) Mirror.Weaver.CompilationFinishedHook:OnCompilationFinished(String, CompilerMessage[]) (at Assets/uMMORPG/Plugins/Mirror/Editor/Weaver/CompilationFinishedHook.cs:204) UnityEditor.Scripting.ScriptCompilation.EditorCompilationInterface:TickCompilationPipeline(EditorScriptCompilationOptions, BuildTargetGroup, BuildTarget)
Weaving failed for: Library/ScriptAssemblies/Assembly-CSharp.dll UnityEngine.Debug:LogError(Object) Mirror.Weaver.CompilationFinishedHook:OnCompilationFinished(String, CompilerMessage[]) (at Assets/uMMORPG/Plugins/Mirror/Editor/Weaver/CompilationFinishedHook.cs:212) UnityEditor.Scripting.ScriptCompilation.EditorCompilationInterface:TickCompilationPipeline(EditorScriptCompilationOptions, BuildTargetGroup, BuildTarget)
About this issue
- Original URL
- State: closed
- Created 5 years ago
- Comments: 21 (6 by maintainers)
Commits related to this issue
- fix: #791 stack overflow in the weaver Notice that cecil disposes the SymbolReader when it disposes the AssemblyDefinition (I checked the source). It appears that us disposing it ourself causes it to... — committed to paulpach/Mirror by paulpach 5 years ago
- fix: workaround for #791 — committed to MirrorNetworking/Mirror by miwarnec 5 years ago
- chore(release): 1.0.0 [skip ci] # 1.0.0 (2020-01-04) ### Bug Fixes * (again) Telepathy updated to latest version (Send SocketExceptions now disconnect the player too) ([46eddc0](https://github.com/... — committed to MirageNet/Mirage by semantic-release-bot 4 years ago
- chore(release): 1.0.0 [skip ci] # 1.0.0 (2020-01-04) ### Bug Fixes * (again) Telepathy updated to latest version (Send SocketExceptions now disconnect the player too) ([46eddc0](https://github.com/... — committed to MirageNet/Mirage by semantic-release-bot 4 years ago
- chore(release): 1.0.0 [skip ci] # 1.0.0 (2020-01-04) ### Bug Fixes * (again) Telepathy updated to latest version (Send SocketExceptions now disconnect the player too) ([46eddc0](https://github.com/... — committed to MirageNet/Mirage by semantic-release-bot 4 years ago
- chore(release): 1.0.0 [skip ci] # 1.0.0 (2020-01-04) ### Bug Fixes * (again) Telepathy updated to latest version (Send SocketExceptions now disconnect the player too) ([46eddc0](https://github.com/... — committed to MirageNet/Mirage by semantic-release-bot 4 years ago
- fix: workaround for #791 — committed to MirageNet/Mirage by miwarnec 5 years ago
- fix: #791 stack overflow in the weaver (#792) remove unnecessary manual dispose calls in weaver — committed to MirageNet/Mirage by paulpach 5 years ago
- fix: #791 corrected assembly paths passed to weaver (#803) * fixed incorrect assembly paths * Update CompilationFinishedHook.cs — committed to MirageNet/Mirage by deleted user 5 years ago
- chore(release): 1.0.0 [skip ci] # 1.0.0 (2020-01-04) ### Bug Fixes * (again) Telepathy updated to latest version (Send SocketExceptions now disconnect the player too) ([46eddc0](https://github.com/... — committed to MirageNet/Mirage by semantic-release-bot 4 years ago
the recent compilationfinished change includes these dependencies (and more) when weaving regularly:
when weaving first time after importing a new package, it includes none of the MonoBeleedingEdge, but those instead:
ignoring “NetStandard” folder dependencies fixes it.
how to reproduce: open ummorpg project. right click assets folder, export package. open an empty project. import asset package.
Not a fix, but a workaround: Close unity, delete the Library folder and reopen the project in unity