knah / VRCMods

A collection of various VRChat mods aimed at improving user experience or fixing issues
GNU General Public License v3.0
245 stars 137 forks source link

Convert (nearly) all usages of MelonLogger to MelonLogger.Instance #227

Open ddakebono opened 2 years ago

ddakebono commented 2 years ago

Converted MelonLogger usage to MelonLogger.Instance in all places it could be used, as using MelonLogger causes potential issues when the GetMelonFromStackTrace function is called.

This issue has been corrected with TotallyWholesome and emmVRC by emmVRC converting their usage of MelonLogger, it appears that any mods that are using the non Instance loggers can potential cause issues if the stack trace gets complex enough. The actual issue lies within Mono itself, and attempts to work around it haven't been successful, converting to Instance appears to be the simplest way to get everything working.

The issues usually manifest as either the game hanging, or the game fully crashing and resulting in a dump, both results show different parts of the Mono stack trace unwinder failing.

I tried to match formatting where applicable.

I've also added the reference to 0Harmony.dll to the Directory.Build.Props as it was missing.