dbzhang800 / QCustomPlot

Plotting Widget form http://www.WorksLikeClockwork.com
51 stars 31 forks source link

Qt5 issue #1

Closed Drusy closed 11 years ago

Drusy commented 11 years ago

Hi,

I repport a crash with the Qt5 version of interaction-example. It happen when the first curve goes out of the screen by the right (just slide the curves to the right until it crashes)

Hope you can help.

Regards

Gui13 commented 11 years ago

I second that. I encounter the same issue on my side: you just have to slide until the curve is not visible an let go of the mouse button.

I have no debugger on my windows installation, so no means of debugging...

Gui13 commented 11 years ago

For those interested, I got a stacktrace:

0   QMapNodeBase::nextNode  qmap.cpp    58  0x6402edb2  
1   QMapNode<double,QCPData>::nextNode  qmap.h  117 0xf3fc60    
2   QMap<double,QCPData>::const_iterator::operator++    qmap.h  476 0xf3eb91    
3   QMap<double,QCPData>::const_iterator::operator+ qmap.h  494 0xf3ebdf    
4   QCPGraph::getVisibleDataBounds  qcustomplot.cpp 1677    0xf0ad33    
5   QCPGraph::getLinePlotData   qcustomplot.cpp 1051    0xf08aef    
6   QCPGraph::getPlotData   qcustomplot.cpp 981 0xf08940    
7   QCPGraph::draw  qcustomplot.cpp 905 0xf0848c    
8   QCustomPlot::draw   qcustomplot.cpp 8079    0xf1bfc0    
9   QCustomPlot::replot qcustomplot.cpp 7242    0xf19dd8    
10  QCustomPlot::mouseMoveEvent qcustomplot.cpp 7696    0xf1ae56    
11  QWidget::event  qwidget.cpp 7827    0x6a3ca01d  
12  QApplicationPrivate::notify_helper  qapplication.cpp    3394    0x6a3828ce  
13  QApplication::notify    qapplication.cpp    2958    0x6a38093c  
14  QCoreApplication::notifyInternal    qcoreapplication.cpp    767 0x642174c4  
15  QCoreApplication::sendSpontaneousEvent  qcoreapplication.h  206 0x64327198  
16  QApplicationPrivate::sendMouseEvent qapplication.cpp    2465    0x6a37fa65  
17  QWidgetWindow::handleMouseEvent qwidgetwindow.cpp   387 0x6a3fdbc0  
18  QWidgetWindow::event    qwidgetwindow.cpp   139 0x6a3fd134  
19  QApplicationPrivate::notify_helper  qapplication.cpp    3394    0x6a3828ce  
... <plus>              

AND a screenshot:

bug_qcustomplot

dbzhang800 commented 11 years ago

Hi all,

Thanks for your report, the reason is that:

(QMap::begin()-1)+1 which works under Qt4, but not Qt5.

This is not the fault of Qt, as the manual says that calling const_iterator::operator--() on QMap::begin() leads to undefined results.

I will fix it ASAP.