Fixed crash when context menu is invoked during track dragging (GAL).

This commit is contained in:
Maciej Suminski 2015-12-03 14:26:12 +01:00
parent dd06abf002
commit d373915340
2 changed files with 6 additions and 3 deletions

View File

@ -66,6 +66,8 @@ void TOOL_INTERACTIVE::goInternal( TOOL_STATE_FUNC& aState, const TOOL_EVENT_LIS
void TOOL_INTERACTIVE::SetContextMenu( CONTEXT_MENU* aMenu, CONTEXT_MENU_TRIGGER aTrigger )
{
aMenu->SetTool( this );
if( aMenu )
aMenu->SetTool( this );
m_toolMgr->ScheduleContextMenu( this, aMenu, aTrigger );
}

View File

@ -722,6 +722,9 @@ int ROUTER_TOOL::mainLoop( PNS_ROUTER_MODE aMode )
m_savedSettings = m_router->Settings();
m_savedSizes = m_router->Sizes();
// Disable the context menu before it is destroyed
SetContextMenu( NULL, CMENU_OFF );
return 0;
}
@ -745,8 +748,6 @@ void ROUTER_TOOL::performDragging()
{
ctls->ForceCursorPosition( false );
VECTOR2I p0 = ctls->GetCursorPosition();
if( evt->IsCancel() || evt->IsActivate() )
break;
else if( evt->IsMotion() )