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
- MenuItemBinding.cs
- PersonalizationProvider.cs
- UInt64.cs
- IsolatedStoragePermission.cs
- Permission.cs
- FormConverter.cs
- CustomCategoryAttribute.cs
- WebBrowserPermission.cs
- EnumerableCollectionView.cs
- ScrollChangedEventArgs.cs
- Expression.cs
- SqlOuterApplyReducer.cs
- ObjectRef.cs
- SqlConnectionString.cs
- ManipulationLogic.cs
- X509RawDataKeyIdentifierClause.cs
- Column.cs
- SystemKeyConverter.cs
- Win32.cs
- UserValidatedEventArgs.cs
- StylusLogic.cs
- X509UI.cs
- StringTraceRecord.cs
- SecurityTokenResolver.cs
- CursorConverter.cs
- RsaSecurityKey.cs
- MetadataArtifactLoaderResource.cs
- SQLMoneyStorage.cs
- SR.cs
- TypeEnumerableViewSchema.cs
- GroupBox.cs
- xmlfixedPageInfo.cs
- DSASignatureFormatter.cs
- StylusLogic.cs
- ModifierKeysValueSerializer.cs
- XPathDocumentIterator.cs
- PropertyConverter.cs
- Token.cs
- LabelInfo.cs
- PreviewPageInfo.cs
- DataComponentNameHandler.cs
- DataControlPagerLinkButton.cs
- TrackingProfile.cs
- StreamGeometry.cs
- cookie.cs
- ListSortDescription.cs
- RegistryKey.cs
- ProfessionalColors.cs
- TreeView.cs
- SvcMapFileLoader.cs
- ModifiableIteratorCollection.cs
- HttpHandlerAction.cs
- LiteralControl.cs
- CustomValidator.cs
- ClientConfigurationSystem.cs
- DefaultValueTypeConverter.cs
- EventSourceCreationData.cs
- ObjectKeyFrameCollection.cs
- ListViewPagedDataSource.cs
- AnimationTimeline.cs
- ConnectionOrientedTransportManager.cs
- ColumnMapTranslator.cs
- WizardPanelChangingEventArgs.cs
- PipelineComponent.cs
- WebBrowserPermission.cs
- FilteredDataSetHelper.cs
- SystemColorTracker.cs
- XmlTextWriter.cs
- FixedSOMTableRow.cs
- AttributeQuery.cs
- ServiceNameElementCollection.cs
- HitTestParameters3D.cs
- ScrollableControlDesigner.cs
- Publisher.cs
- TiffBitmapDecoder.cs
- IndexedGlyphRun.cs
- ProjectionCamera.cs
- ListView.cs
- PipelineDeploymentState.cs
- PrimitiveType.cs
- DeviceSpecificDialogCachedState.cs
- SegmentTree.cs
- DataGrid.cs
- DynamicUpdateCommand.cs
- LinqDataSourceDisposeEventArgs.cs
- PropertyDescriptorCollection.cs
- TextEditorDragDrop.cs
- DbInsertCommandTree.cs
- PlatformCulture.cs
- DbCommandDefinition.cs
- IdnMapping.cs
- TdsParameterSetter.cs
- Hex.cs
- XmlText.cs
- CurrentTimeZone.cs
- ImportContext.cs
- DynamicContractTypeBuilder.cs
- RegisteredHiddenField.cs
- HttpsChannelListener.cs
- TouchesOverProperty.cs