Bug report #16426

Rule-based renderers do not seem to implement symbolLayers() and causes crash

Added by Georg Wicke over 2 years ago. Updated over 1 year ago.

Status:Closed
Priority:High
Assignee:-
Category:Symbology
Affected QGIS version:2.18.7 Regression?:No
Operating System: Easy fix?:No
Pull Request or Patch supplied:No Resolution:
Crashes QGIS or corrupts data:Yes Copied to github as #:24335

Description

Steps to reproduce:
  1. Open a vector layer in QGIS
  2. Type the following into the python console:
    iface.activeLayer().rendererV2().legendSymbolItemsV2()[0].symbol().symbolLayers()
    

Result: Crashes with "pure virtual function call".

Expected result: Obviously, no crash :-)

The same happens with "symbolLayer(int layer)" etc.

History

#1 Updated by Giovanni Manghi over 2 years ago

  • Subject changed from Rule-based renderers do not seem to implement symbolLayers() to Rule-based renderers do not seem to implement symbolLayers() and causes crash
  • OS version deleted (10)
  • Operating System deleted (Windows)
  • Target version set to Version 2.18
  • Priority changed from Normal to High
  • Category set to Symbology
  • Description updated (diff)
  • Affected QGIS version changed from 2.18.3 to 2.18.7

#2 Updated by Giovanni Manghi over 2 years ago

  • Easy fix? set to No
  • Regression? set to No

#3 Updated by Alessandro Pasotti almost 2 years ago

Cannot reproduce in master

#4 Updated by Georg Wicke almost 2 years ago

Okay. Will try as soon as QGIS3 is published and I have it installed. Need to migrate first.

#5 Updated by Giovanni Manghi almost 2 years ago

  • Status changed from Open to Feedback

#6 Updated by Alexander Bruy over 1 year ago

  • Status changed from Feedback to Closed

Closed for the lack of feedback. Please reopen if necessary.

Also available in: Atom PDF