-
-
Notifications
You must be signed in to change notification settings - Fork 405
Querymap fails for polygon layers with labels only (no styles) #6262
Copy link
Copy link
Closed
Milestone
Description
Currenly msDrawQueryLayer fails with the following error if the layer type is polygon, the querymap style is MS_HILITE, and the layer class contains only label elements.
msDrawMap(): Image handling error. Failed to draw layer named '...'.;msDrawQueryLayer(): General error message. Don't know how to draw class Class (0) of layer ... without a style definition.
The same setting works with the point and line layers (where the labels are being highlighted) so I guess it should also work with the polygon layers.
The corresponding code looks like this:
if(layer->type == MS_LAYER_POLYGON) { /* alter BOTTOM style since that's almost always the fill */
if (layer->class[i]->styles == NULL) {
msSetError(MS_MISCERR, "Don't know how to draw class %s of layer %s without a style definition.", "msDrawQueryLayer()", layer->class[i]->name, layer->name);
msFree(colorbuffer);
msFree(mindistancebuffer);
return(MS_FAILURE);
}
however the classes with no styles can surely be handled later in the code:
} else if (layer->class[i]->numlabels > 0) {
colorbuffer[i] = layer->class[i]->labels[0]->color;
layer->class[i]->labels[0]->color = map->querymap.color;
}
Reactions are currently unavailable
Metadata
Metadata
Assignees
Labels
No labels