Better success check in stack trace parsing

This commit is contained in:
Tyrrrz
2020-10-23 23:00:29 +03:00
parent d0d024c427
commit 9557d386e2

View File

@@ -91,10 +91,12 @@ namespace CliFx.Internal
{
var matches = Pattern.Matches(stackTrace).Cast<Match>().ToArray();
// Ensure success
var lastMatch = matches.LastOrDefault();
if (lastMatch == null ||
lastMatch.Index + lastMatch.Length < stackTrace.Length)
// Ensure success (all lines should be parsed)
var isSuccess =
matches.Length ==
stackTrace.Split('\n', StringSplitOptions.RemoveEmptyEntries).Length;
if (!isSuccess)
{
throw new FormatException("Could not parse stack trace.");
}