Bug #5251

if "Options -> CRS -> coordinate reference system for new layers" is set "prompt for CRS" then creating QgsVectorLayer from different thread crashes QGIS

Added by Aníbal Pacheco about 1 year ago. Updated 6 months ago.

Status:Closed Start Date:03/28/2012
Priority:Blocker Due date:
Assigned to:- % Done:

0%

Category:-
Target version:Version 2.0.0
Platform: Patch supplied:No
Platform version: Affected version:master
Status info: Causes crash or corruption:Yes
Resolution:fixed

Description

Using master installed following http://hub.qgis.org/projects/quantum-gis/wiki/Download
Platform and platform version are specified on this issue metadata.
(2 shapefiles for sample data are attached)
Output when trying to merge:

$ qgis
Warning: loading of qgis translation failed [/usr/share/qgis/i18n//qgis_en_US]
Warning: loading of qt translation failed [/usr/share/qt4/translations/qt_en_US]
Warning: QPixmap: It is not safe to use pixmaps outside the GUI thread
Warning: QPixmap: It is not safe to use pixmaps outside the GUI thread
Warning: QPixmap: It is not safe to use pixmaps outside the GUI thread
Warning: QPixmap: It is not safe to use pixmaps outside the GUI thread
Warning: QPixmap: It is not safe to use pixmaps outside the GUI thread
Warning: qgis.bin: Fatal IO error: client killed

sample_shapefiles.tgz (300 kB) Aníbal Pacheco, 03/28/2012 11:45 am


Related issues

related to QGIS Desktop - Bug #5962: "Merge Shapefile to one" crashes QGIS if .prj files are m... Closed 07/06/2012

History

Updated by Alexander Bruy about 1 year ago

  • Category set to fTools
  • Assigned to set to Alexander Bruy

Updated by Giovanni Manghi about 1 year ago

  • Status changed from New to Feedback

The cause can be the lack of .prj files. I tested on Windows and it crashed at the first attempt, then I fixed the shapes by adding the .prj files, run again the operation and it went well. Can you give it a try too?

Updated by Aníbal Pacheco about 1 year ago

Yes, it worked well for me too after setting the projection

Updated by Giovanni Manghi about 1 year ago

  • Subject changed from Merge shapefiles into one kills QGis to "Merge shapefiles to one" tool causes QGIS to crash if shapes are missing the .prj file

Updated by Giovanni Manghi about 1 year ago

  • Causes crash or corruption changed from No to Yes

Updated by Alexander Bruy about 1 year ago

Well, the problem is not in Merge shapefiles to one. And not in the lack of .prj file (at least this is not main issue). The problem is that now QGIS by default asks for layer CRS when new new layer created or loaded (as requested in #4432). Seems that calling CRS selector from thread causes crash.

When I set "Coordinate Reference System for new layers" to "Use default CRS listed below" or to "Use project CRS" Merge shapefiles works fine even if there is no .prj file. So I think we can close this ticket and maybe open another about restoring previous default settings "Use default CRS listed below" because current settings is a source of many problems, for example see #4379, #4377 and other related tickets

Updated by Aníbal Pacheco about 1 year ago

When you choose the whole directory (default) the CRS selector dialog popups well for each shapefile in the directory, but after select the CRS for the last shapefile QGIS crashes.

Updated by Giovanni Manghi about 1 year ago

Alexander Bruy wrote:

So I think we can close this ticket and maybe open another about restoring previous default settings "Use default CRS listed below" because current settings is a source of many problems, for example see #4379, #4377 and other related tickets

Hi Alexander, I would not prefer to restore "Use default CRS listed below" because the lack of a explicit CRS (tiff+worldfile, missing .prj in shapes, etc.) is a source of a lot of confusion among inexperienced users when they add layers to a project. Moreover a user can always change the QGIS options as are now, so it would be always better to fix this issue rather than workaround it. Just my 2c :)

cheers

Updated by Alexander Bruy about 1 year ago

Ok, but IMHO this is not an fTools issue. As I can see crash occurred during initialization of QgsVectorLayer object

Updated by Giovanni Manghi about 1 year ago

Alexander Bruy wrote:

Ok, but IMHO this is not an fTools issue. As I can see crash occurred during initialization of QgsVectorLayer object

ok right, so a new ticket should be filed.

Updated by Giovanni Manghi about 1 year ago

Alexander Bruy wrote:

Ok, but IMHO this is not an fTools issue. As I can see crash occurred during initialization of QgsVectorLayer object

Hi Alex, can you please file the proper ticket or change the title and description of this one? thanks.

Updated by Alexander Bruy about 1 year ago

  • Subject changed from "Merge shapefiles to one" tool causes QGIS to crash if shapes are missing the .prj file to if "Options -> CRS -> coordinate reference system for new layers" is set "prompt for CRS" then creating QgsVectorLayer from different thread crashes QGIS
  • Platform changed from ubuntu to all
  • Platform version deleted (oneiric)

Updated by Alexander Bruy about 1 year ago

  • Category deleted (fTools)
  • Assigned to deleted (Alexander Bruy)

Updated by Jürgen Fischer 11 months ago

should have been fixed with fdb2475d

Updated by Giovanni Manghi 11 months ago

Jürgen Fischer wrote:

should have been fixed with fdb2475d

is this fix part of qgis 1.8? if yes then it seems that somehow is still affected, see #5962

Updated by Paolo Cavallini 10 months ago

  • Target version set to Version 2.0.0

Updated by Giovanni Manghi 9 months ago

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

Definitely works on master.

Updated by Gerhard Spieles 9 months ago

  • Status changed from Closed to Reopened

Hello Giovanni,

just tested it with master 29e009f.
QGis-dev.exe crash.

Updated by Giovanni Manghi 9 months ago

  • Platform deleted (all)
  • Resolution deleted (fixed)

gespiel - wrote:

Hello Giovanni,

just tested it with master 29e009f. QGis-dev.exe crash.

ok, I will try on Windows too asap.

Updated by Giovanni Manghi 6 months ago

  • Priority changed from Normal to High

Jürgen Fischer wrote:

should have been fixed with fdb2475d

still crashes master on both windows and linux.

Updated by Giovanni Manghi 6 months ago

probable duplicate of #5962

Updated by Giovanni Manghi 6 months ago

  • Priority changed from High to Blocker

this should be a regression, so it is a blocker.

Updated by Jürgen Fischer 6 months ago

  • Status changed from Reopened to Closed

Updated by Giovanni Manghi 6 months ago

  • Resolution set to fixed

Also available in: Atom PDF