Bug report #1268

crash due to an unhandled GEOSException

Added by Maciej Sieczka - over 12 years ago. Updated over 11 years ago.

Status:Closed
Priority:Low
Assignee:nobody -
Category:-
Affected QGIS version: Regression?:No
Operating System:All Easy fix?:No
Pull Request or Patch supplied: Resolution:worksforme
Crashes QGIS or corrupts data: Copied to github as #:11328

Description

QGIS trunk r9243, GEOS 3.0.0, QT 4.4.0, Debian testing amd64.

While zooming around my various data (shapefiles and an SRTM in the original hgt format) QGIS crashed out of sudden, saying in it's last lines of output:

Warning: QString::arg: Argument missing: GEOS exception encountered: , <³\Zó
Debug: /home/shoofi/src/straight/qgis-trunk/src/core/qgsgeometry.cpp: 70: (throwGEOSException) GEOS exception encountered: 
Warning: Qt has caught an exception thrown from an event handler. Throwing
exceptions from an event handler is not supported in Qt. You must
reimplement QApplication::notify() and catch all exceptions there.

terminate called after throwing an instance of 'GEOSException'
Aborted

Some more context before the crash:

Debug: /home/shoofi/src/straight/qgis-trunk/src/core/qgsmaprenderer.cpp: 283: (render)   Scale dep. visibility enabled? 0
Debug: /home/shoofi/src/straight/qgis-trunk/src/core/qgsmaprenderer.cpp: 284: (render)   Input extent: -13638896.6873203646391630,-10303222.4935561791062355 : 5769681.5712591772899032,7573984.2448347210884094
Debug: /home/shoofi/src/straight/qgis-trunk/src/core/qgsmaplayer.cpp: 323: (connectNotify) [[QgsMapLayer]] connected to 2drawingProgress(int,int)
Debug: /home/shoofi/src/straight/qgis-trunk/src/core/qgscoordinatetransform.cpp: 360: (transformBoundingBox) Entering transformBoundingBox...
Debug: /home/shoofi/src/straight/qgis-trunk/src/core/qgscoordinatetransform.cpp: 407: (transformBoundingBox) Projected extent: 495968.1790201322291978,278782.9114470463246107 : 496785.5263534721452743,279693.5328877875581384
Debug: /home/shoofi/src/straight/qgis-trunk/src/providers/ogr/qgsogrprovider.cpp: 360: (select) Setting spatial filter using POLYGON((495968.17902013 278782.91144705, 495968.17902013 279693.53288779, 496785.52635347 279693.53288779, 496785.52635347 278782.91144705, 495968.17902013 278782.91144705))
Debug: /home/shoofi/src/straight/qgis-trunk/src/providers/ogr/qgsogrprovider.cpp: 323: (getNextFeature) Feature is null
Debug: /home/shoofi/src/straight/qgis-trunk/src/core/qgsmaprenderer.cpp: 261: (render) Rendering at layer item Data_layer20080902165046458
Debug: /home/shoofi/src/straight/qgis-trunk/src/core/qgsmaprenderer.cpp: 269: (render) If there is a QPaintEngine error here, it is caused by an emit call
Debug: /home/shoofi/src/straight/qgis-trunk/src/core/qgsmaplayer.cpp: 107: (name) returning name 'Data layer'
Debug: /home/shoofi/src/straight/qgis-trunk/src/core/qgsmaprenderer.cpp: 280: (render) Rendering layer Data layer
Debug: /home/shoofi/src/straight/qgis-trunk/src/core/qgsmaprenderer.cpp: 281: (render)   Layer minscale 1
Debug: /home/shoofi/src/straight/qgis-trunk/src/core/qgsmaprenderer.cpp: 282: (render)   Layer maxscale 1e+08
Debug: /home/shoofi/src/straight/qgis-trunk/src/core/qgsmaprenderer.cpp: 283: (render)   Scale dep. visibility enabled? 0
Debug: /home/shoofi/src/straight/qgis-trunk/src/core/qgsmaprenderer.cpp: 284: (render)   Input extent: -0.1500000000000000,-0.1500000000000000 : 236790.2799999999988358,883500.0000000000000000
Debug: /home/shoofi/src/straight/qgis-trunk/src/core/qgsmaplayer.cpp: 323: (connectNotify) [[QgsMapLayer]] connected to 2drawingProgress(int,int)
Debug: /home/shoofi/src/straight/qgis-trunk/src/core/qgscoordinatetransform.cpp: 360: (transformBoundingBox) Entering transformBoundingBox...
Debug: /home/shoofi/src/straight/qgis-trunk/src/core/qgscoordinatetransform.cpp: 407: (transformBoundingBox) Projected extent: 236053.6784320765582379,882728.7364222751930356 : 236871.0813827015517745,883639.5299752112478018
Debug: /home/shoofi/src/straight/qgis-trunk/src/providers/ogr/qgsogrprovider.cpp: 360: (select) Setting spatial filter using POLYGON((236053.67843208 882728.73642228, 236053.67843208 883639.52997521, 236871.08138270 883639.52997521, 236871.08138270 882728.73642228, 236053.67843208 882728.73642228))
Warning: QString::arg: Argument missing: GEOS exception encountered: , <³\Zó
Debug: /home/shoofi/src/straight/qgis-trunk/src/core/qgsgeometry.cpp: 70: (throwGEOSException) GEOS exception encountered: 
Warning: Qt has caught an exception thrown from an event handler. Throwing
exceptions from an event handler is not supported in Qt. You must
reimplement QApplication::notify() and catch all exceptions there.

terminate called after throwing an instance of 'GEOSException'
Aborted

ewid.zip - a shapefile for testing (18.5 KB) Maciej Sieczka -, 2008-09-02 08:54 AM

Associated revisions

Revision ba96ab14
Added by Jürgen Fischer over 12 years ago

fix #1268

git-svn-id: http://svn.osgeo.org/qgis/trunk/[email protected] c8812cc2-4d05-0410-92ff-de0c093fc19c

Revision e6f07adc
Added by Jürgen Fischer over 12 years ago

fix #1268

git-svn-id: http://svn.osgeo.org/qgis/[email protected] c8812cc2-4d05-0410-92ff-de0c093fc19c

History

#1 Updated by Jürgen Fischer over 12 years ago

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

fixed in e6f07adc (SVN r9245)

#2 Updated by Maciej Sieczka - over 12 years ago

  • Status changed from Closed to Feedback
  • Resolution deleted (fixed)

Still crashes in 56b5bc28 (SVN r9246). Slightly different though:

Debug: /home/shoofi/src/straight/qgis-trunk/src/core/qgsmaplayer.cpp: 323: (connectNotify) [[QgsMapLayer]] connected to 2drawingProgress(int,int)
Debug: /home/shoofi/src/straight/qgis-trunk/src/providers/ogr/qgsogrprovider.cpp: 360: (select) Setting spatial filter using POLYGON((263.83267064 22.40958264, 263.83267064 248.89277539, 581.69753135 248.89277539, 581.69753135 22.40958264, 263.83267064 22.40958264))
ERROR 1: [[IllegalArgumentException]]: points must form a closed linestring
Debug: /home/shoofi/src/straight/qgis-trunk/src/core/qgsgeometry.cpp: 70: (throwGEOSException) GEOS exception encountered: 
                                                                                                                            Ź
Warning: Qt has caught an exception thrown from an event handler. Throwing
exceptions from an event handler is not supported in Qt. You must
reimplement QApplication::notify() and catch all exceptions there.

terminate called after throwing an instance of 'GEOSException'
Aborted

#3 Updated by Maciej Sieczka - over 12 years ago

I'm attaching a shapefile for testing.

#4 Updated by Tom Elwertowski about 12 years ago

Not able to reproduce on a Mac. May be platform-specific or only occurs when zooming to a specific place in the file.

Added application-wide exception handler for uncaught events in b254446b (SVN r9320). It will display an alert rather than crashing and may allow you to continue working if the unsuccessful zoom hasn't left QGIS in an unstable state.

#5 Updated by Marco Hugentobler almost 12 years ago

Could you test if this bug is still valid and close if not? I tested with geos-2.2.3 and geos-3.0.0 and had no crash with both.
There are a lot of warning about not closed linear rings on console, so my guess is that the geos exceptions are fixed now.

Marco

#6 Updated by Maciej Sieczka - almost 12 years ago

Replying to [comment:5 mhugent]:

Could you test if this bug is still valid and close if not? I tested with geos-2.2.3 and geos-3.0.0 and had no crash with both.

I can't test, because the shapefile attached to this ticket is not visible now in QGIS. No matter what CRS I use for a project or the shapefile itself. What is it?

#7 Updated by Paolo Cavallini almost 12 years ago

I confirm: the sample file loads without errors, but nothing is shown. On file (.dbf) of the three canonicals is missing.

#8 Updated by Paolo Cavallini over 11 years ago

Hi msieczka. It is unclear if the issue is still valid: the sample data are missing one of the necessary files (.dbf), so QGIS might be right not showing it.
Could you please test again with valid data?
Thanks.

#9 Updated by Paolo Cavallini over 11 years ago

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

Correction: the file does show up (you just have to zoom a lot). Zooming does not crash for me. Please reopen it if necessary.

#10 Updated by Anonymous over 11 years ago

Milestone Version 1.0.2 deleted

Also available in: Atom PDF