Bug report #7928

SIGABRT when adding labels

Added by Laurent Defert over 6 years ago. Updated over 6 years ago.

Status:Closed
Priority:Normal
Assignee:Marco Hugentobler
Category:Vectors
Affected QGIS version:master Regression?:No
Operating System:Linux / Debian Easy fix?:No
Pull Request or Patch supplied:No Resolution:fixed
Crashes QGIS or corrupts data:No Copied to github as #:16799

Description

Using the current master branch (rev 20c729a), QGis crashes when enabling labelling on some layers. To reproduce:
  • Open the properties of a layer.
  • In tab "Labels", select "Label this layer with", select a field.
  • Validate the dialog.

This is the debug output given by QGis after validating:

Debug: src/core/qgsmaprenderer.cpp: 233: (render) ========== Rendering ==========
Debug: src/core/qgsmaprenderer.cpp: 271: (render) Starting to render layer stack.
Debug: src/core/qgsmaprenderer.cpp: 372: (render) Rendering at layer item tryton_unselected_forest_plot
Debug: src/core/qgsmaprenderer.cpp: 380: (render) If there is a QPaintEngine error here, it is caused by an emit call
Debug: src/core/qgsmaprenderer.cpp: 398: (render) layer Plot (unselected):  minscale:0  maxscale:1e+08  scaledepvis:0  extent:931634.1514738800469786,6765313.8672465402632952 : 933026.7115317300194874,6766475.4006592296063900  blendmode:0
Debug: src/core/qgsmaprenderer.cpp: 424: (render)   extent 1: 931526.3512895002495497,6765731.0341600002720952 : 932647.4681044996250421,6766478.4453699998557568
Debug: src/core/qgsmaprenderer.cpp: 425: (render)   extent 2: Empty
Debug: src/core/qgsmaplayer.cpp: 1266: (setCacheImage) cache Image set!
Debug: src/core/qgsvectorlayer.cpp: 662: (draw) rendering v2:
SINGLE: FILL SYMBOL (1 layers) color 255,255,255,255
Debug: src/core/qgsgeometry.cpp: 4730: (exportWkbToGeos) Polygon nr: 0
Debug: src/core/qgsgeometry.cpp: 4740: (exportWkbToGeos) Ring nr: 0
Debug: src/core/qgsgeometry.cpp: 4730: (exportWkbToGeos) Polygon nr: 0
Debug: src/core/qgsgeometry.cpp: 4740: (exportWkbToGeos) Ring nr: 0
Debug: src/core/qgsgeometry.cpp: 4730: (exportWkbToGeos) Polygon nr: 0
Debug: src/core/qgsgeometry.cpp: 4740: (exportWkbToGeos) Ring nr: 0
Debug: src/core/qgsgeometry.cpp: 4730: (exportWkbToGeos) Polygon nr: 0
Debug: src/core/qgsgeometry.cpp: 4740: (exportWkbToGeos) Ring nr: 0
Debug: src/core/qgsgeometry.cpp: 4730: (exportWkbToGeos) Polygon nr: 0
Debug: src/core/qgsgeometry.cpp: 4740: (exportWkbToGeos) Ring nr: 0
Debug: src/core/qgsgeometry.cpp: 4730: (exportWkbToGeos) Polygon nr: 0
Debug: src/core/qgsgeometry.cpp: 4740: (exportWkbToGeos) Ring nr: 0
Debug: src/core/qgsgeometry.cpp: 4730: (exportWkbToGeos) Polygon nr: 0
Debug: src/core/qgsgeometry.cpp: 4740: (exportWkbToGeos) Ring nr: 0
Debug: src/core/qgsgeometry.cpp: 4740: (exportWkbToGeos) Ring nr: 1
Debug: src/core/qgsgeometry.cpp: 4730: (exportWkbToGeos) Polygon nr: 1
Fatal: ASSERT failure in QVector<T>::operator[]: "index out of range", file /usr/include/qt4/QtCore/qvector.h, line 355

The following traceback:

#0  0x00007ffff0670475 in *__GI_raise (sig=<optimized out>) at ../nptl/sysdeps/unix/sysv/linux/raise.c:64
#1  0x00007ffff06736f0 in *__GI_abort () at abort.c:92
#2  0x000000000056172e in myMessageOutput (type=QtFatalMsg, 
    msg=0x2e9b458 "ASSERT failure in QVector<T>::operator[]: \\"index out of range\\", file /usr/include/qt4/QtCore/qvector.h, line 355")
    at /home/lds/dev/Quantum-GIS/src/app/main.cpp:263
#3  0x00007ffff3551630 in qt_message_output(QtMsgType, char const*) () from /usr/lib/x86_64-linux-gnu/libQtCore.so.4
#4  0x00007ffff3551a98 in ?? () from /usr/lib/x86_64-linux-gnu/libQtCore.so.4
#5  0x00007ffff3551c24 in qFatal(char const*, ...) () from /usr/lib/x86_64-linux-gnu/libQtCore.so.4
#6  0x00007ffff4aca0db in QVector<GEOSGeom_t*>::operator[] (this=0x7fffffff6980, i=0) at /usr/include/qt4/QtCore/qvector.h:355
#7  0x00007ffff4ab48f3 in createGeosPolygon (rings=...) at /home/lds/dev/Quantum-GIS/src/core/qgsgeometry.cpp:356
#8  0x00007ffff4ac2d67 in QgsGeometry::exportWkbToGeos (this=0x2e9dbc0) at /home/lds/dev/Quantum-GIS/src/core/qgsgeometry.cpp:4764
#9  0x00007ffff4abec87 in QgsGeometry::geosRelOp (op=0x7ffff1e2f650 <GEOSContains>, a=0x2e9e470, b=0x2e9dbc0)
    at /home/lds/dev/Quantum-GIS/src/core/qgsgeometry.cpp:3912
#10 0x00007ffff4abeeb8 in QgsGeometry::contains (this=0x2e9e470, geometry=0x2e9dbc0) at /home/lds/dev/Quantum-GIS/src/core/qgsgeometry.cpp:3926
#11 0x00007ffff4b576d4 in QgsPalLayerSettings::registerFeature (this=0x32f76a8, layer=0x2757390, f=..., context=...)
    at /home/lds/dev/Quantum-GIS/src/core/qgspallabeling.cpp:1769
#12 0x00007ffff4b62523 in QgsPalLabeling::registerFeature (this=0x2583ae0, layer=0x2757390, f=..., context=...)
    at /home/lds/dev/Quantum-GIS/src/core/qgspallabeling.cpp:3248
#13 0x00007ffff4bcacfe in QgsVectorLayer::drawRendererV2 (this=0x2757390, fit=..., rendererContext=..., labeling=true)
    at /home/lds/dev/Quantum-GIS/src/core/qgsvectorlayer.cpp:463
#14 0x00007ffff4bcc49d in QgsVectorLayer::draw (this=0x2757390, rendererContext=...) at /home/lds/dev/Quantum-GIS/src/core/qgsvectorlayer.cpp:697
#15 0x00007ffff4b107c1 in QgsMapRenderer::render (this=0x1081480, painter=0x7fffffff8330, forceWidthScale=0x0)
    at /home/lds/dev/Quantum-GIS/src/core/qgsmaprenderer.cpp:569
#16 0x00007ffff4399fca in QgsMapCanvasMap::render (this=0x1083040) at /home/lds/dev/Quantum-GIS/src/gui/qgsmapcanvasmap.cpp:83
#17 0x00007ffff4391b5a in QgsMapCanvas::refresh (this=0xfd74a0) at /home/lds/dev/Quantum-GIS/src/gui/qgsmapcanvas.cpp:417
#18 0x00007ffff442ae08 in QgsMapCanvas::qt_static_metacall (_o=0xfd74a0, _c=QMetaObject::InvokeMetaMethod, _id=14, _a=0x7fffffff8700)
    at /home/lds/dev/Quantum-GIS/build/src/gui/moc_qgsmapcanvas.cxx:115
#19 0x00007ffff366c54f in QMetaObject::activate(QObject*, QMetaObject const*, int, void**) () from /usr/lib/x86_64-linux-gnu/libQtCore.so.4
#20 0x00007ffff4cfd8b1 in QgsMapLayer::repaintRequested (this=0x2757390) at /home/lds/dev/Quantum-GIS/build/src/core/moc_qgsmaplayer.cxx:176
#21 0x00007ffff4bcd8b6 in QgsVectorLayer::triggerRepaint (this=0x2757390) at /home/lds/dev/Quantum-GIS/src/core/qgsvectorlayer.cpp:871
#22 0x00000000007bcc6d in QgsVectorLayerProperties::apply (this=0x325a5c0) at /home/lds/dev/Quantum-GIS/src/app/qgsvectorlayerproperties.cpp:475
#23 0x00000000008c584a in QgsVectorLayerProperties::qt_static_metacall (_o=0x325a5c0, _c=QMetaObject::InvokeMetaMethod, _id=9, _a=0x7fffffff89c0)
    at /home/lds/dev/Quantum-GIS/build/src/app/moc_qgsvectorlayerproperties.cxx:112
#24 0x00007ffff366c54f in QMetaObject::activate(QObject*, QMetaObject const*, int, void**) () from /usr/lib/x86_64-linux-gnu/libQtCore.so.4
#25 0x00007ffff366c54f in QMetaObject::activate(QObject*, QMetaObject const*, int, void**) () from /usr/lib/x86_64-linux-gnu/libQtCore.so.4
#26 0x00007ffff366c54f in QMetaObject::activate(QObject*, QMetaObject const*, int, void**) () from /usr/lib/x86_64-linux-gnu/libQtCore.so.4
#27 0x00007ffff3065f32 in QAbstractButton::clicked(bool) () from /usr/lib/x86_64-linux-gnu/libQtGui.so.4
#28 0x00007ffff2dba06e in ?? () from /usr/lib/x86_64-linux-gnu/libQtGui.so.4
#29 0x00007ffff2dba8a0 in ?? () from /usr/lib/x86_64-linux-gnu/libQtGui.so.4
#30 0x00007ffff2dbab0c in QAbstractButton::mouseReleaseEvent(QMouseEvent*) () from /usr/lib/x86_64-linux-gnu/libQtGui.so.4
#31 0x00007ffff2a4fe10 in QWidget::event(QEvent*) () from /usr/lib/x86_64-linux-gnu/libQtGui.so.4
#32 0x00007ffff2a0070c in QApplicationPrivate::notify_helper(QObject*, QEvent*) () from /usr/lib/x86_64-linux-gnu/libQtGui.so.4
#33 0x00007ffff2a053eb in QApplication::notify(QObject*, QEvent*) () from /usr/lib/x86_64-linux-gnu/libQtGui.so.4
#34 0x00007ffff4a54cf0 in QgsApplication::notify (this=0x7fffffffdb10, receiver=0x315bdd0, event=0x7fffffff9600)
    at /home/lds/dev/Quantum-GIS/src/core/qgsapplication.cpp:241
#35 0x00007ffff3656b5e in QCoreApplication::notifyInternal(QObject*, QEvent*) () from /usr/lib/x86_64-linux-gnu/libQtCore.so.4
#36 0x00007ffff2a0154b in QApplicationPrivate::sendMouseEvent(QWidget*, QMouseEvent*, QWidget*, QWidget*, QWidget**, QPointer<QWidget>&, bool) ()
   from /usr/lib/x86_64-linux-gnu/libQtGui.so.4
#37 0x00007ffff2a7bfc4 in ?? () from /usr/lib/x86_64-linux-gnu/libQtGui.so.4
#38 0x00007ffff2a7ad51 in QApplication::x11ProcessEvent(_XEvent*) () from /usr/lib/x86_64-linux-gnu/libQtGui.so.4
#39 0x00007ffff2aa1bc2 in ?? () from /usr/lib/x86_64-linux-gnu/libQtGui.so.4
#40 0x00007fffeef7d355 in g_main_context_dispatch () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#41 0x00007fffeef7d688 in ?? () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#42 0x00007fffeef7d744 in g_main_context_iteration () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#43 0x00007ffff3685296 in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib/x86_64-linux-gnu/libQtCore.so.4
#44 0x00007ffff2aa183e in ?? () from /usr/lib/x86_64-linux-gnu/libQtGui.so.4
#45 0x00007ffff36558af in QEventLoop::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib/x86_64-linux-gnu/libQtCore.so.4
#46 0x00007ffff3655b38 in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib/x86_64-linux-gnu/libQtCore.so.4
#47 0x00007ffff2eb4358 in QDialog::exec() () from /usr/lib/x86_64-linux-gnu/libQtGui.so.4
#48 0x00000000005a171b in QgisApp::showLayerProperties (this=0xe6bb50, ml=0x2757390) at /home/lds/dev/Quantum-GIS/src/app/qgisapp.cpp:8775
#49 0x000000000058aa69 in QgisApp::layerProperties (this=0xe6bb50) at /home/lds/dev/Quantum-GIS/src/app/qgisapp.cpp:4530
#50 0x00000000008b6005 in QgisApp::qt_static_metacall (_o=0xe6bb50, _c=QMetaObject::InvokeMetaMethod, _id=13, _a=0x7fffffffa6c0)
    at /home/lds/dev/Quantum-GIS/build/src/app/moc_qgisapp.cxx:521
#51 0x00007ffff366c54f in QMetaObject::activate(QObject*, QMetaObject const*, int, void**) () from /usr/lib/x86_64-linux-gnu/libQtCore.so.4
#52 0x00007ffff29fa502 in QAction::triggered(bool) () from /usr/lib/x86_64-linux-gnu/libQtGui.so.4
#53 0x00007ffff29fa6f0 in QAction::activate(QAction::ActionEvent) () from /usr/lib/x86_64-linux-gnu/libQtGui.so.4
#54 0x00007ffff2e34413 in ?? () from /usr/lib/x86_64-linux-gnu/libQtGui.so.4
#55 0x00007ffff2e3a729 in ?? () from /usr/lib/x86_64-linux-gnu/libQtGui.so.4
#56 0x00007ffff2a4fe10 in QWidget::event(QEvent*) () from /usr/lib/x86_64-linux-gnu/libQtGui.so.4
#57 0x00007ffff2e3b9db in QMenu::event(QEvent*) () from /usr/lib/x86_64-linux-gnu/libQtGui.so.4
#58 0x00007ffff2a0070c in QApplicationPrivate::notify_helper(QObject*, QEvent*) () from /usr/lib/x86_64-linux-gnu/libQtGui.so.4
#59 0x00007ffff2a053eb in QApplication::notify(QObject*, QEvent*) () from /usr/lib/x86_64-linux-gnu/libQtGui.so.4
#60 0x00007ffff4a54cf0 in QgsApplication::notify (this=0x7fffffffdb10, receiver=0x7fffffffbd30, event=0x7fffffffb160)
    at /home/lds/dev/Quantum-GIS/src/core/qgsapplication.cpp:241
#61 0x00007ffff3656b5e in QCoreApplication::notifyInternal(QObject*, QEvent*) () from /usr/lib/x86_64-linux-gnu/libQtCore.so.4
#62 0x00007ffff2a0154b in QApplicationPrivate::sendMouseEvent(QWidget*, QMouseEvent*, QWidget*, QWidget*, QWidget**, QPointer<QWidget>&, bool) ()
   from /usr/lib/x86_64-linux-gnu/libQtGui.so.4
#63 0x00007ffff2a7be8c in ?? () from /usr/lib/x86_64-linux-gnu/libQtGui.so.4
#64 0x00007ffff2a7ad51 in QApplication::x11ProcessEvent(_XEvent*) () from /usr/lib/x86_64-linux-gnu/libQtGui.so.4
#65 0x00007ffff2aa1bc2 in ?? () from /usr/lib/x86_64-linux-gnu/libQtGui.so.4
#66 0x00007fffeef7d355 in g_main_context_dispatch () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#67 0x00007fffeef7d688 in ?? () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#68 0x00007fffeef7d744 in g_main_context_iteration () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#69 0x00007ffff3685276 in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib/x86_64-linux-gnu/libQtCore.so.4
#70 0x00007ffff2aa183e in ?? () from /usr/lib/x86_64-linux-gnu/libQtGui.so.4
#71 0x00007ffff36558af in QEventLoop::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib/x86_64-linux-gnu/libQtCore.so.4
#72 0x00007ffff3655b38 in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib/x86_64-linux-gnu/libQtCore.so.4
#73 0x00007ffff2e38405 in QMenu::exec(QPoint const&, QAction*) () from /usr/lib/x86_64-linux-gnu/libQtGui.so.4
#74 0x0000000000849dd0 in QgsLegend::handleRightClickEvent (this=0x1082c10, item=0x290b0c0, position=...)
    at /home/lds/dev/Quantum-GIS/src/app/legend/qgslegend.cpp:884
#75 0x0000000000846d70 in QgsLegend::mousePressEvent (this=0x1082c10, e=0x7fffffffcdd0) at /home/lds/dev/Quantum-GIS/src/app/legend/qgslegend.cpp:431
#76 0x00007ffff2a502b3 in QWidget::event(QEvent*) () from /usr/lib/x86_64-linux-gnu/libQtGui.so.4
#77 0x00007ffff2dfad36 in QFrame::event(QEvent*) () from /usr/lib/x86_64-linux-gnu/libQtGui.so.4
#78 0x00007ffff2f08223 in QAbstractItemView::viewportEvent(QEvent*) () from /usr/lib/x86_64-linux-gnu/libQtGui.so.4
#79 0x00007ffff2f4b971 in QTreeView::viewportEvent(QEvent*) () from /usr/lib/x86_64-linux-gnu/libQtGui.so.4
#80 0x00007ffff3656cc6 in QCoreApplicationPrivate::sendThroughObjectEventFilters(QObject*, QEvent*) () from /usr/lib/x86_64-linux-gnu/libQtCore.so.4
#81 0x00007ffff2a006dc in QApplicationPrivate::notify_helper(QObject*, QEvent*) () from /usr/lib/x86_64-linux-gnu/libQtGui.so.4
#82 0x00007ffff2a053eb in QApplication::notify(QObject*, QEvent*) () from /usr/lib/x86_64-linux-gnu/libQtGui.so.4
#83 0x00007ffff4a54cf0 in QgsApplication::notify (this=0x7fffffffdb10, receiver=0x10a3a20, event=0x7fffffffcdd0)
    at /home/lds/dev/Quantum-GIS/src/core/qgsapplication.cpp:241
#84 0x00007ffff3656b5e in QCoreApplication::notifyInternal(QObject*, QEvent*) () from /usr/lib/x86_64-linux-gnu/libQtCore.so.4
#85 0x00007ffff2a0154b in QApplicationPrivate::sendMouseEvent(QWidget*, QMouseEvent*, QWidget*, QWidget*, QWidget**, QPointer<QWidget>&, bool) ()
   from /usr/lib/x86_64-linux-gnu/libQtGui.so.4
#86 0x00007ffff2a7bfc4 in ?? () from /usr/lib/x86_64-linux-gnu/libQtGui.so.4
#87 0x00007ffff2a7ad51 in QApplication::x11ProcessEvent(_XEvent*) () from /usr/lib/x86_64-linux-gnu/libQtGui.so.4
#88 0x00007ffff2aa1bc2 in ?? () from /usr/lib/x86_64-linux-gnu/libQtGui.so.4
#89 0x00007fffeef7d355 in g_main_context_dispatch () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#90 0x00007fffeef7d688 in ?? () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#91 0x00007fffeef7d744 in g_main_context_iteration () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#92 0x00007ffff3685276 in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib/x86_64-linux-gnu/libQtCore.so.4
#93 0x00007ffff2aa183e in ?? () from /usr/lib/x86_64-linux-gnu/libQtGui.so.4
#94 0x00007ffff36558af in QEventLoop::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib/x86_64-linux-gnu/libQtCore.so.4
#95 0x00007ffff3655b38 in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib/x86_64-linux-gnu/libQtCore.so.4
#96 0x00007ffff365acf8 in QCoreApplication::exec() () from /usr/lib/x86_64-linux-gnu/libQtCore.so.4
#97 0x000000000056438b in main (argc=2, argv=0x7fffffffe608) at /home/lds/dev/Quantum-GIS/src/app/main.cpp:998


Related issues

Related to QGIS Application - Bug report #7990: labelling/selection of WFS multi part geometries fails Closed 2013-06-03

History

#1 Updated by Larry Shaffer over 6 years ago

Hi Laurent,

It looks like the function that may be causing the issue, QgsGeometry::exportWkbToGeos(), was worked on recently to fix a bug in commit 0594453 ("on github":commit:0594453ff55e705854e0cf00de72e3feadbf6c14#src/core/qgsgeometry.cpp). While it looks to be unrelated to labeling, I am leaving issue classified under labeling because it is where the new issue presents itself.

Can you, in any way, verify when you last had a working project? Can you possibly build and test a version of master branch prior to the above mentioned commit? Or can you try with latest master to just revert that commit, using git, and do a test build?

#2 Updated by Larry Shaffer over 6 years ago

  • Assignee set to Marco Hugentobler

Hi Marco,

I am assigning this issue to you because I think it may be related to a recent commit of yours. Please undo the assignment if I am incorrect.

#3 Updated by Laurent Defert over 6 years ago

Hi, thanks for your fast response.
I tried reverting the commit 0594453 with no luck.
I cannot find which commit introduced the regression, as I was previously using the 1.8 version and switched to git (I was impacted by #6473).

After further investigation, I found that it gets triggered when the data are loaded from a WFS server. Creating the layer from a PostGis tble then labelling the same dataset doesn't crash.

I found a public WFS server with which I was able to reproduce the bug, here are the steps:

#4 Updated by Larry Shaffer over 6 years ago

  • Priority changed from Severe/Regression to Normal
  • Category changed from Labelling to Vectors

Hi Laurent,

Well, this is unrelated to labeling as far a I can tell. Loading the layer you mentioned and trying to do anything that validates the geometry either crashes the app or uses up all RAM.

  1. Load WFS layer mentioned above (Save as... to new, local vector format, makes no difference)
  2. Open Vector->Geometry Tools->Check geometry validity
  3. Select WFS (or the same layer saved to another vector format)
  4. Validate geometry quickly leads to QGIS eating up ALL available RAM. In my case 7.5 GB in 3 seconds. Stopping validation does not reclaim RAM. Quitting does.

OR...

  1. Load WFS layer mentioned above
  2. Save as... to new, local vector format and load saved layer
  3. Put new layer into edit mode
  4. Select node tool and click on geometry(it's one feature, whose geometry is 'validated')
  5. Validate geometry quickly leads to QGIS eating up ALL available RAM (as above). Usually resulting in crash.

OR...

  1. Load WFS layer mentioned above
  2. Try to select the feature leads to same issue as above

Basically, the geometry is rendered, but many functions that try to work with it cause the symptoms noted above. I think the geometry for that layer needs fixed in some way before it can be used in QGIS.

Do you have another data source that exhibits the issue?

I also tried to split the multipart geometry into single parts, but ended up with no features in the resultant file.

I've set the issue priority to 'normal' until such time as it can be verified that it is not just very bad/funky geometry.

#5 Updated by Laurent Defert over 6 years ago

Hi,
I'm having this issue on an other WFS server (one I'm currently writing), and the particular geometry that triggers this behaviour works well when it's loaded from a PostGis database, so I'm starting to think the problem may be in the WFS client or ogc parsing. I'll tell you if I can find more.

#6 Updated by Laurent Defert over 6 years ago

Well, I'm a bit puzzled about this issue, neither the WFS code or the QgsGeometry related methods have changed since 1.8.. It looks like a weird side-effect.. Tell me if you have some clue, or if I can provide more testing.
Thanks

#8 Updated by Marco Hugentobler over 6 years ago

  • Status changed from Open to Feedback

6370153e81bba76997ec1db5c1296f71b284c256 should solve the problem with ring-less polygons. Do you confirm?

#9 Updated by Laurent Defert over 6 years ago

Marco Hugentobler wrote:

6370153e81bba76997ec1db5c1296f71b284c256 should solve the problem with ring-less polygons. Do you confirm?

Woks great. Thx

#10 Updated by Giovanni Manghi over 6 years ago

  • Resolution set to fixed
  • Status changed from Feedback to Closed

Also available in: Atom PDF