Select location of divesite in new map widget
Dirk Hohndel
dirk at hohndel.org
Tue Oct 3 10:49:33 PDT 2017
> On Oct 3, 2017, at 10:32 AM, Lubomir I. Ivanov <neolit123 at gmail.com> wrote:
>
> On 3 October 2017 at 20:23, Lubomir I. Ivanov <neolit123 at gmail.com> wrote:
>> On 3 October 2017 at 20:16, Lubomir I. Ivanov <neolit123 at gmail.com> wrote:
>>> i don't remember such a crash with no empty dive site name, when i was
>>> working on the map, so it might be a new thing.
>>>
>>> this:
>>> 00507BD2 44EA0000 00000000 044FC968 subsurface.exe!myInvalidate
>>> [/home/stefan/Entwicklung/Subsurface/subsurface/qt-models/filtermodels.cpp
>>> @ 384]
>>> 0050804F 00000022 48B5DE74 044FC988 subsurface.exe!stopFilterDiveSite
>>> [/home/stefan/Entwicklung/Subsurface/subsurface/qt-models/filtermodels.cpp
>>> @ 456]
>>> suggests that the cause is the code related to dive site filtering.
>>>
>>> i will now check the latest master, to see if i can reproduce the crash.
>>>
>>
>> the latest master crashes for me on startup with:
>>
>> -----------------------------------------------------------------------------------------------------------
>> Program received signal SIGSEGV, Segmentation fault.
>> DiveListView::DiveListView (this=<optimized out>, parent=0x0)
>> at C:\dev\subsurface\desktop-widgets\divelistview.cpp:98
>> 98 defaultWidth[col] = width;
>> (gdb) bt
>> #0 DiveListView::DiveListView (this=<optimized out>, parent=0x0)
>> at C:\dev\subsurface\desktop-widgets\divelistview.cpp:98
>> #1 0x0040804d in MainWindow::MainWindow (this=0x1a9abe80)
>> at C:\dev\subsurface\desktop-widgets\mainwindow.cpp:105
>> #2 0x004016db in init_ui ()
>> at C:\dev\subsurface\subsurface-desktop-helper.cpp:36
>> #3 0x00694378 in main (argc=1, argv=0x4b69928)
>> at C:\dev\subsurface\subsurface-desktop-main.cpp:91
>> -----------------------------------------------------------------------------------------------------------
>>
>> interesting...
>>
>
> yey, a compiler bug (stack corruption) in:
> gcc version 5.3.0 (i686-posix-dwarf-rev0, Built by MinGW-W64 project)
>
> in divelistview.cpp, for this:
> for (int col = DiveTripModel::NR; col < DiveTripModel::COLUMNS; ++col) {
>
> instead of incrementing col up to 16, it goes up to 2689.
Sweet. If you look at the preprocessor output, is it the DiveTripModel::COLUMNS
that is incorrectly expanded, or is it really the code generation?
And given that Gaetan sees this on Arch... different compiler, right?
WEIRD
/D
More information about the subsurface
mailing list