Commit 126a7c10 authored by marco.'s avatar marco.

MacOSX: Crash in pcbnew during edit footprint and changing layer from dialog (Fixes: #764678)

parent dd5661e5
...@@ -27,7 +27,13 @@ void PCB_EDIT_FRAME::InstallModuleOptionsFrame( MODULE* Module, wxDC* DC ) ...@@ -27,7 +27,13 @@ void PCB_EDIT_FRAME::InstallModuleOptionsFrame( MODULE* Module, wxDC* DC )
if( Module == NULL ) if( Module == NULL )
return; return;
#ifndef __WXMAC__
DIALOG_MODULE_BOARD_EDITOR* dialog = new DIALOG_MODULE_BOARD_EDITOR( this, Module, DC ); DIALOG_MODULE_BOARD_EDITOR* dialog = new DIALOG_MODULE_BOARD_EDITOR( this, Module, DC );
#else
// avoid Avoid "writes" in the dialog, creates errors with WxOverlay and NSView & Modal
// Raising an Exception - Fixes #764678
DIALOG_MODULE_BOARD_EDITOR* dialog = new DIALOG_MODULE_BOARD_EDITOR( this, Module, NULL );
#endif
int retvalue = dialog->ShowModal(); /* retvalue = int retvalue = dialog->ShowModal(); /* retvalue =
* -1 if abort, * -1 if abort,
...@@ -37,6 +43,12 @@ void PCB_EDIT_FRAME::InstallModuleOptionsFrame( MODULE* Module, wxDC* DC ) ...@@ -37,6 +43,12 @@ void PCB_EDIT_FRAME::InstallModuleOptionsFrame( MODULE* Module, wxDC* DC )
*/ */
dialog->Destroy(); dialog->Destroy();
#ifdef __WXMAC__
// If something edited, push a refresh request
if (retvalue == 0 || retvalue == 1)
m_canvas->Refresh();
#endif
if( retvalue == 2 ) if( retvalue == 2 )
{ {
FOOTPRINT_EDIT_FRAME * editorFrame = FOOTPRINT_EDIT_FRAME * editorFrame =
......
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