Exception...Insufficient memory to continue the execution of the program

Jan 9, 2009 at 2:06 PM
Hello,

I have integrated AvalonDock into my application in C# Express 2008, and it looks great.  Many thanks to the author(s) for an awesome addition to WPF!

I am having an issue when I tear out one of the tabbed DockableContent windows, occasionally I will get a "Insufficient memory to continue the execution of the program" unhandled exception.  The content in these windows is a custom UserControl, which then contains a custom Canvas object.   DockableContent -> UserControl -> Canvas   (The canvas only contains a single DrawingVisual.)

It's very easy to get this to happen, though it doesn't happen every time I tear it out.  It seems to only happen after I resize the application window.

Has anyone seen this behavior before?

Thanks,
-John

Jan 9, 2009 at 3:20 PM
Follow up:  I plugged in the debug DLL (not sure why I didn't run with this to begin with) and here's where it crashes:

DragPaneServices.cs

in the MoveDrag function.  The actual line showing in the debugger was:

_wnd.Top = point.Y - Offset.Y

But I have a sneaking suspicion it was actually the following line:

List<IDropSurface> enteringSurfaces = new List<IDropSurface>();

(Though I don't see anything wrong with either lines, of course.)

I also seem to hit this a lot now that I'm running the debug DLL:

Debug.Assert(childWithInfDefLen > 0);
(ResizingPanel.cs line 662)

It just happened when trying to re-dock a floating panel to the right side.

-John


Feb 12, 2009 at 10:13 PM
I had this same line of code not pass the assertion:

     Debug.Assert(childWithInfDefLen > 0); // line 662 of resizePanel.cs

 I wasn't working on any layout changes at the time which is what really threw me off course as to why this might occur.