← Back to team overview

kicad-developers team mailing list archive

Segfault when pcbnew starts with an invalid file

 

Pcbnew without scripting support crashes when run with an invalid file
given as a parameter (stack overflow in ~wxSingleInstanceChecker()).

There is a fix for that, but wrapped with #ifdef
KICAD_SCRIPTING_WXPYTHON .. #endif. I removed the mentioned directives
and it seems fine here, but I am not confident enough to commit it
immediately. Any thoughts?

Regards,
Orson
diff --git a/common/single_top.cpp b/common/single_top.cpp
index 5c2dcd4..1de8cd0 100644
--- a/common/single_top.cpp
+++ b/common/single_top.cpp
@@ -288,9 +288,8 @@ bool PGM_SINGLE_TOP::OnPgmInit( wxApp* aWxApp )
             // We've already initialized things at this point, but wx won't call OnExit if
             // we fail out. Call our own cleanup routine here to ensure the relevant resources
             // are freed at the right time (if they aren't, segfaults will occur).
-#if defined( KICAD_SCRIPTING_WXPYTHON )
             OnPgmExit();
-#endif
+
             // Fail the process startup if the file could not be opened,
             // although this is an optional choice, one that can be reversed
             // also in the KIFACE specific OpenProjectFiles() return value.

Attachment: signature.asc
Description: OpenPGP digital signature


Follow ups