Bug report #16810
QGIS crash when digitizing in a memory layer and not saving the layer
Status: | Closed | ||
---|---|---|---|
Priority: | High | ||
Assignee: | - | ||
Category: | Data Provider | ||
Affected QGIS version: | master | Regression?: | Yes |
Operating System: | Both Linux and Windows | Easy fix?: | No |
Pull Request or Patch supplied: | No | Resolution: | duplicate |
Crashes QGIS or corrupts data: | Yes | Copied to github as #: | 24709 |
Description
QGIS crashes both on Windows and Linux master when you have a non saved memory layer and try to either stop QGIS or create a new project.
To reproduce:
- create a fresh epsg:4326 project
- create a POINT / epsg:4326 Temporary Scratch layer
- layer will be in edit mode so you can
- add one point
- now without saving the layer, or stopping the edits: either quit QGIS, or try to create a fresh project
- in Windows you will see the Crash dialog holding the information below.
Let me know if a backtrace in Linux is usefull
h2. Report Details *Crash ID*: 8a851254f9aa3594e2851c40f665e69a8872d120 *Stack Trace* (Qt5Core) QMetaObject::cast (unknown file):(unknown line) ((unknown module)) QgsTextFormat::setBuffer (unknown file):(unknown line) ((unknown module)) QgsTextFormat::setBuffer (unknown file):(unknown line) ((unknown module)) QgsTextFormat::setBuffer (unknown file):(unknown line) ((unknown module)) QgsTextFormat::setBuffer (unknown file):(unknown line) ((unknown module)) QgsTextFormat::setBuffer (unknown file):(unknown line) ((unknown module)) QgsTextFormat::setBuffer (unknown file):(unknown line) (Qt5Core) QMetaObject::activate (unknown file):(unknown line) ((unknown module)) QgsTextFormat::setBuffer (unknown file):(unknown line) ((unknown module)) QgsTextFormat::setBuffer (unknown file):(unknown line) ((unknown module)) QgsTextFormat::setBuffer (unknown file):(unknown line) ((unknown module)) QgsTextFormat::setBuffer (unknown file):(unknown line) (Qt5Core) QMetaObject::activate (unknown file):(unknown line) ((unknown module)) QgsTextFormat::setBuffer (unknown file):(unknown line) ((unknown module)) QgsTextFormat::setBuffer (unknown file):(unknown line) ((unknown module)) QgsTextFormat::setBuffer (unknown file):(unknown line) ((unknown module)) QgsTextFormat::setBuffer (unknown file):(unknown line) ((unknown module)) QgsTextFormat::setBuffer (unknown file):(unknown line) ((unknown module)) QgsTextFormat::setBuffer (unknown file):(unknown line) ((unknown module)) QgisApp::functionProfile (unknown file):(unknown line) ((unknown module)) QgisApp::functionProfile (unknown file):(unknown line) ((unknown module)) QgisApp::functionProfile (unknown file):(unknown line) (Qt5Widgets) QWidget::event (unknown file):(unknown line) (Qt5Widgets) QMainWindow::event (unknown file):(unknown line) ((unknown module)) QgisApp::functionProfile (unknown file):(unknown line) (Qt5Widgets) QApplicationPrivate::notify_helper (unknown file):(unknown line) (Qt5Widgets) QApplication::notify (unknown file):(unknown line) ((unknown module)) QgsTextFormat::setBuffer (unknown file):(unknown line) (Qt5Core) QCoreApplication::notifyInternal2 (unknown file):(unknown line) (Qt5Widgets) QWidgetPrivate::close_helper (unknown file):(unknown line) (Qt5Widgets) QSizePolicy::QSizePolicy (unknown file):(unknown line) (Qt5Widgets) QSizePolicy::QSizePolicy (unknown file):(unknown line) (Qt5Widgets) QApplicationPrivate::notify_helper (unknown file):(unknown line) (Qt5Widgets) QApplication::notify (unknown file):(unknown line) ((unknown module)) QgsTextFormat::setBuffer (unknown file):(unknown line) (Qt5Core) QCoreApplication::notifyInternal2 (unknown file):(unknown line) ((unknown module)) QGuiApplicationPrivate::processCloseEvent (unknown file):(unknown line) ((unknown module)) QWindowSystemInterface::sendWindowSystemEvents (unknown file):(unknown line) (Qt5Core) QEventDispatcherWin32::processEvents (unknown file):(unknown line) (USER32) TranslateMessageEx (unknown file):(unknown line) (USER32) TranslateMessage (unknown file):(unknown line) (Qt5Core) QEventDispatcherWin32::processEvents (unknown file):(unknown line) ((unknown module)) qt_plugin_query_metadata (unknown file):(unknown line) (Qt5Core) QEventLoop::exec (unknown file):(unknown line) (Qt5Core) QCoreApplication::exec (unknown file):(unknown line) ((unknown module)) QgisApp::functionProfile (unknown file):(unknown line) (kernel32) BaseThreadInitThunk (unknown file):(unknown line) (ntdll) RtlUserThreadStart (unknown file):(unknown line) *Plugins* *Project Info* *QGIS Info* QGIS Version: 2.99.0-Master QGIS code revision: c69c596 Compiled against Qt: 5.7.1 Running against Qt: 5.7.1 Compiled against GDAL: 2.2.0 Running against GDAL: 2.2.0 *System Info* CPU Type: x86_64 Kernel Type: winnt Kernel Version: 6.1.7601
History
#1 Updated by Giovanni Manghi over 7 years ago
- Status changed from Open to Feedback
Hi Richard! Only on master? Regression?
#2 Updated by Richard Duivenvoorde over 7 years ago
Yes, with me here only on master (tested 2.18.10, and all goes well there).
So: no, not a regression.
Have a lot of crashes with master currently see also #16802
My gut feeling is that there is something wrong in the Qt5/multithreading stuff needed for parallel rendering and or the networking stuff which is also done in different threads..
#3 Updated by Giovanni Manghi over 7 years ago
- Regression? changed from No to Yes
- Crashes QGIS or corrupts data changed from No to Yes
- Priority changed from Normal to High
- Status changed from Feedback to Open
Richard Duivenvoorde wrote:
Yes, with me here only on master (tested 2.18.10, and all goes well there).
then is a regression :) we expect that all is working on 2.18 (the next LTR) to work also on 3, correct? ;)
#4 Updated by Matthias Kuhn over 7 years ago
Thanks Richard and Nathan!
If you are able to provide a trace on linux, that would be great. Also for reference / comparison to review this new system.
#5 Updated by Nyall Dawson over 7 years ago
- Resolution set to duplicate
- Status changed from Open to Closed
Duplicate of #16771
#6 Updated by Richard Duivenvoorde over 7 years ago
Nyall Dawson wrote:
Duplicate of #16771
@Nyall, no notion of a fix there too. Is it fixed? Or just closed because I missed Matthias call for a stacktrace?