Sign in to follow this  
Followers 0

[DB2] Program freezes when dragging geometry on (under) title bar

I don't know if this is a known bug: dragging geometry too far upwards in fullscreen mode causes Doombuilder (v2.0.1.1157) to freeze as soon as releasing the right mouse button on the title bar. The context menu comes up but the minimize and close options won't do anything; the program has to be closed from the start bar or taskmanager.

Only sometimes an error message appears:

************** Ausnahmetext **************
System.AccessViolationException: Es wurde versucht, im geschützten Speicher zu lesen oder zu schreiben. Dies ist häufig ein Hinweis darauf,
dass anderer Speicher beschädigt ist.
   bei CodeImp.DoomBuilder.Rendering.Plotter.DrawVertexSolid(Int32 x, Int32 y, Int32 size, PixelColor& c, PixelColor& l, PixelColor& d)
   bei CodeImp.DoomBuilder.Rendering.Renderer2D.PlotVertex(Vertex v, Int32 colorindex)
   bei CodeImp.DoomBuilder.Rendering.Renderer2D.PlotVerticesSet(ICollection`1 vertices)
   bei CodeImp.DoomBuilder.BuilderModes.SectorsMode.OnRedrawDisplay()
   bei CodeImp.DoomBuilder.Windows.MainForm.RedrawDisplay()
   bei CodeImp.DoomBuilder.Editing.EditingManager.ChangeMode(EditMode nextmode)
   bei CodeImp.DoomBuilder.Editing.EditModeInfo.SwitchToMode(Object[] args)
   bei CodeImp.DoomBuilder.Editing.EditingManager.ChangeMode(String classname, Object[] args)
   bei CodeImp.DoomBuilder.BuilderModes.DragGeometryMode.OnEditEnd()
   bei CodeImp.DoomBuilder.Actions.Action.End()
   bei CodeImp.DoomBuilder.Actions.ActionManager.EndActiveActions()
   bei CodeImp.DoomBuilder.Actions.ActionManager.KeyReleased(Int32 key)
   bei CodeImp.DoomBuilder.Windows.MainForm.display_MouseUp(Object sender, MouseEventArgs e)
   bei System.Windows.Forms.Control.OnMouseUp(MouseEventArgs e)
   bei System.Windows.Forms.Control.WmMouseUp(Message& m, MouseButtons button, Int32 clicks)
   bei System.Windows.Forms.Control.WndProc(Message& m)
   bei System.Windows.Forms.ScrollableControl.WndProc(Message& m)
   bei System.Windows.Forms.Control.ControlNativeWindow.OnMessage(Message& m)
   bei System.Windows.Forms.Control.ControlNativeWindow.WndProc(Message& m)
   bei System.Windows.Forms.NativeWindow.Callback(IntPtr hWnd, Int32 msg, IntPtr wparam, IntPtr lparam)


************** Geladene Assemblys **************
mscorlib
    Assembly-Version: 2.0.0.0.
    Win32-Version: 2.0.50727.3053 (netfxsp.050727-3000).
    CodeBase: file:///C:/WINDOWS/Microsoft.NET/Framework/v2.0.50727/mscorlib.dll.
----------------------------------------
Builder
    Assembly-Version: 2.0.1.1157.
    Win32-Version: 2.0.1.1157.
    CodeBase: file:///D:/Doom/Doom%20Builder/Builder.exe.
----------------------------------------
System
    Assembly-Version: 2.0.0.0.
    Win32-Version: 2.0.50727.3053 (netfxsp.050727-3000).
    CodeBase: file:///C:/WINDOWS/assembly/GAC_MSIL/System/2.0.0.0__b77a5c561934e089/System.dll.
----------------------------------------
System.Windows.Forms
    Assembly-Version: 2.0.0.0.
    Win32-Version: 2.0.50727.3053 (netfxsp.050727-3000).
    CodeBase: file:///C:/WINDOWS/assembly/GAC_MSIL/System.Windows.Forms/2.0.0.0__b77a5c561934e089/System.Windows.Forms.dll.
----------------------------------------
System.Drawing
    Assembly-Version: 2.0.0.0.
    Win32-Version: 2.0.50727.3053 (netfxsp.050727-3000).
    CodeBase: file:///C:/WINDOWS/assembly/GAC_MSIL/System.Drawing/2.0.0.0__b03f5f7f11d50a3a/System.Drawing.dll.
----------------------------------------
SlimDX
    Assembly-Version: 2.0.7.41.
    Win32-Version: .
    CodeBase: file:///C:/WINDOWS/assembly/GAC_32/SlimDX/2.0.7.41__b1b0c32fd1ffe4f9/SlimDX.dll.
----------------------------------------
msvcm80
    Assembly-Version: 8.0.50727.3053.
    Win32-Version: 8.00.50727.3053.
    CodeBase: file:///C:/WINDOWS/WinSxS/x86_Microsoft.VC80.CRT_1fc8b3b9a1e18e3b_8.0.50727.3053_x-ww_b80fa8ca/msvcm80.dll.
----------------------------------------
System.Windows.Forms.resources
    Assembly-Version: 2.0.0.0.
    Win32-Version: 2.0.50727.3053 (netfxsp.050727-3000).
    CodeBase: file:///C:/WINDOWS/assembly/GAC_MSIL/System.Windows.Forms.resources/2.0.0.0_de_b77a5c561934e089/System.Windows.Forms.resources.dll.
----------------------------------------
BuilderModes
    Assembly-Version: 2.0.1.1157.
    Win32-Version: 2.0.1.1157.
    CodeBase: file:///D:/Doom/Doom%20Builder/Plugins/BuilderModes.dll.
----------------------------------------
System.Design
    Assembly-Version: 2.0.0.0.
    Win32-Version: 2.0.50727.3053 (netfxsp.050727-3000).
    CodeBase: file:///C:/WINDOWS/assembly/GAC_MSIL/System.Design/2.0.0.0__b03f5f7f11d50a3a/System.Design.dll.
----------------------------------------
mscorlib.resources
    Assembly-Version: 2.0.0.0.
    Win32-Version: 2.0.50727.3053 (netfxsp.050727-3000).
    CodeBase: file:///C:/WINDOWS/Microsoft.NET/Framework/v2.0.50727/mscorlib.dll.
----------------------------------------
Sharpzip
    Assembly-Version: 0.85.2.329.
    Win32-Version: 0.85.2.329.
    CodeBase: file:///D:/Doom/Doom%20Builder/Sharpzip.DLL.
----------------------------------------
Could it be related to my possibly outdated .NET version?

Share this post


Link to post

To me looks like the drawing code (either in DB or in .NET) tried to draw outside of its buffer.

Share this post


Link to post

I can reproduce the problem. It happens because the value of the new position is not checked (at least not in release compile, the check with a proper error message is in the debug build). So when the context menu shows up the vertex positions are set to some invalid value, which in the end are apparently responsible for the crash in the drawing functions.

Dragging things has a similar problem. For me it doesn't crash, though, but the thing just disappears. It's still there, if you save and reload the map it's there again.

The easiest fix is to add a sanity check in the Move methods of Tings.cs and Vertex.cs, but I guess it'd be cleaner to add that check to the MoveGeometryRelative method in DragGeometryMode.cs.

Share this post


Link to post

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!


Register a new account

Sign in

Already have an account? Sign in here.


Sign In Now
Sign in to follow this  
Followers 0