diff options
author | Jesse Plamondon-Willard <Pathoschild@users.noreply.github.com> | 2018-12-31 14:10:25 -0500 |
---|---|---|
committer | Jesse Plamondon-Willard <Pathoschild@users.noreply.github.com> | 2019-02-07 22:36:49 -0500 |
commit | e064be0c7b3440b31b616cec8c43946097fdad7d (patch) | |
tree | 401dadfd9154e4bdead5b6bc8f02caa3a4d0a9a3 /src/SMAPI | |
parent | 1db640d29557c8574e6442ad9824988358929e24 (diff) | |
download | SMAPI-e064be0c7b3440b31b616cec8c43946097fdad7d.tar.gz SMAPI-e064be0c7b3440b31b616cec8c43946097fdad7d.tar.bz2 SMAPI-e064be0c7b3440b31b616cec8c43946097fdad7d.zip |
fix 'unknown mod' deprecation warnings showing wrong stack trace
Diffstat (limited to 'src/SMAPI')
-rw-r--r-- | src/SMAPI/Framework/DeprecationManager.cs | 4 | ||||
-rw-r--r-- | src/SMAPI/Framework/DeprecationWarning.cs | 7 |
2 files changed, 8 insertions, 3 deletions
diff --git a/src/SMAPI/Framework/DeprecationManager.cs b/src/SMAPI/Framework/DeprecationManager.cs index 76c2f616..8d836c8c 100644 --- a/src/SMAPI/Framework/DeprecationManager.cs +++ b/src/SMAPI/Framework/DeprecationManager.cs @@ -62,7 +62,7 @@ namespace StardewModdingAPI.Framework return; // queue warning - this.QueuedWarnings.Add(new DeprecationWarning(source, nounPhrase, version, severity)); + this.QueuedWarnings.Add(new DeprecationWarning(source, nounPhrase, version, severity, Environment.StackTrace)); } /// <summary>Print any queued messages.</summary> @@ -79,7 +79,7 @@ namespace StardewModdingAPI.Framework : $"{warning.ModName ?? "An unknown mod"} uses deprecated code ({warning.NounPhrase} is deprecated since SMAPI {warning.Version})."; #endif if (warning.ModName == null) - message += $"{Environment.NewLine}{Environment.StackTrace}"; + message += $"{Environment.NewLine}{warning.StackTrace}"; // log message switch (warning.Level) diff --git a/src/SMAPI/Framework/DeprecationWarning.cs b/src/SMAPI/Framework/DeprecationWarning.cs index 25415012..5201b06c 100644 --- a/src/SMAPI/Framework/DeprecationWarning.cs +++ b/src/SMAPI/Framework/DeprecationWarning.cs @@ -18,6 +18,9 @@ namespace StardewModdingAPI.Framework /// <summary>The deprecation level for the affected code.</summary> public DeprecationLevel Level { get; } + /// <summary>The stack trace when the deprecation warning was raised.</summary> + public string StackTrace { get; } + /********* ** Public methods @@ -27,12 +30,14 @@ namespace StardewModdingAPI.Framework /// <param name="nounPhrase">A noun phrase describing what is deprecated.</param> /// <param name="version">The SMAPI version which deprecated it.</param> /// <param name="level">The deprecation level for the affected code.</param> - public DeprecationWarning(string modName, string nounPhrase, string version, DeprecationLevel level) + /// <param name="stackTrace">The stack trace when the deprecation warning was raised.</param> + public DeprecationWarning(string modName, string nounPhrase, string version, DeprecationLevel level, string stackTrace) { this.ModName = modName; this.NounPhrase = nounPhrase; this.Version = version; this.Level = level; + this.StackTrace = stackTrace; } } } |