summaryrefslogtreecommitdiff
path: root/src/vm/i386
diff options
context:
space:
mode:
authorRahul Kumar <rahku@microsoft.com>2017-04-18 11:33:59 -0700
committerGitHub <noreply@github.com>2017-04-18 11:33:59 -0700
commit7ae6fbdc5a83cceb3a2cbd3bda204a95bcea1f0e (patch)
tree7fc01decc178c7ca15c711e3817ead1fafdb3235 /src/vm/i386
parent98a41f0a8711e0d0f3cb0d56adc6f8d0c36c11d2 (diff)
downloadcoreclr-7ae6fbdc5a83cceb3a2cbd3bda204a95bcea1f0e.tar.gz
coreclr-7ae6fbdc5a83cceb3a2cbd3bda204a95bcea1f0e.tar.bz2
coreclr-7ae6fbdc5a83cceb3a2cbd3bda204a95bcea1f0e.zip
fail fast on exceptions that indicate corrupted process state (#10957)
Diffstat (limited to 'src/vm/i386')
-rw-r--r--src/vm/i386/excepx86.cpp5
1 files changed, 5 insertions, 0 deletions
diff --git a/src/vm/i386/excepx86.cpp b/src/vm/i386/excepx86.cpp
index 9680e8745d..8c65db75a7 100644
--- a/src/vm/i386/excepx86.cpp
+++ b/src/vm/i386/excepx86.cpp
@@ -1088,6 +1088,11 @@ CPFH_RealFirstPassHandler( // ExceptionContinueSearch, etc.
// of the active exception.
CEHelper::SetupCorruptionSeverityForActiveException(bRethrownException, bNestedException,
CEHelper::ShouldTreatActiveExceptionAsNonCorrupting());
+
+ // Failfast if exception indicates corrupted process state
+ if (pExInfo->GetCorruptionSeverity() == ProcessCorrupting)
+ EEPOLICY_HANDLE_FATAL_ERROR(exceptionCode);
+
END_SO_INTOLERANT_CODE;
}
#endif // FEATURE_CORRUPTING_EXCEPTIONS