MaterialDesignInXAML / MaterialDesignInXAML/MaterialDesignInXamlToolkit

System.Runtime.InteropServices.SEHException in MainDemo.Wpf when running for a long time

Open
#895 6 comments 0 reactions 0 assignees View on GitHub
up-for-grabs
Dominant language
C#
Stars
16.3k
Forks
3.5k
Avg merge
1d 22h
Merged PRs (30d)
8

Description

This is the second time I observed this with **MainDemo.Wpf**. The first time I noticed this error I didn't think much of it.
There might not be much to find here, but if enough people observe this, then we might be able to find a correlation between them.

When running **MainDemo.Wpf** I observed System.Runtime.InteropServices.SEHException
```
ved System.IO.UnmanagedMemoryStream.ReadByte()
ved System.IO.BinaryReader.ReadByte()
ved System.IO.BinaryReader.Read7BitEncodedInt()
ved System.Resources.ResourceReader._LoadObjectV2(Int32 pos, ResourceTypeCode& typeCode)
ved System.Resources.ResourceReader.LoadObjectV2(Int32 pos, ResourceTypeCode& typeCode)
ved System.Resources.ResourceReader.LoadObject(Int32 pos, ResourceTypeCode& typeCode)
ved System.Resources.RuntimeResourceSet.GetObject(String key, Boolean ignoreCase, Boolean isString)
ved System.Resources.RuntimeResourceSet.GetObject(String key, Boolean ignoreCase)
ved System.Resources.ResourceManager.GetObject(String name, CultureInfo culture, Boolean wrapUnmanagedMemStream)
ved System.Resources.ResourceManager.GetStream(String name, CultureInfo culture)
ved MS.Internal.Resources.ResourceManagerWrapper.GetStream(String name)
ved MS.Internal.AppModel.ResourcePart.GetStreamCore(FileMode mode, FileAccess access)
ved System.IO.Packaging.PackagePart.GetStream(FileMode mode, FileAccess access)
ved System.IO.Packaging.PackWebResponse.CachedResponse.GetResponseStream()
ved System.IO.Packaging.PackWebResponse.GetResponseStream()
ved MS.Internal.FontCache.FontSource.GetUnmanagedStream()
ved MS.Internal.Text.TextInterface.FontFileStream..ctor(IFontSource fontSource)
ved MS.Internal.Text.TextInterface.FontFileLoader.CreateStreamFromKey(Void* fontFileReferenceKey, UInt32 fontFileReferenceKeySize, IntPtr* fontFileStream)
ved MS.Internal.Text.TextInterface.TextAnalyzer.GetGlyphs(UInt16* textString, UInt32 textLength, Font font, UInt16 blankGlyphIndex, Boolean isSideways, Boolean isRightToLeft, CultureInfo cultureInfo, DWriteFontFeature[][] features, UInt32[] featureRangeLengths, UInt32 maxGlyphCount, TextFormattingMode textFormattingMode, ItemProps itemProps, UInt16* clusterMap, UInt16* textProps, UInt16* glyphIndices, UInt32* glyphProps, Int32* pfCanGlyphAlone, UInt32& actualGlyphCount)
ved MS.Internal.TextFormatting.LineServicesCallbacks.GetGlyphsRedefined(IntPtr pols, IntPtr* plsplsruns, Int32* pcchPlsrun, Int32 plsrunCount, Char* pwchText, Int32 cchText, LsTFlow textFlow, UInt16* puGlyphsBuffer, UInt32* piGlyphPropsBuffer, Int32 cgiGlyphBuffers, Int32& fIsGlyphBuffersUsed, UInt16* puClusterMap, UInt16* puCharProperties, Int32* pfCanGlyphAlone, Int32& glyphCount)
ved MS.Internal.TextFormatting.UnsafeNativeMethods.LoCreateLine(IntPtr ploc, Int32 cp, Int32 ccpLim, Int32 durColumn, UInt32 dwLineFlags, IntPtr pInputBreakRec, LsLInfo& plslinfo, IntPtr& pploline, Int32& maxDepth, LsLineWidths& lineWidths)
ved MS.Internal.TextFormatting.TextMetrics.FullTextLine.FormatLine(FullTextState fullText, Int32 cpFirst, Int32 lineLength, Int32 formatWidth, Int32 finiteFormatWidth, Int32 paragraphWidth, LineFlags lineFlags, FormattedTextSymbols collapsingSymbol)
ved MS.Internal.TextFormatting.TextMetrics.FullTextLine..ctor(FormatSettings settings, Int32 cpFirst, Int32 lineLength, Int32 paragraphWidth, LineFlags lineFlags)
ved MS.Internal.TextFormatting.TextFormatterImp.FormatLineInternal(TextSource textSource, Int32 firstCharIndex, Int32 lineLength, Double paragraphWidth, TextParagraphProperties paragraphProperties, TextLineBreak previousLineBreak, TextRunCache textRunCache)
ved MS.Internal.TextFormatting.TextFormatterImp.FormatLine(TextSource textSource, Int32 firstCharIndex, Double paragraphWidth, TextParagraphProperties paragraphProperties, TextLineBreak previousLineBreak, TextRunCache textRunCache)
ved System.Windows.Controls.TextBoxLine.Format(Int32 dcp, Double formatWidth, Double paragraphWidth, LineProperties lineProperties, TextRunCache textRunCache, TextFormatter formatter)
ved System.Windows.Controls.TextBoxView.GetFormattedLine(Int32 lineIndex, LineProperties& lineProperties)
ved System.Windows.Controls.TextBoxView.GetTextPositionFromDistance(Int32 lineIndex, Double x)
ved System.Windows.Controls.TextBoxView.System.Windows.Documents.ITextView.GetTextPositionFromPoint(Point point, Boolean snapToText)
ved System.Windows.Documents.TextEditorMouse.IsPointWithinInteractiveArea(TextEditor textEditor, Point point)
ved System.Windows.Documents.TextEditorMouse.OnQueryCursor(Object sender, QueryCursorEventArgs e)
ved System.Windows.Controls.Primitives.TextBoxBase.OnQueryCursor(QueryCursorEventArgs e)
ved System.Windows.UIElement.OnQueryCursorThunk(Object sender, QueryCursorEventArgs e)
ved System.Windows.Input.QueryCursorEventArgs.InvokeEventHandler(Delegate genericHandler, Object genericTarget)
ved System.Windows.RoutedEventArgs.InvokeHandler(Delegate handler, Object target)
ved System.Windows.RoutedEventHandlerInfo.InvokeHandler(Object target, RoutedEventArgs routedEventArgs)
ved System.Windows.EventRoute.InvokeHandlersImpl(Object source, RoutedEventArgs args, Boolean reRaised)
ved System.Windows.UIElement.RaiseEventImpl(DependencyObject sender, RoutedEventArgs args)
ved System.Windows.UIElement.RaiseTrustedEvent(RoutedEventArgs args)
ved System.Windows.UIElement.RaiseEvent(RoutedEventArgs args, Boolean trusted)
ved System.Windows.Input.InputManager.ProcessStagingArea()
ved System.Windows.Input.InputManager.ProcessInput(InputEventArgs input)
ved System.Windows.Input.MouseDevice.UpdateCursorPrivate()
ved System.Windows.Input.MouseDevice.PostProcessInput(Object sender, ProcessInputEventArgs e)
ved System.Windows.Input.InputManager.RaiseProcessInputEventHandlers(ProcessInputEventHandler postProcessInput, ProcessInputEventArgs processInputEventArgs)
ved System.Windows.Input.InputManager.ProcessStagingArea()
ved System.Windows.Input.InputManager.ProcessInput(InputEventArgs input)
ved System.Windows.Input.MouseDevice.Synchronize()
ved System.Windows.Input.MouseDevice.PostProcessInput(Object sender, ProcessInputEventArgs e)
ved System.Windows.Input.InputManager.RaiseProcessInputEventHandlers(ProcessInputEventHandler postProcessInput, ProcessInputEventArgs processInputEventArgs)
ved System.Windows.Input.InputManager.ProcessStagingArea()
ved System.Windows.Input.InputManager.ProcessInput(InputEventArgs input)
ved System.Windows.Input.InputProviderSite.ReportInput(InputReport inputReport)
ved System.Windows.Interop.HwndMouseInputProvider.ReportInput(IntPtr hwnd, InputMode mode, Int32 timestamp, RawMouseActions actions, Int32 x, Int32 y, Int32 wheel)
ved System.Windows.Interop.HwndMouseInputProvider.FilterMessage(IntPtr hwnd, WindowMessage msg, IntPtr wParam, IntPtr lParam, Boolean& handled)
ved System.Windows.Interop.HwndSource.InputFilterMessage(IntPtr hwnd, Int32 msg, IntPtr wParam, IntPtr lParam, Boolean& handled)
ved MS.Win32.HwndWrapper.WndProc(IntPtr hwnd, Int32 msg, IntPtr wParam, IntPtr lParam, Boolean& handled)
ved MS.Win32.HwndSubclass.DispatcherCallbackOperation(Object o)
ved System.Windows.Threading.ExceptionWrapper.InternalRealCall(Delegate callback, Object args, Int32 numArgs)
ved System.Windows.Threading.ExceptionWrapper.TryCatchWhen(Object source, Delegate callback, Object args, Int32 numArgs, Delegate catchHandler)
ved System.Windows.Threading.Dispatcher.LegacyInvokeImpl(DispatcherPriority priority, TimeSpan timeout, Delegate method, Object args, Int32 numArgs)
ved MS.Win32.HwndSubclass.SubclassWndProc(IntPtr hwnd, Int32 msg, IntPtr wParam, IntPtr lParam)
ved MS.Win32.UnsafeNativeMethods.DispatchMessage(MSG& msg)
ved System.Windows.Threading.Dispatcher.PushFrameImpl(DispatcherFrame frame)
ved System.Windows.Threading.Dispatcher.PushFrame(DispatcherFrame frame)
ved System.Windows.Application.RunDispatcher(Object ignore)
ved System.Windows.Application.RunInternal(Window window)
ved System.Windows.Application.Run(Window window)
ved MaterialDesignColors.WpfExample.App.Main()
```

From: 12 February 2018, 14:51:03
To: ~13 February 2018, 09:16:47
Application open time before exception: ~18 hours, 25 minutes and 44 seconds (just over 2^16 seconds).
Additional: Computer in standby from 16:30 to 7:50
Revision: https://github.com/ButchersBoy/MaterialDesignInXamlToolkit/tree/019c5d64836ca550f0ca780a4e33778f62be8bcb (current master at time of writing)
Running: Release
Page open: Fields
Right before crash: hovered over application in background which possibly triggered the crash
Path: \\file01\home\jsh\visual studio\Samples\MaterialDesignInXamlToolkit-master\MainDemo.Wpf\bin\Release

Contributor guide

Open the contributing guide

Research direction

Start with the MainDemo.Wpf reproduction context and the supplied stack trace, focusing on the long-running session, standby period, and hover action. No source file or test is named; done would require identifying a reproducible cause for the SEHException and documenting or addressing it with appropriate validation.

Written by the indexing model from the issue text.

Assessment

Tech stack
csharp
Domain
desktop
Issue type
Bug
Difficulty
5/5
Estimated time
Over a week
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
20/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.