qgis / QGIS

QGIS is a free, open source, cross platform (lin/win/mac) geographical information system (GIS)
https://qgis.org
GNU General Public License v2.0
10.52k stars 2.99k forks source link

QGIS crashes in map composer when .qgz file created in one folder, transfered to another #51022

Closed erydit closed 1 year ago

erydit commented 1 year ago

What is the bug or the crash?

I am trying to use previously created project file for another project with absolutely same folder structure, but which covers another area. The project file contains several templates in map composer. QGIS crashes when opening a map template that contains any raster file.

If map template contains only vector files, all work normally.

Steps to reproduce the issue

Example.zip I have created a small reproducible example in the archive.

  1. Extract folder "proj A" and "proj B" from the Example.zip.
  2. Run qgis using "qproj.qgz" in proj A. It contains one DEM raster.
  3. Open "Map" template in map composer to make sure that all works as expected. Close QGIS.
  4. Copy "qproj.qgz" file from the "proj A" folder into the "proj B" folder. Proj B also consists from the single DEM raster with the same name but the raster covers different area.
  5. Run qgis using copied "qproj.qgz" in proj B.
  6. Try to open "Map" template in map composer.
  7. CRASH !!!

Versions

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd">

Версия QGIS | 3.28.0-Firenze | Кодовая ветка QGIS | Release 3.28 -- | -- | -- | -- Версия Qt | 5.15.7 Версия Python | 3.10.8 Версия GDAL/OGR | 3.5.3 Версия PROJ | 9.1.0 Версия базы данных реестра EPSG | v10.074 (2022-08-01) Версия GEOS | 3.11.0-CAPI-1.17.0 Версия SQLite | 3.39.4 Версия PDAL | 2.4.3 Версия PostgreSQL | unknown Версия SpatiaLite | 5.0.1 Версия QWT | 6.2.0 Версия QScintilla2 | 2.13.3 Версия ОС | Manjaro Linux   |   |   |   Включенные модули Python OSMDownloader | 1.0.3 quick_map_services | 0.19.32 processing_saga_nextgen | 0.0.7 osminfo | 0.7.1 processing_r | 3.1.1 valuetool | 3.0.15 processing | 2.12.99 sagaprovider | 2.12.99 db_manager | 0.1.20 grassprovider | 2.12.99 MetaSearch | 0.3.6 Версия QGIS 3.28.0-Firenze Кодовая ветка QGIS [Release 3.28](https://github.com/qgis/QGIS/tree/release-3_28) Версия Qt 5.15.7 Версия Python 3.10.8 Версия GDAL/OGR 3.5.3 Версия PROJ 9.1.0 Версия базы данных реестра EPSG v10.074 (2022-08-01) Версия GEOS 3.11.0-CAPI-1.17.0 Версия SQLite 3.39.4 Версия PDAL 2.4.3 Версия PostgreSQL unknown Версия SpatiaLite 5.0.1 Версия QWT 6.2.0 Версия QScintilla2 2.13.3 Версия ОС Manjaro Linux Включенные модули Python OSMDownloader 1.0.3 quick_map_services 0.19.32 processing_saga_nextgen 0.0.7 osminfo 0.7.1 processing_r 3.1.1 valuetool 3.0.15 processing 2.12.99 sagaprovider 2.12.99 db_manager 0.1.20 grassprovider 2.12.99 MetaSearch 0.3.6 ### Supported QGIS version - [X] I'm running a supported QGIS version according to the roadmap. ### New profile - [X] I tried with a new QGIS profile ### Additional context _No response_
agiudiceandrea commented 1 year ago

@erydit, I cannot reproduce the issue using QGIS 3.28.1 on Windows. Could you please actually try with the latest available QGIS version and using a new QGIS user profile as requested in the issue report form?

erydit commented 1 year ago

The new user profile haven't helped. The >sudo qgis command gives some error report after crashing. Maybe it could be useful. Or I can attach a coredump if it needed.

sudo qgis Warning: QStandardPaths: XDG_RUNTIME_DIR not set, defaulting to '/tmp/runtime-root' QGIS died on signal 11[New LWP 26715] [New LWP 26723] [New LWP 26787] [New LWP 26788] [New LWP 26789] [New LWP 26790] [New LWP 26791] [New LWP 26792] [New LWP 26793] [New LWP 26794] [New LWP 26795] [New LWP 26796] [New LWP 26797] [New LWP 26799] [New LWP 26800] [New LWP 26803] [New LWP 26805] [New LWP 26837] [New LWP 26841] [New LWP 26850] [New LWP 26882] [Thread debugging using libthread_db enabled] Using host libthread_db library "/usr/lib/libthread_db.so.1". 0x00007f0fae4e6097 in wait4 () from /usr/lib/libc.so.6 [Current thread is 1 (Thread 0x7f0fb1669cc0 (LWP 26714))] #0 0x00007f0fae4e6097 in wait4 () at /usr/lib/libc.so.6 #1 0x0000557ae961a7c8 in () #2 0x00007f0fae44ca00 in () at /usr/lib/libc.so.6 #3 0x00007f0fae49c64c in () at /usr/lib/libc.so.6 #4 0x00007f0fae44c958 in raise () at /usr/lib/libc.so.6 #5 0x00007f0fae44ca00 in () at /usr/lib/libc.so.6 #6 0x00007f0faf8ee2c4 in QgsRasterPipe::interface(Qgis::RasterPipeInterfaceRole) const () at /usr/lib/libqgis_core.so.3.28.0 #7 0x00007f0faf8ee393 in QgsRasterPipe::renderer() const () at /usr/lib/libqgis_core.so.3.28.0 #8 0x00007f0faf8f26fc in QgsRasterLayerRenderer::forceRasterRender() const () at /usr/lib/libqgis_core.so.3.28.0 #9 0x00007f0faf82bcf9 in QgsMapRendererJob::prepareJobs(QPainter*, QgsLabelingEngine*, bool) () at /usr/lib/libqgis_core.so.3.28.0 #10 0x00007f0faf82ea64 in QgsMapRendererCustomPainterJob::startPrivate() () at /usr/lib/libqgis_core.so.3.28.0 #11 0x00007f0faf79e964 in QgsLayoutItemMap::recreateCachedImageInBackground() () at /usr/lib/libqgis_core.so.3.28.0 #12 0x00007f0fb0cbda51 in () at /usr/lib/libQt5Core.so.5 #13 0x00007f0fb0cbffaf in QTimer::timeout(QTimer::QPrivateSignal) () at /usr/lib/libQt5Core.so.5 #14 0x00007f0fb0cb0b86 in QObject::event(QEvent*) () at /usr/lib/libQt5Core.so.5 #15 0x00007f0fb1978b1c in QApplicationPrivate::notify_helper(QObject*, QEvent*) () at /usr/lib/libQt5Widgets.so.5 #16 0x00007f0faf4f9ed4 in QgsApplication::notify(QObject*, QEvent*) () at /usr/lib/libqgis_core.so.3.28.0 #17 0x00007f0fb0c8cf98 in QCoreApplication::notifyInternal2(QObject*, QEvent*) () at /usr/lib/libQt5Core.so.5 #18 0x00007f0fb0cd7493 in QTimerInfoList::activateTimers() () at /usr/lib/libQt5Core.so.5 #19 0x00007f0fb0cd7ad2 in () at /usr/lib/libQt5Core.so.5 #20 0x00007f0faa71187b in g_main_context_dispatch () at /usr/lib/libglib-2.0.so.0 #21 0x00007f0faa768279 in () at /usr/lib/libglib-2.0.so.0 #22 0x00007f0faa710132 in g_main_context_iteration () at /usr/lib/libglib-2.0.so.0 #23 0x00007f0fb0cd7c4c in QEventDispatcherGlib::processEvents(QFlags) () at /usr/lib/libQt5Core.so.5 #24 0x00007f0fb0c8573c in QEventLoop::exec(QFlags) () at /usr/lib/libQt5Core.so.5 #25 0x00007f0fb0c90269 in QCoreApplication::exec() () at /usr/lib/libQt5Core.so.5 #26 0x0000557ae96158ef in () #27 0x00007f0fae437290 in () at /usr/lib/libc.so.6 #28 0x00007f0fae43734a in __libc_start_main () at /usr/lib/libc.so.6 #29 0x0000557ae9619095 in () [Inferior 1 (process 26714) detached] gdb returned 0

I am using ver. 3.28.0, because it is the latest available in Manjaro repositories, at the moment.

erydit commented 1 year ago

I finally updated to 3.28.1. It seems like the issue was already fixed in that release.