Bug report #314

8 Preview 2 crashes on save

Added by Redmine Admin about 14 years ago. Updated over 11 years ago.

Status:Closed
Priority:Low
Assignee:Gary Sherman
Category:Project Loading/Saving
Affected QGIS version: Regression?:No
Operating System:Debian Easy fix?:No
Pull Request or Patch supplied: Resolution:wontfix
Crashes QGIS or corrupts data: Copied to github as #:10373

Description

I opened a file created in v.7.4 in version 8 Preview 2. It displayed correctly, with minor exceptions. When I tried to save the file, an empty file was created and qgis crashed.
Saving a simple file created only in version 8 worked fine.

musquash_map.qgs - The file I opened which qgis crashed when saving. (30.8 KB) Redmine Admin, 2006-09-28 10:36 AM

points.zip - The shapefile which seems to cause the crash. It was made in QGIS .74 (911 Bytes) Redmine Admin, 2006-11-19 11:52 AM

History

#1 Updated by Martin Dobias about 14 years ago

For now we don't maintain backward compatibility of project files between different QGIS versions, thus situation like this is possible.

I think this might be solved by issuing a warning "your project file is for older version, problems possible".

#2 Updated by Gavin Macaulay - about 14 years ago

I've added such a warning (). It currently only appears on the terminal as the project reading code is supposed to be gui independent so can't produce a warning dialog box.

However, if the project file loaded mostly ok, the saving shouldn't then crash. Your .qgs file is quite long and includes lots of layers - are you able to try progressively removing layers to see which layer causes the crash when saving?

#3 Updated by Redmine Admin about 14 years ago

The layer causing the problem is the vector point layer "points.shp". It does not appear when I open the project, and trying to open its properties causes QGIS to crash.

Loading the layer in a new project in .8 and then saving the project doesn't cause a crash.

Here's a backtrace for the save:
(gdb) bt
#0  0xb6d7b0e9 in [[QgsVectorLayer]]::writeXML_ () from /usr/lib/libqgis_gui.so.0
#3905  0xb6ccd8f8 in [[QgsMapLayer]]::writeXML () from /usr/lib/libqgis_gui.so.0
#3906  0xb6cca02c in [[QgsMapCanvas]]::writeXML () from /usr/lib/libqgis_gui.so.0
#3907  0xb6d19ac0 in [[QgsProject]]::write () from /usr/lib/libqgis_gui.so.0
#3908  0xb6c49c5a in [[QgisApp]]::fileSaveAs () from /usr/lib/libqgis_gui.so.0
#3909  0xb6dbfa69 in [[QgisApp]]::qt_metacall () from /usr/lib/libqgis_gui.so.0
#3910  0xb7e542bd in QMetaObject::activate () from /usr/lib/libQtCore.so.4
#3911  0xb7e544e9 in QMetaObject::activate () from /usr/lib/libQtCore.so.4
#3912  0xb765b069 in QAction::triggered () from /usr/lib/libQtGui.so.4
#3913  0xb765ba07 in QAction::activate () from /usr/lib/libQtGui.so.4
#10 0xb78b7461 in QMenu::wheelEvent () from /usr/lib/libQtGui.so.4
#3914 0xb78ba95f in QMenu::mouseReleaseEvent () from /usr/lib/libQtGui.so.4
#3915 0xb769eeec in QWidget::event () from /usr/lib/libQtGui.so.4
#3916 0xb78b4a13 in QMenu::event () from /usr/lib/libQtGui.so.4
#3917 0xb765f7c5 in QApplicationPrivate::notify_helper ()
   from /usr/lib/libQtGui.so.4
#3918 0xb7660a5a in QApplication::notify () from /usr/lib/libQtGui.so.4
#3919 0xb76b2837 in QApplication::x11ProcessEvent () from /usr/lib/libQtGui.so.4
#3920 0xb76b1568 in QApplication::x11ProcessEvent () from /usr/lib/libQtGui.so.4
#3921 0xb76c284e in non-virtual thunk to QDesktopWidget::~QDesktopWidget() ()
   from /usr/lib/libQtGui.so.4
#3922 0xb7e4668a in QEventLoop::processEvents () from /usr/lib/libQtCore.so.4
#3923 0xb7e4689d in QEventLoop::exec () from /usr/lib/libQtCore.so.4
---Type <return> to continue, or q <return> to quit---
#3924 0xb7e48fe7 in QCoreApplication::exec () from /usr/lib/libQtCore.so.4
#3925 0xb765f565 in QApplication::exec () from /usr/lib/libQtGui.so.4
#3926 0x0804c488 in main ()

Here's a backtrace from trying to open the layer's properties window:
(gdb) bt
#0  0xb6d9efb8 in [[QgsVectorLayerProperties]]::reset ()
   from /usr/lib/libqgis_gui.so.0
#3905  0xb6d9fee3 in [[QgsVectorLayerProperties]]::QgsVectorLayerProperties ()
   from /usr/lib/libqgis_gui.so.0
#3906  0xb6d8a6ed in [[QgsVectorLayer]]::showLayerProperties ()
   from /usr/lib/libqgis_gui.so.0
#3907  0xb7f5c746 in [[QgsLegend]]::legendLayerShowProperties ()
   from /usr/lib/libqgis_legend.so.0
#3908  0xb7f6e3f1 in [[QgsLegend]]::qt_metacall () from /usr/lib/libqgis_legend.so.0
#3909  0xb7e662bd in QMetaObject::activate () from /usr/lib/libQtCore.so.4
#3910  0xb7e664e9 in QMetaObject::activate () from /usr/lib/libQtCore.so.4
#3911  0xb766d069 in QAction::triggered () from /usr/lib/libQtGui.so.4
#3912  0xb766da07 in QAction::activate () from /usr/lib/libQtGui.so.4
#3913  0xb78c9461 in QMenu::wheelEvent () from /usr/lib/libQtGui.so.4
#10 0xb78cc95f in QMenu::mouseReleaseEvent () from /usr/lib/libQtGui.so.4
#3914 0xb76b0eec in QWidget::event () from /usr/lib/libQtGui.so.4
#3915 0xb78c6a13 in QMenu::event () from /usr/lib/libQtGui.so.4
#3916 0xb76717c5 in QApplicationPrivate::notify_helper ()
   from /usr/lib/libQtGui.so.4
#3917 0xb7672a5a in QApplication::notify () from /usr/lib/libQtGui.so.4
#3918 0xb76c4837 in QApplication::x11ProcessEvent () from /usr/lib/libQtGui.so.4
#3919 0xb76c3568 in QApplication::x11ProcessEvent () from /usr/lib/libQtGui.so.4
#3920 0xb76d484e in non-virtual thunk to QDesktopWidget::~QDesktopWidget() ()
---Type <return> to continue, or q <return> to quit---
   from /usr/lib/libQtGui.so.4
#3921 0xb7e5868a in QEventLoop::processEvents () from /usr/lib/libQtCore.so.4
#3922 0xb7e5889d in QEventLoop::exec () from /usr/lib/libQtCore.so.4
#3923 0xb78cabd3 in QMenu::exec () from /usr/lib/libQtGui.so.4
#3924 0xb7f61fd1 in [[QgsLegend]]::handleRightClickEvent ()
   from /usr/lib/libqgis_legend.so.0
#3925 0xb7f6375d in [[QgsLegend]]::mousePressEvent ()
   from /usr/lib/libqgis_legend.so.0
#3926 0xb76b0f05 in QWidget::event () from /usr/lib/libQtGui.so.4
#3927 0xb789db84 in QFrame::event () from /usr/lib/libQtGui.so.4
#3928 0xb79118c4 in QAbstractScrollArea::viewportEvent ()
   from /usr/lib/libQtGui.so.4
#3929 0xb7964159 in QAbstractItemView::viewportEvent ()
   from /usr/lib/libQtGui.so.4
#3930 0xb7910705 in QAbstractScrollArea::minimumSizeHint ()
   from /usr/lib/libQtGui.so.4
#3931 0xb76717c5 in QApplicationPrivate::notify_helper ()
   from /usr/lib/libQtGui.so.4
#3932 0xb7672a5a in QApplication::notify () from /usr/lib/libQtGui.so.4
#3933 0xb76c3e7d in QApplication::x11ProcessEvent () from /usr/lib/libQtGui.so.4
#3934 0xb76c3568 in QApplication::x11ProcessEvent () from /usr/lib/libQtGui.so.4
#3935 0xb76d484e in non-virtual thunk to QDesktopWidget::~QDesktopWidget() ()
   from /usr/lib/libQtGui.so.4
---Type <return> to continue, or q <return> to quit---
#3936 0xb7e5868a in QEventLoop::processEvents () from /usr/lib/libQtCore.so.4
#3937 0xb7e5889d in QEventLoop::exec () from /usr/lib/libQtCore.so.4
#3938 0xb7e5afe7 in QCoreApplication::exec () from /usr/lib/libQtCore.so.4
#36 0xb7671565 in QApplication::exec () from /usr/lib/libQtGui.so.4
#37 0x0804c488 in main ()

#4 Updated by Gavin Macaulay - about 14 years ago

Are you able to attach the points.shp file?

#5 Updated by Marco Hugentobler about 14 years ago

It does not crash for me, even when opening a project created in 0.7.4 in 0.8 with the point shapefile. The content is not ok, but this does not matter since there is no backward compatibility anyway.

#6 Updated by Gary Sherman almost 14 years ago

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

Based on mhugent's last comment, I'm going to close this bug since it seems to be related to project compatibility.

#7 Updated by Anonymous over 11 years ago

Milestone Version 0.8 deleted

Also available in: Atom PDF