[mapserver-commits] r7749 - trunk/mapserver

svn at osgeo.org svn at osgeo.org
Thu Jun 26 01:22:04 EDT 2008


Author: sdlime
Date: 2008-06-26 01:22:04 -0400 (Thu, 26 Jun 2008)
New Revision: 7749

Modified:
   trunk/mapserver/HISTORY.TXT
   trunk/mapserver/mapdraw.c
Log:
Fixed issue where path following lines were not being drawn if FORCEd. (#2600)

Modified: trunk/mapserver/HISTORY.TXT
===================================================================
--- trunk/mapserver/HISTORY.TXT	2008-06-26 02:59:08 UTC (rev 7748)
+++ trunk/mapserver/HISTORY.TXT	2008-06-26 05:22:04 UTC (rev 7749)
@@ -12,6 +12,8 @@
 Current Version (SVN trunk):
 ----------------------------
 
+- mapdraw.c: Fixed issue where path following lines were not being drawn if FORCEd. (#2600)
+
 - mapshape.c: Applied patch to make the location of tiled data relative to the
   tileindex directory if SHAPEPATH is not set. (#2369)
 

Modified: trunk/mapserver/mapdraw.c
===================================================================
--- trunk/mapserver/mapdraw.c	2008-06-26 02:59:08 UTC (rev 7748)
+++ trunk/mapserver/mapdraw.c	2008-06-26 05:22:04 UTC (rev 7749)
@@ -1417,7 +1417,7 @@
         msOffsetShapeRelativeTo(shape, layer);
 
       /* Bug #1620 implementation */
-      if ( layer->class[c]->label.autofollow == MS_TRUE ) {
+      if(layer->class[c]->label.autofollow == MS_TRUE) {
         layer->class[c]->label.position = MS_CC; /* Force all label positions to MS_CC regardless if a path is computed */
 
         /* Determine the label path if it has not been computed above */
@@ -1450,28 +1450,27 @@
 
         /* Regular labels: Only attempt to find the label point if we have not */
         /* succesfully calculated it previously                                */
-        if ((bLabelNoClip == MS_TRUE && annocallret == MS_SUCCESS) ||
-            (msPolylineLabelPoint(shape, &annopnt, layer->class[c]->label.minfeaturesize, &angle, &length) == MS_SUCCESS)) {
-        labelObj label = layer->class[c]->label;
+        if ((bLabelNoClip == MS_TRUE && annocallret == MS_SUCCESS) || (msPolylineLabelPoint(shape, &annopnt, layer->class[c]->label.minfeaturesize, &angle, &length) == MS_SUCCESS)) {
+          labelObj label = layer->class[c]->label;
           
-        if(label.angle != 0)
-          label.angle -= map->gt.rotation_angle;
+          if(label.angle != 0)
+            label.angle -= map->gt.rotation_angle;
 
-        /* Angle derived from line overrides even the rotation value. */
-	if(label.autoangle) label.angle = angle;
+          /* Angle derived from line overrides even the rotation value. */
+	  if(label.autoangle) label.angle = angle;
 
-        if(layer->labelcache) {
+          if(layer->labelcache) {
             if(msAddLabel(map, layer->index, c, shape->index, shape->tileindex, &annopnt, NULL, shape->text, length, &label) != MS_SUCCESS) return(MS_FAILURE);
-	} else {
-          if(layer->class[c]->numstyles > 0 && MS_VALID_COLOR(layer->class[c]->styles[0]->color)) {
-            for(s=0; s<layer->class[c]->numstyles; s++)
-              msDrawMarkerSymbol(&map->symbolset, image, &annopnt, (layer->class[c]->styles[s]), layer->scalefactor);
-	  }
-	  msDrawLabel(image, annopnt, shape->text, &label, &map->fontset, layer->scalefactor);
+	  } else {
+            if(layer->class[c]->numstyles > 0 && MS_VALID_COLOR(layer->class[c]->styles[0]->color)) {
+              for(s=0; s<layer->class[c]->numstyles; s++)
+                msDrawMarkerSymbol(&map->symbolset, image, &annopnt, (layer->class[c]->styles[s]), layer->scalefactor);
+	    }
+	    msDrawLabel(image, annopnt, shape->text, &label, &map->fontset, layer->scalefactor);
 
-        }
+          }
+	}
       }
-      }
 
       break;
     case(MS_SHAPE_POLYGON):
@@ -1579,8 +1578,8 @@
     }
     break; /* end MS_LAYER_POINT */
 
-  case MS_LAYER_LINE:
-    if(shape->type != MS_SHAPE_POLYGON && shape->type != MS_SHAPE_LINE){
+  case MS_LAYER_LINE:    
+    if(shape->type != MS_SHAPE_POLYGON && shape->type != MS_SHAPE_LINE) {
       msSetError(MS_MISCERR, "Only polygon or line shapes can be drawn using a line layer definition.", "msDrawShape()");
       return(MS_FAILURE);
     }
@@ -2039,213 +2038,211 @@
 
 int msDrawLabelCache(imageObj *image, mapObj *map)
 {
-    int nReturnVal = MS_SUCCESS;
-    if (image)
-    {
-        if( MS_RENDERER_GD(image->format) || MS_RENDERER_AGG(image->format)) {          
-            pointObj p;
-            int i, l, priority;
-            int oldAlphaBlending=0;
-            rectObj r;
-            shapeObj billboard;
-            lineObj billboard_line;
-            pointObj billboard_points[5];
-            labelCacheMemberObj *cachePtr=NULL;
-            layerObj *layerPtr=NULL;
-            labelObj *labelPtr=NULL;
+  int nReturnVal = MS_SUCCESS;
+  if(image) {
+    if(MS_RENDERER_GD(image->format) || MS_RENDERER_AGG(image->format)) {          
+      pointObj p;
+      int i, l, priority;
+      int oldAlphaBlending=0;
+      rectObj r;
+      shapeObj billboard;
+      lineObj billboard_line;
+      pointObj billboard_points[5];
+      labelCacheMemberObj *cachePtr=NULL;
+      layerObj *layerPtr=NULL;
+      labelObj *labelPtr=NULL;
 
-            int marker_width, marker_height;
-            int marker_offset_x, marker_offset_y;
-            rectObj marker_rect;
-            int map_edge_buffer=0;
-            const char *value;
+      int marker_width, marker_height;
+      int marker_offset_x, marker_offset_y;
+      rectObj marker_rect;
+      int map_edge_buffer=0;
+      const char *value;
+
 #ifdef USE_AGG
-            if( MS_RENDERER_AGG(image->format) ) 
-                msAlphaGD2AGG(image);
-            else
+      if(MS_RENDERER_AGG(image->format)) 
+        msAlphaGD2AGG(image);
+      else
 #endif
-            {/* bug 490 - switch on alpha blending for label cache */
-                oldAlphaBlending = image->img.gd->alphaBlendingFlag;
-                gdImageAlphaBlending( image->img.gd, 1);
-            }
+      { /* bug 490 - switch on alpha blending for label cache */
+        oldAlphaBlending = image->img.gd->alphaBlendingFlag;
+        gdImageAlphaBlending( image->img.gd, 1);
+      }
             
-            billboard.numlines=1;
-            billboard.line=&billboard_line;
-            billboard.line->numpoints=5;
-            billboard.line->point=billboard_points;
-            /* Look for labelcache_map_edge_buffer map metadata
-             * If set then the value defines a buffer (in pixels) along the edge of the
-             * map image where labels can't fall
-             */
-            if ((value = msLookupHashTable(&(map->web.metadata),
-                    "labelcache_map_edge_buffer")) != NULL)
-            {
-                map_edge_buffer = atoi(value);
-                if (map->debug)
-                    msDebug("msDrawLabelCache(): labelcache_map_edge_buffer = %d\n", map_edge_buffer);
-            }
+      billboard.numlines = 1;
+      billboard.line = &billboard_line;
+      billboard.line->numpoints = 5;
+      billboard.line->point = billboard_points;
 
-            
+      /* Look for labelcache_map_edge_buffer map metadata
+       * If set then the value defines a buffer (in pixels) along the edge of the
+       * map image where labels can't fall
+       */
+      if((value = msLookupHashTable(&(map->web.metadata), "labelcache_map_edge_buffer")) != NULL) {
+        map_edge_buffer = atoi(value);
+        if(map->debug)
+        msDebug("msDrawLabelCache(): labelcache_map_edge_buffer = %d\n", map_edge_buffer);
+      }
 
-            for(priority=MS_MAX_LABEL_PRIORITY-1; priority>=0; priority--) {
-                labelCacheSlotObj *cacheslot;
-                cacheslot = &(map->labelcache.slots[priority]);
+      for(priority=MS_MAX_LABEL_PRIORITY-1; priority>=0; priority--) {
+        labelCacheSlotObj *cacheslot;
+        cacheslot = &(map->labelcache.slots[priority]);
 
-                for(l=cacheslot->numlabels-1; l>=0; l--) {
+        for(l=cacheslot->numlabels-1; l>=0; l--) {
+          cachePtr = &(cacheslot->labels[l]); /* point to right spot in the label cache */
 
-                    cachePtr = &(cacheslot->labels[l]); /* point to right spot in the label cache */
+          layerPtr = (GET_LAYER(map, cachePtr->layerindex)); /* set a couple of other pointers, avoids nasty references */
+          labelPtr = &(cachePtr->label);
 
-                    layerPtr = (GET_LAYER(map, cachePtr->layerindex)); /* set a couple of other pointers, avoids nasty references */
-                    labelPtr = &(cachePtr->label);
+          if(!cachePtr->text || strlen(cachePtr->text) == 0)
+            continue; /* not an error, just don't want to do anything */
 
-                    if(!cachePtr->text || strlen(cachePtr->text) == 0)
-                        continue; /* not an error, just don't want to do anything */
+          if(msGetLabelSize(image,cachePtr->text, labelPtr, &r, &(map->fontset), layerPtr->scalefactor, MS_TRUE) == -1)
+            return(-1);
 
-                    if(msGetLabelSize(image,cachePtr->text, labelPtr, &r, &(map->fontset), layerPtr->scalefactor, MS_TRUE) == -1)
-                        return(-1);
+          if(labelPtr->autominfeaturesize && ((r.maxx-r.minx) > cachePtr->featuresize))
+            continue; /* label too large relative to the feature */
 
-                    if(labelPtr->autominfeaturesize && ((r.maxx-r.minx) > cachePtr->featuresize))
-                        continue; /* label too large relative to the feature */
+          marker_offset_x = marker_offset_y = 0; /* assume no marker */
+          if((layerPtr->type == MS_LAYER_ANNOTATION && cachePtr->numstyles > 0) || layerPtr->type == MS_LAYER_POINT) { /* there *is* a marker */
 
-                    marker_offset_x = marker_offset_y = 0; /* assume no marker */
-                    if((layerPtr->type == MS_LAYER_ANNOTATION && cachePtr->numstyles > 0) || layerPtr->type == MS_LAYER_POINT) { /* there *is* a marker       */
+            /* TODO: at the moment only checks the bottom style, perhaps should check all of them */
+            if(msGetMarkerSize(&map->symbolset, &(cachePtr->styles[0]), &marker_width, &marker_height, layerPtr->scalefactor) != MS_SUCCESS)
+              return(-1);
 
-                        /* TO DO: at the moment only checks the bottom style, perhaps should check all of them */
-                        if(msGetMarkerSize(&map->symbolset, &(cachePtr->styles[0]), &marker_width, &marker_height, layerPtr->scalefactor) != MS_SUCCESS)
-                            return(-1);
+            marker_offset_x = MS_NINT(marker_width/2.0);
+            marker_offset_y = MS_NINT(marker_height/2.0);      
 
-                        marker_offset_x = MS_NINT(marker_width/2.0);
-                        marker_offset_y = MS_NINT(marker_height/2.0);      
+            marker_rect.minx = MS_NINT(cachePtr->point.x - .5 * marker_width);
+            marker_rect.miny = MS_NINT(cachePtr->point.y - .5 * marker_height);
+            marker_rect.maxx = marker_rect.minx + (marker_width-1);
+            marker_rect.maxy = marker_rect.miny + (marker_height-1); 
+          }
 
-                        marker_rect.minx = MS_NINT(cachePtr->point.x - .5 * marker_width);
-                        marker_rect.miny = MS_NINT(cachePtr->point.y - .5 * marker_height);
-                        marker_rect.maxx = marker_rect.minx + (marker_width-1);
-                        marker_rect.maxy = marker_rect.miny + (marker_height-1); 
-                    }
+          /* handle path following labels first (position does not matter) */
+	  if(cachePtr->labelpath) {
+	    cachePtr->status = MS_TRUE;
 
-                    if(labelPtr->position == MS_AUTO) {
-                      int first_pos, pos, last_pos;
+	    /* Copy the bounds into the cache's polygon */
+	    msCopyShape(&(cachePtr->labelpath->bounds), cachePtr->poly);
+	    msFreeShape(&(cachePtr->labelpath->bounds));
 
-                      if(labelPtr->type == MS_LAYER_LINE) {                        
-                        first_pos = MS_UC; /* There are three possible positions: UC, CC, LC */
-                        last_pos = MS_CC;
-                      } else {
-                        first_pos = MS_UL; /* There are 8 possible outer positions: UL, LR, UR, LL, CR, CL, UC, LC */
-                        last_pos = MS_LC;
-                      }
+	    /* Compare against image bounds, rendered labels and markers (sets cachePtr->status), if FORCE=TRUE then skip it */
+            if(!labelPtr->force)
+  	      msTestLabelCacheCollisions(&(map->labelcache), labelPtr, image->width, image->height, labelPtr->buffer + map_edge_buffer, cachePtr, priority, l);
+	  } else {
 
-                      for(pos = first_pos; pos <= last_pos; pos++) {
-                        msFreeShape(cachePtr->poly);
-                        cachePtr->status = MS_TRUE; /* assume label *can* be drawn */
+            if(labelPtr->position == MS_AUTO) {
+              int first_pos, pos, last_pos;
 
-                        p = get_metrics(&(cachePtr->point), pos, r, (marker_offset_x + labelPtr->offsetx), (marker_offset_y + labelPtr->offsety), labelPtr->angle, labelPtr->buffer, cachePtr->poly);
-                        if(layerPtr->type == MS_LAYER_ANNOTATION && cachePtr->numstyles > 0)
-                          msRectToPolygon(marker_rect, cachePtr->poly); /* save marker bounding polygon */
+              if(labelPtr->type == MS_LAYER_LINE) {                        
+                first_pos = MS_UC; /* There are three possible positions: UC, CC, LC */
+                last_pos = MS_CC;
+              } else {
+                first_pos = MS_UL; /* There are 8 possible outer positions: UL, LR, UR, LL, CR, CL, UC, LC */
+                last_pos = MS_LC;
+              }
 
-                        /* Compare against image bounds, rendered labels and markers (sets cachePtr->status) */
-                        msTestLabelCacheCollisions(&(map->labelcache), labelPtr, image->width, image->height, 
-                        labelPtr->buffer + map_edge_buffer, cachePtr, priority, l);
+              for(pos = first_pos; pos <= last_pos; pos++) {
+                msFreeShape(cachePtr->poly);
+                cachePtr->status = MS_TRUE; /* assume label *can* be drawn */
 
-                        if(cachePtr->status) /* found a suitable place for this label */ {
-                          if(MS_VALID_COLOR(labelPtr->backgroundcolor))
-                            get_metrics_line(&(cachePtr->point), pos, r, (marker_offset_x + labelPtr->offsetx), (marker_offset_y + labelPtr->offsety), labelPtr->angle, 1, billboard.line);
-                          break;
-                        }
+                p = get_metrics(&(cachePtr->point), pos, r, (marker_offset_x + labelPtr->offsetx), (marker_offset_y + labelPtr->offsety), labelPtr->angle, labelPtr->buffer, cachePtr->poly);
+                if(layerPtr->type == MS_LAYER_ANNOTATION && cachePtr->numstyles > 0)
+                  msRectToPolygon(marker_rect, cachePtr->poly); /* save marker bounding polygon */
 
-                      } /* next position */
+                /* Compare against image bounds, rendered labels and markers (sets cachePtr->status) */
+                msTestLabelCacheCollisions(&(map->labelcache), labelPtr, image->width, image->height, labelPtr->buffer + map_edge_buffer, cachePtr, priority, l);
 
-                      if(labelPtr->force) cachePtr->status = MS_TRUE; /* draw in spite of collisions based on last position, need a *best* position */
+                if(cachePtr->status) /* found a suitable place for this label */ {
+                  if(MS_VALID_COLOR(labelPtr->backgroundcolor))
+                    get_metrics_line(&(cachePtr->point), pos, r, (marker_offset_x + labelPtr->offsetx), (marker_offset_y + labelPtr->offsety), labelPtr->angle, 1, billboard.line);
+                  break; /* ...out of position loop */
+                }
 
-                    } else {
+              } /* next position */
 
-                      cachePtr->status = MS_TRUE; /* assume label *can* be drawn */
+              if(labelPtr->force) cachePtr->status = MS_TRUE; /* draw in spite of collisions based on last position, need a *best* position */
 
-		      if(cachePtr->labelpath ) {
+            } else { /* explicit position */
 
-			/* Copy the bounds into the cache's polygon */
-			msCopyShape(&(cachePtr->labelpath->bounds), cachePtr->poly);
-		        msFreeShape(&(cachePtr->labelpath->bounds));
+              cachePtr->status = MS_TRUE; /* assume label *can* be drawn */
 
-		        /* Compare against image bounds, rendered labels and markers (sets cachePtr->status) */
-		        msTestLabelCacheCollisions(&(map->labelcache), labelPtr, image->width, image->height, labelPtr->buffer + map_edge_buffer, cachePtr, priority, l);
+              if(labelPtr->position == MS_CC) { /* don't need the marker_offset */
+                p = get_metrics(&(cachePtr->point), labelPtr->position, r, labelPtr->offsetx, labelPtr->offsety, labelPtr->angle, labelPtr->buffer, cachePtr->poly);
+                if(MS_VALID_COLOR(labelPtr->backgroundcolor))
+                  get_metrics_line(&(cachePtr->point), labelPtr->position, r, labelPtr->offsetx, labelPtr->offsety, labelPtr->angle, 1, billboard.line);
+              } else {
+                p = get_metrics(&(cachePtr->point), labelPtr->position, r, (marker_offset_x + labelPtr->offsetx), (marker_offset_y + labelPtr->offsety), labelPtr->angle, labelPtr->buffer, cachePtr->poly);
+                if(MS_VALID_COLOR(labelPtr->backgroundcolor))
+                  get_metrics_line(&(cachePtr->point), labelPtr->position, r, (marker_offset_x + labelPtr->offsetx), (marker_offset_y + labelPtr->offsety), labelPtr->angle, 1, billboard.line);
+              }
+  
+              if(layerPtr->type == MS_LAYER_ANNOTATION && cachePtr->numstyles > 0)
+                msRectToPolygon(marker_rect, cachePtr->poly); /* save marker bounding polygon, part of overlap tests */
 
-                      } else {
+              /* Compare against image bounds, rendered labels and markers (sets cachePtr->status), if FORCE=TRUE then skip the test */
+              if(!labelPtr->force)
+                msTestLabelCacheCollisions(&(map->labelcache), labelPtr, image->width, image->height, labelPtr->buffer + map_edge_buffer, cachePtr, priority, l);
 
-                        if(labelPtr->position == MS_CC) { /* don't need the marker_offset */
-                          p = get_metrics(&(cachePtr->point), labelPtr->position, r, labelPtr->offsetx, labelPtr->offsety, labelPtr->angle, labelPtr->buffer, cachePtr->poly);
-                          if(MS_VALID_COLOR(labelPtr->backgroundcolor))
-                            get_metrics_line(&(cachePtr->point), labelPtr->position, r, labelPtr->offsetx, labelPtr->offsety, labelPtr->angle, 1, billboard.line);
-                        } else {
-                          p = get_metrics(&(cachePtr->point), labelPtr->position, r, (marker_offset_x + labelPtr->offsetx), (marker_offset_y + labelPtr->offsety), labelPtr->angle, labelPtr->buffer, cachePtr->poly);
-                          if(MS_VALID_COLOR(labelPtr->backgroundcolor))
-                            get_metrics_line(&(cachePtr->point), labelPtr->position, r, (marker_offset_x + labelPtr->offsetx), (marker_offset_y + labelPtr->offsety), labelPtr->angle, 1, billboard.line);
-                        }
-                        if(layerPtr->type == MS_LAYER_ANNOTATION && cachePtr->numstyles > 0)
-                          msRectToPolygon(marker_rect, cachePtr->poly); /* save marker bounding polygon, part of overlap tests */
+            }
+          }
 
-                        if(!labelPtr->force) { /* no need to check anything else */
-                          /* Compare against image bounds, rendered labels and markers (sets cachePtr->status) */
-                          msTestLabelCacheCollisions(&(map->labelcache), labelPtr, image->width, image->height, labelPtr->buffer + map_edge_buffer, cachePtr, priority, l);
-                        }
-		      }
-                    } /* end position if-then-else */
+          /* imagePolyline(img, cachePtr->poly, 1, 0, 0); */
 
-                    /* imagePolyline(img, cachePtr->poly, 1, 0, 0); */
+          if(!cachePtr->status)
+            continue; /* next label */
 
-                    if(!cachePtr->status)
-                      continue; /* next label */
+          if(layerPtr->type == MS_LAYER_ANNOTATION && cachePtr->numstyles > 0) { /* need to draw a marker */
+            for(i=0; i<cachePtr->numstyles; i++)
+              msDrawMarkerSymbol(&map->symbolset, image, &(cachePtr->point), &(cachePtr->styles[i]), layerPtr->scalefactor);
+          }
 
-                    if(layerPtr->type == MS_LAYER_ANNOTATION && cachePtr->numstyles > 0) { /* need to draw a marker */
-                      for(i=0; i<cachePtr->numstyles; i++)
-                        msDrawMarkerSymbol(&map->symbolset, image, &(cachePtr->point), &(cachePtr->styles[i]), layerPtr->scalefactor);
-                    }
+          if(MS_VALID_COLOR(labelPtr->backgroundcolor)) {
+            styleObj style;
 
-                    if(MS_VALID_COLOR(labelPtr->backgroundcolor)) {
-                        styleObj style;
-                        initStyle(&style);                    
-                        if(MS_VALID_COLOR(labelPtr->backgroundshadowcolor)) {
-                            MS_COPYCOLOR(&(style.color),&(labelPtr->backgroundshadowcolor));
-                            style.offsetx=labelPtr->backgroundshadowsizex;
-                            style.offsety=labelPtr->backgroundshadowsizey;
-                            msDrawShadeSymbol(&map->symbolset,image,&billboard,&style,1);
-                            style.offsetx=0;
-                            style.offsety=0;
-                        }
-                        MS_COPYCOLOR(&(style.color),&(labelPtr->backgroundcolor));
-                        msDrawShadeSymbol(&map->symbolset,image,&billboard,&style,1);
-                    }
+            initStyle(&style);                    
+            if(MS_VALID_COLOR(labelPtr->backgroundshadowcolor)) {
+              MS_COPYCOLOR(&(style.color),&(labelPtr->backgroundshadowcolor));
+              style.offsetx = labelPtr->backgroundshadowsizex;
+              style.offsety = labelPtr->backgroundshadowsizey;
+              msDrawShadeSymbol(&map->symbolset,image,&billboard,&style,1);
+              style.offsetx = 0;
+              style.offsety = 0;
+            }
+            MS_COPYCOLOR(&(style.color), &(labelPtr->backgroundcolor));
+            msDrawShadeSymbol(&map->symbolset, image, &billboard, &style, 1);
+          }
 
-                    if ( cachePtr->labelpath ) {
-                        msDrawTextLine(image, cachePtr->text, labelPtr, cachePtr->labelpath, &(map->fontset), layerPtr->scalefactor); /* Draw the curved label */
-                    } else {
-                        msDrawText(image, p, cachePtr->text, labelPtr, &(map->fontset), layerPtr->scalefactor); /* actually draw the label */
-                    }
+          if(cachePtr->labelpath) {
+            msDrawTextLine(image, cachePtr->text, labelPtr, cachePtr->labelpath, &(map->fontset), layerPtr->scalefactor); /* Draw the curved label */
+          } else {
+            msDrawText(image, p, cachePtr->text, labelPtr, &(map->fontset), layerPtr->scalefactor); /* actually draw the label */
+          }
 
-                } /* next label */
-            } /* next priority */
+	} /* next label */
+      } /* next priority */
 
-            /* bug 490 - alpha blending back */
-            if(MS_RENDERER_GD(image->format))
-                gdImageAlphaBlending( image->img.gd, oldAlphaBlending);
+      /* bug 490 - alpha blending back */
+      if(MS_RENDERER_GD(image->format))
+        gdImageAlphaBlending( image->img.gd, oldAlphaBlending);
 
-            return(0);
-        } /*end test for gd or agg renderers*/
-	else if( MS_RENDERER_IMAGEMAP(image->format) )
-            nReturnVal = msDrawLabelCacheIM(image, map);
+      return(0);
+    } else if( MS_RENDERER_IMAGEMAP(image->format) )
+      nReturnVal = msDrawLabelCacheIM(image, map);
 
 #ifdef USE_MING_FLASH
-        else if( MS_RENDERER_SWF(image->format) )
-            nReturnVal = msDrawLabelCacheSWF(image, map);
+    else if( MS_RENDERER_SWF(image->format) )
+      nReturnVal = msDrawLabelCacheSWF(image, map);
 #endif
 #ifdef USE_PDF
-        else if( MS_RENDERER_PDF(image->format) )
-            nReturnVal = msDrawLabelCachePDF(image, map);
+    else if( MS_RENDERER_PDF(image->format) )
+      nReturnVal = msDrawLabelCachePDF(image, map);
 #endif
-        else if( MS_RENDERER_SVG(image->format) )
-            nReturnVal = msDrawLabelCacheSVG(image, map);
-    }
+    else if( MS_RENDERER_SVG(image->format) )
+      nReturnVal = msDrawLabelCacheSVG(image, map);
+  }
 
-    return nReturnVal;
+  return nReturnVal;
 }
 
 /**



More information about the mapserver-commits mailing list