New zone cause a crash

Bug #1849289 reported by David Pearce on 2019-10-22
6
This bug affects 1 person
Affects Status Importance Assigned to Milestone
KiCad
Critical
Unassigned

Bug Description

Very recent pre 5.1.5 Windows Nightly (Jenkins 437)
Even on a trivial test board, creating a new zone or editing a zone properties causes a crash.
DrMingW goes crazy and has to be stopped with Task Manager
Zone parameters are priority = 2, Solid connections

Application: KiCad
Version: (5.1.4-113-gf2e75c96b)-1, release build
Libraries:
    wxWidgets 3.0.4
    libcurl/7.66.0 OpenSSL/1.1.1d (Schannel) zlib/1.2.11 brotli/1.0.7 libidn2/2.2.0 libpsl/0.21.0 (+libidn2/2.1.1) nghttp2/1.39.2
Platform: Windows 8 (build 9200), 64-bit edition, 64 bit, Little endian, wxMSW
Build Info:
    wxWidgets: 3.0.4 (wchar_t,wx containers,compatible with 2.8)
    Boost: 1.71.0
    OpenCASCADE Community Edition: 6.9.1
    Curl: 7.66.0
    Compiler: GCC 9.2.0 with C++ ABI 1013

Build settings:
    USE_WX_GRAPHICS_CONTEXT=OFF
    USE_WX_OVERLAY=OFF
    KICAD_SCRIPTING=ON
    KICAD_SCRIPTING_MODULES=ON
    KICAD_SCRIPTING_PYTHON3=OFF
    KICAD_SCRIPTING_WXPYTHON=ON
    KICAD_SCRIPTING_WXPYTHON_PHOENIX=OFF
    KICAD_SCRIPTING_ACTION_MENU=ON
    BUILD_GITHUB_PLUGIN=ON
    KICAD_USE_OCE=ON
    KICAD_USE_OCC=OFF
    KICAD_SPICE=ON

Nick Østergaard (nickoe) wrote :

Do you have board file to test on?

Seth Hillbrand (sethh) on 2019-10-22
Changed in kicad:
importance: Undecided → Critical
milestone: none → 5.1.5
Seth Hillbrand (sethh) wrote :

Can you attach the Event Viewer log of the crash? I can't recreate on Linux or Mac but there have been some recent changes to zone editing, so there may be some MSW-specific issue.

I cannot recreate it on W7 32bits

David Pearce (halzia) wrote :

Attaching the test project and a DrMingW dump

David Pearce (halzia) wrote :

The project
Editing the zone and closing the properties dialog triggers

David Pearce (halzia) wrote :

I am going back to Jenkins-436 to test

Nick Østergaard (nickoe) wrote :

I also fount this this on master. I triggered it by:

1. Open Test.kicad_pcb from zip in #5
2. Hit "g" on zone
3. Move top right corner around
4. Click on empty canvas
5. Crash

Application: Pcbnew
Version: (5.99.0-249-g3fffd042d), release build
Libraries:
    wxWidgets 3.0.4
    libcurl/7.66.0 OpenSSL/1.1.1d (Schannel) zlib/1.2.11 brotli/1.0.7 libidn2/2.2.0 libpsl/0.21.0 (+libidn2/2.1.1) nghttp2/1.39.2
Platform: Windows 8 (build 9200), 64-bit edition, 64 bit, Little endian, wxMSW
Build Info:
    Build date: Oct 21 2019 21:06:19
    wxWidgets: 3.0.4 (wchar_t,wx containers,compatible with 2.8)
    Boost: 1.71.0
    OpenCASCADE Community Edition: 6.9.1
    Curl: 7.66.0
    Compiler: GCC 9.2.0 with C++ ABI 1013

Build settings:
    KICAD_SCRIPTING=ON
    KICAD_SCRIPTING_MODULES=ON
    KICAD_SCRIPTING_PYTHON3=OFF
    KICAD_SCRIPTING_WXPYTHON=ON
    KICAD_SCRIPTING_WXPYTHON_PHOENIX=OFF
    KICAD_SCRIPTING_ACTION_MENU=ON
    BUILD_GITHUB_PLUGIN=ON
    KICAD_USE_OCE=ON
    KICAD_USE_OCC=OFF
    KICAD_SPICE=ON

Changed in kicad:
status: New → Triaged
tags: added: pcbnew
David Pearce (halzia) wrote :

Jenkins-436 same crash
Jenkins-427 runs normally, this was built 12th October

Seth Hillbrand (sethh) wrote :

@David- I am unable to trigger this on Linux with your board.

There is something very strange in the mingw trace. Apparently your Footprint Preview is being loaded when the window closes. I can see no method in the code that could allow this. Is it possible that this is related to the build upgrade?

@Nick- what do you have your 'g' hotkey mapped to? The normal drag doesn't affect the zone for me

David Pearce (halzia) wrote :

Further testing

Jenkins-433 is OK
Jenkins-434 does not run with the missing libzstd.dll error introduced by the new build system

So the bug was either committed into GitHub after 17th October or caused by the new build system

Nick Østergaard (nickoe) wrote :

Youncan copy the libzstd.dll from the newer build to the one missing it.

I am thinking the commits e54ea90607 (5.1 branch) and 10d23ad82d (master) should fix these crashes.

I saw a crash when trying to refill zones with an empty board, but only after updating my msys install to the latest version.

Nevertheless, the crash was due to a bug in the PROGRESS_REPORTER destructor.
I do not understand why we did not see this bug earlier.

Wayne Stambaugh (stambaughw) wrote :

@JP, maybe there was a change in wxWidgets that caused the issue. None the less, your commits fix the problem so I set the bug status to fix committed. Thanks for the quick fix.

Changed in kicad:
status: Triaged → Fix Committed
David Pearce (halzia) wrote :

Jenkins-440 with the above commit allows zone editing, so I think that this bug can be closed

Changed in kicad:
status: Fix Committed → Fix Released
To post a comment you must log in.
This report contains Public information  Edit
Everyone can see this information.

Other bug subscribers