Fixed SetCurrentContext() assert, that was firing on closure of pcbnew, when the OpenGL backend was active.
This commit is contained in:
parent
7985a4b16b
commit
0e7db24049
|
@ -184,6 +184,13 @@ void EDA_DRAW_PANEL_GAL::Refresh( bool eraseBackground, const wxRect* rect )
|
|||
}
|
||||
|
||||
|
||||
void EDA_DRAW_PANEL_GAL::StopDrawing()
|
||||
{
|
||||
Disconnect( wxEVT_PAINT, wxPaintEventHandler( EDA_DRAW_PANEL_GAL::onPaint ), NULL, this );
|
||||
m_refreshTimer.Stop();
|
||||
}
|
||||
|
||||
|
||||
void EDA_DRAW_PANEL_GAL::SwitchBackend( GalType aGalType )
|
||||
{
|
||||
// Protect from refreshing during backend switch
|
||||
|
|
|
@ -111,6 +111,12 @@ public:
|
|||
m_eventDispatcher = aEventDispatcher;
|
||||
}
|
||||
|
||||
/**
|
||||
* Function StopDrawing()
|
||||
* Prevents the GAL canvas from further drawing till it is recreated.
|
||||
*/
|
||||
void StopDrawing();
|
||||
|
||||
protected:
|
||||
void onPaint( wxPaintEvent& WXUNUSED( aEvent ) );
|
||||
void onSize( wxSizeEvent& aEvent );
|
||||
|
|
|
@ -556,6 +556,7 @@ void PCB_EDIT_FRAME::OnQuit( wxCommandEvent& event )
|
|||
void PCB_EDIT_FRAME::OnCloseWindow( wxCloseEvent& Event )
|
||||
{
|
||||
m_canvas->SetAbortRequest( true );
|
||||
m_galCanvas->StopDrawing();
|
||||
|
||||
if( GetScreen()->IsModify() )
|
||||
{
|
||||
|
|
Loading…
Reference in New Issue