Commit 14cfd173 authored by Maciej Suminski's avatar Maciej Suminski

Fixed the Module viewer crash when there is no footprint loaded.

parent 78853feb
...@@ -55,6 +55,9 @@ void CAIRO_COMPOSITOR::Resize( unsigned int aWidth, unsigned int aHeight ) ...@@ -55,6 +55,9 @@ void CAIRO_COMPOSITOR::Resize( unsigned int aWidth, unsigned int aHeight )
{ {
clean(); clean();
assert( m_width > 0 );
assert( m_height > 0 );
m_width = aWidth; m_width = aWidth;
m_height = aHeight; m_height = aHeight;
......
...@@ -168,11 +168,11 @@ FOOTPRINT_VIEWER_FRAME::FOOTPRINT_VIEWER_FRAME( KIWAY* aKiway, wxWindow* aParent ...@@ -168,11 +168,11 @@ FOOTPRINT_VIEWER_FRAME::FOOTPRINT_VIEWER_FRAME( KIWAY* aKiway, wxWindow* aParent
ReCreateLibraryList(); ReCreateLibraryList();
UpdateTitle(); UpdateTitle();
EDA_DRAW_FRAME* drawFrame = static_cast<EDA_DRAW_FRAME*>( aParent ); PCB_BASE_FRAME* parentFrame = static_cast<PCB_BASE_FRAME*>( Kiway().Player( FRAME_PCB, true ) );
// Create GAL canvas // Create GAL canvas
PCB_DRAW_PANEL_GAL* drawPanel = new PCB_DRAW_PANEL_GAL( this, -1, wxPoint( 0, 0 ), m_FrameSize, PCB_DRAW_PANEL_GAL* drawPanel = new PCB_DRAW_PANEL_GAL( this, -1, wxPoint( 0, 0 ), m_FrameSize,
drawFrame->GetGalCanvas()->GetBackend() ); parentFrame->GetGalCanvas()->GetBackend() );
SetGalCanvas( drawPanel ); SetGalCanvas( drawPanel );
// Create the manager and dispatcher & route draw panel events to the dispatcher // Create the manager and dispatcher & route draw panel events to the dispatcher
...@@ -193,9 +193,11 @@ FOOTPRINT_VIEWER_FRAME::FOOTPRINT_VIEWER_FRAME( KIWAY* aKiway, wxWindow* aParent ...@@ -193,9 +193,11 @@ FOOTPRINT_VIEWER_FRAME::FOOTPRINT_VIEWER_FRAME( KIWAY* aKiway, wxWindow* aParent
id.SetLibNickname( getCurNickname() ); id.SetLibNickname( getCurNickname() );
id.SetFootprintName( getCurFootprintName() ); id.SetFootprintName( getCurFootprintName() );
GetBoard()->Add( loadFootprint( id ) ); GetBoard()->Add( loadFootprint( id ) );
drawPanel->DisplayBoard( m_Pcb );
} }
drawPanel->DisplayBoard( m_Pcb );
updateView();
if( m_canvas ) if( m_canvas )
m_canvas->SetAcceleratorTable( table ); m_canvas->SetAcceleratorTable( table );
...@@ -273,7 +275,7 @@ FOOTPRINT_VIEWER_FRAME::FOOTPRINT_VIEWER_FRAME( KIWAY* aKiway, wxWindow* aParent ...@@ -273,7 +275,7 @@ FOOTPRINT_VIEWER_FRAME::FOOTPRINT_VIEWER_FRAME( KIWAY* aKiway, wxWindow* aParent
Show( true ); Show( true );
UseGalCanvas( drawFrame->IsGalCanvasActive() ); UseGalCanvas( parentFrame->IsGalCanvasActive() );
} }
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment