My debugging shows the crash occurs in the in the SortTemplates() function in the \src\sdk\newfromtemplatedlg.cpp file, but the problem is hard to debug as the variables are wxWidget data types and are not shown in a readable format in the watch window. I have got the wxwidget pretty printing to work, but it is missing some of the structures... More work!!!!!
It looks like there may be some GCC bug as I have added a bunch of logging, but it does not work as my first line "if (data1->pt)" causes a crash. If I set a breakpoint on the line and watch the data1->pt is shows "Cannot access memory at address 0xffffffffd90246c0". When watching data1 is is also pointing to 0xffffffffd90246c0.
I suspect a GCC issue. Anyone got any ideas or any pointers on what to try next?
When I modify the newfromtemplatedlg.cpp the following is the relevant biuld log output:
-------------- Build: sdk in Code::Blocks wx3.1.x (64 bit) (compiler: MSYS2 GNU GCC Compiler)---------------
Running target pre-build steps
.objs31_64\autorevision +wx +int +t .. include/autorevision.h
g++.exe -Wall -std=gnu++11 -m64 -g -Og -pipe -mthreads -fmessage-length=0 -fexceptions -DHAVE_W32API_H -D__WXMSW__ -DWXUSINGDLL -DcbDEBUG -DNOPCH -DwxUSE_UNICODE -D_WIN64 -Woverloaded-virtual -DEXPORT_LIB -DEXPORT_EVENTS -DWXMAKINGDLL_SCI -IF:\Andrew_Development\wxWidgets-3.1.5\include -IF:\Andrew_Development\wxWidgets-3.1.5\lib\gcc_dll\mswu -Isdk\wxscintilla\include -Iinclude\tinyxml -Iinclude -Iinclude\tinyxml -Iinclude\scripting\include -Isdk\mozilla_chardet\include -Isdk\mozilla_chardet\include\mfbt -Isdk\mozilla_chardet\include\nsprpub\pr\include -Isdk\mozilla_chardet\include\xpcom -Isdk\mozilla_chardet\include\xpcom\base -Isdk\mozilla_chardet\include\xpcom\glue -Isdk\scripting\bindings -c F:\Andrew_Development\codeblocks_sf\src\sdk\newfromtemplatedlg.cpp -o .objs31_64\sdk\newfromtemplatedlg.o
g++.exe -shared -Wl,--out-implib=devel31_64\libcodeblocks.a -Wl,--dll -LF:\Andrew_Development\wxWidgets-3.1.5\lib\gcc_dll -Ldevel31_64 <<<OBJECT LIST REMOVED>>> -o devel31_64\codeblocks.dll -Wl,--enable-auto-image-base -Wl,--add-stdcall-alias -Wl,--enable-auto-import -Wl,--no-undefined -m64 -lshfolder -ltxml -lwxscintilla_cb -lsquirrel -lgdi32 -lwxmsw31u
Output file is devel31_64\codeblocks.dll with size 126.20 MB
Running target post-build steps
cmd /c if not exist devel31_64\share\CodeBlocks mkdir devel31_64\share\CodeBlocks
zip -jq9 devel31_64\share\CodeBlocks\manager_resources.zip sdk\resources\*.xrc
cmd /c "cd sdk\resources & zip -0 -q ..\..\devel31_64\share\CodeBlocks\manager_resources.zip images\*.png images\8x8\*.png images\10x10\*.png images\12x12\*.png images\16x16\*.png images\20x20\*.png images\24x24\*.png images\28x28\*.png images\32x32\*.png images\40x40\*.png images\48x48\*.png images\56x56\*.png images\64x64\*.png"