prevent weird null reference exception in error-handling
This commit is contained in:
parent
94d41cd67a
commit
5e16ed0eea
|
@ -1,6 +1,10 @@
|
|||
← [README](README.md)
|
||||
|
||||
# Release notes
|
||||
## Upcoming release
|
||||
* For mod authors:
|
||||
* Fixed rare `NullReferenceException` in SMAPI's error-handling.
|
||||
|
||||
## 3.12.2
|
||||
Released 05 August 2021 for Stardew Valley 1.5.4 or later.
|
||||
|
||||
|
|
|
@ -12,6 +12,8 @@ namespace StardewModdingAPI.Internal
|
|||
/// <summary>Get a string representation of an exception suitable for writing to the error log.</summary>
|
||||
/// <param name="exception">The error to summarize.</param>
|
||||
public static string GetLogSummary(this Exception exception)
|
||||
{
|
||||
try
|
||||
{
|
||||
switch (exception)
|
||||
{
|
||||
|
@ -25,7 +27,12 @@ namespace StardewModdingAPI.Internal
|
|||
return summary;
|
||||
|
||||
default:
|
||||
return exception.ToString();
|
||||
return exception?.ToString() ?? $"<null exception>\n{Environment.StackTrace}";
|
||||
}
|
||||
}
|
||||
catch (Exception ex)
|
||||
{
|
||||
throw new InvalidOperationException($"Failed handling {exception?.GetType().FullName} (original message: {exception?.Message})", ex);
|
||||
}
|
||||
}
|
||||
|
||||
|
|
Loading…
Reference in New Issue