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

This commit is contained in:
marco. 2012-11-25 09:08:25 +01:00
parent dd5661e5a8
commit 126a7c103c
1 changed files with 13 additions and 1 deletions

View File

@ -27,8 +27,14 @@ void PCB_EDIT_FRAME::InstallModuleOptionsFrame( MODULE* Module, wxDC* DC )
if( Module == NULL )
return;
#ifndef __WXMAC__
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 =
* -1 if abort,
* 0 if exchange module,
@ -37,6 +43,12 @@ void PCB_EDIT_FRAME::InstallModuleOptionsFrame( MODULE* Module, wxDC* DC )
*/
dialog->Destroy();
#ifdef __WXMAC__
// If something edited, push a refresh request
if (retvalue == 0 || retvalue == 1)
m_canvas->Refresh();
#endif
if( retvalue == 2 )
{
FOOTPRINT_EDIT_FRAME * editorFrame =