Code:
/ 4.0 / 4.0 / DEVDIV_TFS / Dev10 / Releases / RTMRel / wpf / src / Base / MS / Internal / CriticalExceptions.cs / 1305600 / CriticalExceptions.cs
using System; #if PBTCOMPILER namespace MS.Internal.Markup #elif SYSTEM_XAML namespace System.Xaml #else using MS.Internal.WindowsBase; // FriendAccessAllowed namespace MS.Internal #endif { #if !PBTCOMPILER && !SYSTEM_XAML [FriendAccessAllowed] #endif internal static class CriticalExceptions { // these are all the exceptions considered critical by PreSharp #if !PBTCOMPILER && !SYSTEM_XAML [FriendAccessAllowed] #endif internal static bool IsCriticalException(Exception ex) { ex = Unwrap(ex); return ex is NullReferenceException || ex is StackOverflowException || ex is OutOfMemoryException || ex is System.Threading.ThreadAbortException || ex is System.Runtime.InteropServices.SEHException || ex is System.Security.SecurityException; } // these are exceptions that we should treat as critical when they // arise during callbacks into application code #if !PBTCOMPILER && !SYSTEM_XAML [FriendAccessAllowed] internal static bool IsCriticalApplicationException(Exception ex) { ex = Unwrap(ex); return ex is StackOverflowException || ex is OutOfMemoryException || ex is System.Threading.ThreadAbortException || ex is System.Security.SecurityException; } #endif #if !PBTCOMPILER && !SYSTEM_XAML [FriendAccessAllowed] #endif internal static Exception Unwrap(Exception ex) { // for certain types of exceptions, we care more about the inner // exception while (ex.InnerException != null && ( ex is System.Reflection.TargetInvocationException )) { ex = ex.InnerException; } return ex; } } } // File provided for Reference Use Only by Microsoft Corporation (c) 2007. // Copyright (c) Microsoft Corporation. All rights reserved. using System; #if PBTCOMPILER namespace MS.Internal.Markup #elif SYSTEM_XAML namespace System.Xaml #else using MS.Internal.WindowsBase; // FriendAccessAllowed namespace MS.Internal #endif { #if !PBTCOMPILER && !SYSTEM_XAML [FriendAccessAllowed] #endif internal static class CriticalExceptions { // these are all the exceptions considered critical by PreSharp #if !PBTCOMPILER && !SYSTEM_XAML [FriendAccessAllowed] #endif internal static bool IsCriticalException(Exception ex) { ex = Unwrap(ex); return ex is NullReferenceException || ex is StackOverflowException || ex is OutOfMemoryException || ex is System.Threading.ThreadAbortException || ex is System.Runtime.InteropServices.SEHException || ex is System.Security.SecurityException; } // these are exceptions that we should treat as critical when they // arise during callbacks into application code #if !PBTCOMPILER && !SYSTEM_XAML [FriendAccessAllowed] internal static bool IsCriticalApplicationException(Exception ex) { ex = Unwrap(ex); return ex is StackOverflowException || ex is OutOfMemoryException || ex is System.Threading.ThreadAbortException || ex is System.Security.SecurityException; } #endif #if !PBTCOMPILER && !SYSTEM_XAML [FriendAccessAllowed] #endif internal static Exception Unwrap(Exception ex) { // for certain types of exceptions, we care more about the inner // exception while (ex.InnerException != null && ( ex is System.Reflection.TargetInvocationException )) { ex = ex.InnerException; } return ex; } } } // File provided for Reference Use Only by Microsoft Corporation (c) 2007. // Copyright (c) Microsoft Corporation. All rights reserved.
Link Menu

This book is available now!
Buy at Amazon US or
Buy at Amazon UK
- JsonSerializer.cs
- DataTableTypeConverter.cs
- SystemPens.cs
- NetworkInformationPermission.cs
- XmlParser.cs
- PartBasedPackageProperties.cs
- CodeTypeReferenceExpression.cs
- Parallel.cs
- WindowsStartMenu.cs
- ProcessHostMapPath.cs
- CfgArc.cs
- XmlNamespaceManager.cs
- SchemaNotation.cs
- DocobjHost.cs
- Storyboard.cs
- ModelTreeEnumerator.cs
- SchemaImporterExtensionsSection.cs
- BuildResult.cs
- WindowsFont.cs
- ZipIOCentralDirectoryFileHeader.cs
- ContainerControlDesigner.cs
- DesignerPainter.cs
- FileDialog.cs
- MdiWindowListItemConverter.cs
- Rotation3D.cs
- GroupStyle.cs
- Brush.cs
- SoapIgnoreAttribute.cs
- RuleElement.cs
- RuntimeConfigLKG.cs
- CellCreator.cs
- FormViewPageEventArgs.cs
- DocumentPaginator.cs
- FloaterBaseParagraph.cs
- DocumentReference.cs
- DataGridPageChangedEventArgs.cs
- DataGridViewCellCancelEventArgs.cs
- ReadOnlyDictionary.cs
- FormViewModeEventArgs.cs
- FilterElement.cs
- Roles.cs
- GifBitmapDecoder.cs
- SHA512Managed.cs
- KerberosSecurityTokenProvider.cs
- GifBitmapDecoder.cs
- ExtensibleSyndicationObject.cs
- DataGridViewCellPaintingEventArgs.cs
- WrappedReader.cs
- Peer.cs
- _IPv6Address.cs
- XmlException.cs
- ViewManager.cs
- FixedElement.cs
- XmlSchemaException.cs
- WebServicesSection.cs
- SendKeys.cs
- MatrixTransform.cs
- KeyEventArgs.cs
- Timer.cs
- ConfigurationErrorsException.cs
- EventSetterHandlerConverter.cs
- SuppressIldasmAttribute.cs
- HitTestDrawingContextWalker.cs
- TargetInvocationException.cs
- SimpleHandlerFactory.cs
- MarkupObject.cs
- RefType.cs
- ScriptRegistrationManager.cs
- SignedXml.cs
- WebPartMenuStyle.cs
- DSASignatureFormatter.cs
- CustomErrorCollection.cs
- TouchDevice.cs
- DataGridCheckBoxColumn.cs
- DateTimeFormatInfoScanner.cs
- VirtualPathUtility.cs
- DoubleCollectionValueSerializer.cs
- TextEndOfSegment.cs
- ColumnReorderedEventArgs.cs
- DirectionalLight.cs
- TypeAccessException.cs
- PermissionSetEnumerator.cs
- X509Certificate2.cs
- XPathBinder.cs
- InternalUserCancelledException.cs
- ContextMarshalException.cs
- BitmapFrameEncode.cs
- PersistChildrenAttribute.cs
- BamlRecords.cs
- SuppressIldasmAttribute.cs
- CustomErrorsSection.cs
- FileDialogCustomPlacesCollection.cs
- SimpleFileLog.cs
- PartialArray.cs
- Switch.cs
- AsymmetricAlgorithm.cs
- TraceLog.cs
- BuildProvidersCompiler.cs
- FilteredXmlReader.cs
- XmlElementList.cs