Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

crash on 2.2 and master when loading a vector style with missing SVG #18457

Closed
qgib opened this issue Mar 31, 2014 · 8 comments
Closed

crash on 2.2 and master when loading a vector style with missing SVG #18457

qgib opened this issue Mar 31, 2014 · 8 comments
Labels
Bug Either a bug report, or a bug fix. Let's hope for the latter! Crash/Data Corruption Symbology Related to vector layer symbology or renderers
Milestone

Comments

@qgib
Copy link
Contributor

qgib commented Mar 31, 2014

Author Name: Giovanni Manghi (@gioman)
Original Redmine Issue: 9959
Affected QGIS version: master
Redmine category:symbology
Assignee: Radim Blazek


Did not crash on 2.0.1

Can provide sample if necessary.

giovanni@sibirica ~ $ qgis
Warning: loading of qt translation failed [/usr/share/qt4/translations/qt_en_US]
Warning: QGraphicsScene::addItem: item has already been added to this scene
***************** deactivate parallellinetool
***************** deactivate circulararctool
***************** deactivate modifycirculararctool
QGIS died on signal 11[Thread debugging using libthread_db enabled]
Using host libthread_db library "/lib/x86_64-linux-gnu/libthread_db.so.1".
[New Thread 0x7f830593a700 (LWP 22294)]
[New Thread 0x7f830648c700 (LWP 22288)]
[New Thread 0x7f8306c8d700 (LWP 22287)]
[New Thread 0x7f8308301700 (LWP 22286)]
[New Thread 0x7f831cd2c700 (LWP 22282)]
[New Thread 0x7f831dc64700 (LWP 22281)]
[New Thread 0x7f831eae0700 (LWP 22280)]
0x00007f8355271a43 in poll () from /lib/x86_64-linux-gnu/libc.so.6
[Current thread is 1 (Thread 0x7f835c5627c0 (LWP 22268))]
#_0  0x00007f8355271a43 in poll () from /lib/x86_64-linux-gnu/libc.so.6
No symbol table info available.
#_1  0x00007f8353cebff6 in ?? () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
No symbol table info available.
#_2  0x00007f8353cec124 in g_main_context_iteration () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
No symbol table info available.
#_3  0x00007f8357e5e3bf in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib/x86_64-linux-gnu/libQtCore.so.4
No symbol table info available.
#_4  0x00007f8357259d9e in ?? () from /usr/lib/x86_64-linux-gnu/libQtGui.so.4
No symbol table info available.
#_5  0x00007f8357e2dc82 in QEventLoop::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib/x86_64-linux-gnu/libQtCore.so.4
No symbol table info available.
#_6  0x00007f8357e2ded7 in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib/x86_64-linux-gnu/libQtCore.so.4
No symbol table info available.
#_7  0x00007f8357e32f67 in QCoreApplication::exec() () from /usr/lib/x86_64-linux-gnu/libQtCore.so.4
No symbol table info available.
#_8  0x00000000004ef481 in main ()
No symbol table info available.
gdb returned 0
Aborted (core dumped)



Related issue(s): #18610 (relates)
Redmine related issue(s): 10153


@qgib
Copy link
Contributor Author

qgib commented Mar 31, 2014

Author Name: Giovanni Manghi (@gioman)


dataset and style attached


  • 7084 was configured as style_crash.tar.gz

@qgib
Copy link
Contributor Author

qgib commented May 18, 2014

Author Name: aperi2007 - (aperi2007 -)


is this the same of #18610?

@qgib
Copy link
Contributor Author

qgib commented May 18, 2014

Author Name: Jürgen Fischer (@jef-n)


  • subject was changed from QGIS 2.2/master crashes when loading a vector style with missing SVG to crash on 2.2 and master when loading a vector style with missing SVG

@qgib
Copy link
Contributor Author

qgib commented May 19, 2014

Author Name: Giovanni Manghi (@gioman)


aperi2007 - wrote:

is this the same of #18610?

it seems so.

@qgib
Copy link
Contributor Author

qgib commented May 20, 2014

Author Name: aperi2007 - (aperi2007 -)


I do some check.

It do crash surely if I set the unavailable svg as a fill pattern and set to map-units.

It start working, but after 2-3 zoom and pan the qgis crash and need to kill the zombie process to remove.
I test on windows 7 64bit with last dev version.

@qgib
Copy link
Contributor Author

qgib commented May 25, 2014

Author Name: Radim Blazek (@blazek)


Fixed in changeset "fc8f15a4e72aae997bd7b5f888ab4f418277f1ae".


  • status_id was changed from Open to Closed

@qgib
Copy link
Contributor Author

qgib commented May 25, 2014

Author Name: Radim Blazek (@blazek)


The problem was that SVG cache was searched comparing file name to full path returned by QgsSymbolLayerV2Utils::symbolNameToPath(). For non existing file the symbolNameToPath() returns empty string and thus cached symbol was not found and a new entry was always inserted.

I believe, that in theory it should work even without the fix. I am suspicious that it could be a bug in QMultiHash::insert() (i.e. QHash::insertMulti) not suitable for too many multi entries. It usually crashed when a key had few hundred of entries (300-400).

@qgib
Copy link
Contributor Author

qgib commented May 26, 2014

Author Name: Radim Blazek (@blazek)


Ticket fixed with funding from Regione Toscana-SITA (CIG:ZB10C90E5A).


  • assigned_to_id was configured as Radim Blazek

@qgib qgib added Bug Either a bug report, or a bug fix. Let's hope for the latter! Symbology Related to vector layer symbology or renderers Crash/Data Corruption labels May 24, 2019
@qgib qgib added this to the Version 2.4 milestone May 24, 2019
@qgib qgib closed this as completed May 24, 2019
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Bug Either a bug report, or a bug fix. Let's hope for the latter! Crash/Data Corruption Symbology Related to vector layer symbology or renderers
Projects
None yet
Development

No branches or pull requests

1 participant