Ticket #3528 (closed bug: fixed)

Opened 2 years ago

Last modified 2 years ago

uniqueValue() function is needed on vector layer level

Reported by: jrm Owned by: mhugent
Priority: major: does not work as expected Milestone: Version 1.7.0
Component: Vectors Version:
Keywords: Cc:
Platform Version: Platform: Windows
Must Fix for Release: No Awaiting user input: no

Description

When you classify a spatialite layer which has joined attributes (with the new table join), the rv15265 makes a full crash on WinXP (I didn't try under another OS).

Here is the DebugView?'s log related to this event:

[1352] Object::connect: (sender [1352] Object::connect: (receiver name: 'QgsSymbolV2SelectorDialogBase') [1352] d:\progs\c\qgis_unstable\src\app\qgslabeldialog.cpp(60) : (QgsLabelDialog::init) entering. [1352] d:\progs\c\qgis_unstable\src\providers\spatialite\qgsspatialiteprovider.cpp(2195) : (QgsSpatiaLiteProvider::field) Field 12 not found.

The same layer converted to shp and joined with the same dbf table doesn't crash but the classification is empty.

Change History

Changed 2 years ago by mhugent

  • owner set to mhugent

Could you attach the data to the ticket or mail it to me privately (marco@…)?

Changed 2 years ago by mhugent

  • priority changed from critical: causes crash or data corruption to major: does not work as expected
  • summary changed from classify a joind sqlite crash qgis to uniqueValue() function is needed on vector layer level

The crash itself is fixed in r15305. The main problem however is that the function uniqueValues() only exist on datasource level, not on vector layer level (thus ignoring the joined fields for classification). Therefore, I'm changing the title of the ticket.

Changed 2 years ago by mhugent

  • status changed from new to closed
  • resolution set to fixed

Fixed in r15310

Changed 2 years ago by jrm

thanks a lot marco !

Note: See TracTickets for help on using tickets.