Pcbnew: fill then move zone in modern canvases causes segfault (lp:#1834718)

[Original report](https://bugs.launchpad.net/bugs/1834718) created by **Wayne Stambaugh (stambaughw)**
```
I just stumbled across this beauty while testing another bug fix.  The
following steps cause the 5.1 branch of Pcbnew to segfault:

1. Open any board that has a filled zone on a copper layer.
2. Refill all zones (B hotkey).
3. Select any zone and move it (M hotkey).
4. Hitting the escape key to deselect the zone will cause a segfault.

This happens with both the accelerated and fallback modern canvases but not
the legacy canvas.  It does not appear to affect the master branch.  What's
really peculiar is that the gdb back trace complains about something being
optimized out of the WX_PROGRESS_REPORTER dtor (see below).  Running the
gdb `bt` command causes gdb to spew an infinite loop of the same error.

Application: Pcbnew
Version: (5.1.2-169-g574473c48), debug build
Libraries:
    wxWidgets 3.0.4
    libcurl/7.65.1 OpenSSL/1.1.1c (Schannel) zlib/1.2.11 brotli/1.0.7
libidn2/2.2.0 libpsl/0.21.0 (+libidn2/2.1.1) nghttp2/1.39.1
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.70.0
    OpenCASCADE Community Edition: 6.9.1
    Curl: 7.65.1
    Compiler: GCC 9.1.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


(gdb) bt 20
#0  0x000000006d0cd392 in ?? ()
   from E:\msys64\mingw64\bin\wxmsw30u_core_gcc_custom.dll
#1  0x000000006d0cd6e9 in ?? ()
   from E:\msys64\mingw64\bin\wxmsw30u_core_gcc_custom.dll
#2  0x000000006d0ec8df in ?? ()
   from E:\msys64\mingw64\bin\wxmsw30u_core_gcc_custom.dll
#3  0x000000006d263ad7 in ?? ()
   from E:\msys64\mingw64\bin\wxmsw30u_core_gcc_custom.dll
#4  0x00000000806e8547 in WX_PROGRESS_REPORTER::~WX_PROGRESS_REPORTER (
    this=0x15083820, __in_chrg=<optimized out>)
    at
E:/msys64/home/Wayne/src/kicad-5.1/common/widgets/progress_reporter.cpp:117
#5  0x00000000806e8585 in WX_PROGRESS_REPORTER::~WX_PROGRESS_REPORTER (
    this=0x15083820, __in_chrg=<optimized out>)
    at
E:/msys64/home/Wayne/src/kicad-5.1/common/widgets/progress_reporter.cpp:118
#6  0x000000006d26fb1d in ?? ()
   from E:\msys64\mingw64\bin\wxmsw30u_core_gcc_custom.dll
#7  0x00000000806e8547 in WX_PROGRESS_REPORTER::~WX_PROGRESS_REPORTER (
    this=0x15083820, __in_chrg=<optimized out>)
    at
E:/msys64/home/Wayne/src/kicad-5.1/common/widgets/progress_reporter.cpp:117
#8  0x00000000806e8585 in WX_PROGRESS_REPORTER::~WX_PROGRESS_REPORTER (
    this=0x15083820, __in_chrg=<optimized out>)
    at
E:/msys64/home/Wayne/src/kicad-5.1/common/widgets/progress_reporter.cpp:118
#9  0x000000006d26fb1d in ?? ()
   from E:\msys64\mingw64\bin\wxmsw30u_core_gcc_custom.dll
#10 0x00000000806e8547 in WX_PROGRESS_REPORTER::~WX_PROGRESS_REPORTER (
    this=0x15083820, __in_chrg=<optimized out>)
    at
E:/msys64/home/Wayne/src/kicad-5.1/common/widgets/progress_reporter.cpp:117
#11 0x00000000806e8585 in WX_PROGRESS_REPORTER::~WX_PROGRESS_REPORTER (
    this=0x15083820, __in_chrg=<optimized out>)
    at
E:/msys64/home/Wayne/src/kicad-5.1/common/widgets/progress_reporter.cpp:118
#12 0x000000006d26fb1d in ?? ()
   from E:\msys64\mingw64\bin\wxmsw30u_core_gcc_custom.dll
#13 0x00000000806e8547 in WX_PROGRESS_REPORTER::~WX_PROGRESS_REPORTER (
    this=0x15083820, __in_chrg=<optimized out>)
    at
E:/msys64/home/Wayne/src/kicad-5.1/common/widgets/progress_reporter.cpp:117
#14 0x00000000806e8585 in WX_PROGRESS_REPORTER::~WX_PROGRESS_REPORTER (
    this=0x15083820, __in_chrg=<optimized out>)
    at
E:/msys64/home/Wayne/src/kicad-5.1/common/widgets/progress_reporter.cpp:118
#15 0x000000006d26fb1d in ?? ()
   from E:\msys64\mingw64\bin\wxmsw30u_core_gcc_custom.dll
#16 0x00000000806e8547 in WX_PROGRESS_REPORTER::~WX_PROGRESS_REPORTER (
    this=0x15083820, __in_chrg=<optimized out>)
    at
E:/msys64/home/Wayne/src/kicad-5.1/common/widgets/progress_reporter.cpp:117
#17 0x00000000806e8585 in WX_PROGRESS_REPORTER::~WX_PROGRESS_REPORTER (
    this=0x15083820, __in_chrg=<optimized out>)
    at
E:/msys64/home/Wayne/src/kicad-5.1/common/widgets/progress_reporter.cpp:118
#18 0x000000006d26fb1d in ?? ()
   from E:\msys64\mingw64\bin\wxmsw30u_core_gcc_custom.dll
#19 0x00000000806e8547 in WX_PROGRESS_REPORTER::~WX_PROGRESS_REPORTER (
    this=0x15083820, __in_chrg=<optimized out>)
    at
E:/msys64/home/Wayne/src/kicad-5.1/common/widgets/progress_reporter.cpp:117
```
Original tags: pcbnew

Story points: 6.0