Crash zooming to wide extent #22021
Labels
Bug
Either a bug report, or a bug fix. Let's hope for the latter!
Crash/Data Corruption
High Priority
Map and Legend
Related to map or legend rendering
Author Name: Sandro Santilli (@strk)
Original Redmine Issue: 14008
Affected QGIS version: 2.8.4
Redmine category:map_canvas
Easy to reproduce with QuickWKT plugin (but it was spotted while trying to load a wide extent layer from PostGIS so this is not QuickWKT related):
LINESTRING(1.64840917084758e+24 4.87237127e+24,1.64868022e+24 4.87287960745181e+24)
Enter the above WKT and load in canvas. QGIS 2.8.4 aborts with:
src/core/qgsmaprendererparalleljob.cpp: 211: (renderLayerStatic) [4ms] [thread:0x7fff5800a720] job 3dcd630 start
qgis: /usr/src/qgis/qgis-2.8/src/core/qgsmaptopixel.cpp:125: QgsPoint QgsMapToPixel::toMapPoint(double, double) const: Assertion `invertible' failed.
src/core/qgsmaprendererparalleljob.cpp: 231: (renderLayerStatic) [0ms] [thread:0x7fff5800a720] job 3dcd630 end [1 ms]
Program received signal SIGABRT, Aborted.
0x00007fffef476cc9 in __GI_raise (sig=sig@entry=6) at ../nptl/sysdeps/unix/sysv/linux/raise.c:56
56 ../nptl/sysdeps/unix/sysv/linux/raise.c: No such file or directory.
(gdb) bt
#_0 0x00007fffef476cc9 in __GI_raise (sig=sig@entry=6) at ../nptl/sysdeps/unix/sysv/linux/raise.c:56
#_1 0x00007fffef47a0d8 in __GI_abort () at abort.c:89
#_2 0x00007fffef46fb86 in __assert_fail_base (fmt=0x7fffef5c0830 "%s%s%s:%u: %s%sAssertion `%s' failed.
%n",
assertion=assertion@entry=0x7ffff43d25af "invertible", file=file@entry=0x7ffff43d2568 "/usr/src/qgis/qgis-2.8/src/core/qgsmaptopixel.cpp",
line=line@entry=125,
function=function@entry=0x7ffff43d2640 <QgsMapToPixel::toMapPoint(double, double) const::PRETTY_FUNCTION> "QgsPoint QgsMapToPixel::toMapPoint(double, double) const") at assert.c:92
#_3 0x00007fffef46fc32 in __GI___assert_fail (assertion=0x7ffff43d25af "invertible",
file=0x7ffff43d2568 "/usr/src/qgis/qgis-2.8/src/core/qgsmaptopixel.cpp", line=125,
function=0x7ffff43d2640 <QgsMapToPixel::toMapPoint(double, double) const::PRETTY_FUNCTION> "QgsPoint QgsMapToPixel::toMapPoint(double, double) const") at assert.c:101
#_4 0x00007ffff411b4e8 in QgsMapToPixel::toMapPoint (this=0x13e7ef8, x=741, y=467) at /usr/src/qgis/qgis-2.8/src/core/qgsmaptopixel.cpp:125
#_5 0x00007ffff411b5b6 in QgsMapToPixel::toMapCoordinates (this=0x13e7ef8, p=...) at /usr/src/qgis/qgis-2.8/src/core/qgsmaptopixel.cpp:137
#_6 0x00007ffff37d0c4f in QgsMapCanvas::mouseMoveEvent (this=0x13e7d30, e=0x7fffffffc630) at /usr/src/qgis/qgis-2.8/src/gui/qgsmapcanvas.cpp:1473
#_7 0x00007ffff1f3d645 in QWidget::event(QEvent*) () from /usr/lib/x86_64-linux-gnu/libQtGui.so.4
#_8 0x00007ffff22df04e in QFrame::event(QEvent*) () from /usr/lib/x86_64-linux-gnu/libQtGui.so.4
#_9 0x00007ffff24ea859 in QGraphicsView::viewportEvent(QEvent*) () from /usr/lib/x86_64-linux-gnu/libQtGui.so.4
I had the impression we fixed this already by refusing to set a non-invertible matrix ? Is this a regression or was it done in a later version ?
PS: 2.8.4 is missing an entry in "Affected version"
The text was updated successfully, but these errors were encountered: