pcbnew crash when duplicating (or arraying) and undoing a zone

Bug #1474320 reported by madworm
12
This bug affects 1 person
Affects Status Importance Assigned to Milestone
KiCad
Fix Released
Critical
Maciej Suminski

Bug Description

Using the 'create array' option to step-and-repeat a block of layout works exactly once.

If you then undo all changes and repeat the same process it crashes every single time.

---

Application: kicad
Version: (2015-07-13 BZR 5935, Git c8f8256)-product release build
wxWidgets: Version 3.0.2 (release,wchar_t,compiler with C++ ABI 1002,GCC 4.8.3,STL containers,compatible with 2.8)
Platform: Linux 3.16.7-21-desktop x86_64, 64 bit, Little endian, wxGTK
Boost version: 1.54.0
         USE_WX_GRAPHICS_CONTEXT=OFF
         USE_WX_OVERLAY=OFF
         KICAD_SCRIPTING=OFF
         KICAD_SCRIPTING_MODULES=OFF
         KICAD_SCRIPTING_WXPYTHON=OFF
         USE_FP_LIB_TABLE=HARD_CODED_ON
         BUILD_GITHUB_PLUGIN=ON

Tags: pcbnew

Related branches

Revision history for this message
madworm (madworm-de-inkscape) wrote :
Changed in kicad:
importance: Undecided → Critical
Revision history for this message
Nick Østergaard (nickoe) wrote :

What exactly do you mean with step-and-repeat? Could you take a screenshot of the dialog such that I can make sure that I try to reproduce with the exact same settings?

Also, is this in the legacy canvas or GAL canvas?

I can't seem to reproduce just taking my array settings and apply them, then ctrl+z then do it again.

Revision history for this message
madworm (madworm-de-inkscape) wrote :
Revision history for this message
Nick Østergaard (nickoe) wrote :

I can confirm that I can make it crash with your board and doing it as you did in th video 5835.

Application: pcbnew
Version: (2015-06-27 BZR 5835)-kicad release build
wxWidgets: Version 3.0.2 (debug,wchar_t,compiler with C++ ABI 1008,GCC 5.1.0,wx containers,compatible with 2.8)
Platform: Linux 4.0.7-2-ARCH x86_64, 64 bit, Little endian, wxGTK
Boost version: 1.58.0
         USE_WX_GRAPHICS_CONTEXT=OFF
         USE_WX_OVERLAY=OFF
         KICAD_SCRIPTING=ON
         KICAD_SCRIPTING_MODULES=ON
         KICAD_SCRIPTING_WXPYTHON=ON
         USE_FP_LIB_TABLE=HARD_CODED_ON
         BUILD_GITHUB_PLUGIN=ON

tags: added: pcbnew
Changed in kicad:
status: New → Confirmed
Revision history for this message
Nick Østergaard (nickoe) wrote :

... that version info is wrong, I meant 2015-07-15 BZR 5948.

Revision history for this message
John Beard (john-j-beard) wrote :

Also confirmed. Seems this can also be hit by:

* Duplicate or array a connected zone (Ctrl-D) singly (doesn't need to be in a block)
* Undo
* Do anything to the zone that invokes RN_DATA::Recalculate() (eg array, duplicate, move exactly, move, edit properties,...)
* Crashes with segfault at "LSET layers = zone->GetLayerSet();" in RN_NET::processZones()

This only happens after undoing and only in GAL, so it is presumably to do with ratsnest consistency across the undo point?

Changed in kicad:
assignee: nobody → Maciej Sumiński (orsonmmz)
summary: - pcbnew crash using 'create array' on layout block
+ pcbnew crash when duplicating (or arraying) and undoing a zone
Changed in kicad:
status: Confirmed → Fix Committed
Jon Neal (reportingsjr)
Changed in kicad:
status: Fix Committed → Fix Released
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.