Opened 12 years ago

Last modified 12 years ago

#4225 new defect

msGetMarkerSize() called on unloaded pixmap symbol

Reported by: woodbri Owned by: tbonfort
Priority: normal Milestone:
Component: Renderer API Version: 6.0
Severity: normal Keywords:
Cc: sdlime

Description

I have run into this error message and have been able to isolate some specific conditions that generate this error:

msGetmarkerSize(): General error message. msGetMarkerSize() called on unloaded pixmap symbol, this is a bug in mapserver itself

MapServer version 6.0.2 OUTPUT=GIF OUTPUT=PNG OUTPUT=JPEG SUPPORTS=PROJ SUPPORTS=AGG SUPPORTS=FREETYPE SUPPORTS=ICONV SUPPORTS=FRIBIDI SUPPORTS=WMS_SERVER SUPPORTS=WMS_CLIENT SUPPORTS=WFS_SERVER SUPPORTS=GEOS INPUT=POSTGIS INPUT=OGR INPUT=GDAL INPUT=SHAPEFILE

Case 1:

I have symbolset with these symboles defined:

SYMBOL
NAME "I"
TYPE PIXMAP
IMAGE "icons2/hwy/interstate.png"
TRANSPARENT 7
END

SYMBOL
NAME "U"
TYPE PIXMAP
IMAGE "icons2/hwy/ushwy.png"
TRANSPARENT 1
END

SYMBOL
NAME "S"
TYPE PIXMAP
IMAGE "icons2/hwy/sthwy.png"
END

And I have the the following layer definition. Notice the comments indicating the line that generates the error. I also note that this does not occur at all zoom levels within the LAYERs scale range. Maybe the symbol is getting bumped out in the drawLabelCache so it doesn't get drawn.

    LAYER
        NAME "hwyshieldsnear"
        METADATA
            "ows_title"     "Hwy Shields Near"
            "ows_srs"       "EPSG:4269 EPSG:4326"
            "ows_abstract"  "Hwy Shields for the U.S. Census ROADS data layer."
        END
        TYPE ANNOTATION
        TILEINDEX "tidx-ROADS"
        PROJECTION
            "+proj=longlat +ellps=GRS80 +datum=NAD83" #EPSG: 4269
        END
        MAXSCALEDENOM  300000
        FILTER (length('[RTENUM]')>0 && '[RTTYP]' ~ '^(I|U|S)$')
        CLASSITEM "RTTYP"
        LABELITEM "RTENUM"
        CLASS
          EXPRESSION "I"
          STYLE
            # SYMBOL [RTTYP]   ##### This cause the error #########
            SYMBOL "I"         ##### This works fine      #########
          END
          LABEL
            SIZE TINY
            POSITION CC
            OFFSET 1 0
            MINDISTANCE 100
            COLOR "#ffffff"
            PARTIALS FALSE
            PRIORITY 7
          END
        END
        CLASS
          EXPRESSION "U"
          STYLE
            SYMBOL "U"
          END
          LABEL
            SIZE TINY
            POSITION CC
            OFFSET 1 0
            MINDISTANCE 100
            COLOR "#000000"
            PARTIALS FALSE
            PRIORITY 7
          END
        END
        CLASS
          EXPRESSION "S"
          STYLE
            SYMBOL "circle-filled"
            COLOR "#FFFFFF"
            OUTLINECOLOR "#000000"
            SIZE 19
          END
          LABEL
            SIZE TINY
            POSITION CC
            MINDISTANCE 100
            COLOR "#000000"
            PARTIALS FALSE
            PRIORITY 7
          END
        END
    END

Case 2:

I have a polygon layer with the following CLASS definition. If I uncomment the STYLE block in the LABEL it will also generate this error:

  CLASS
    EXPRESSION "K1231" # Hospital
    STYLE
      COLOR "#EBD2CF"
    END
    LABEL
#      STYLE
#        GEOMTRANSFORM 'labelpnt'
#        SYMBOL "etc/icons2/poi/8060.png"
#      END
      MAXSCALEDENOM 10000
      TYPE TRUETYPE
      FONT "sans"
      SIZE 8
      COLOR "#655949"
      OUTLINECOLOR "#F3EFEF"
      PARTIALS FALSE
      MINDISTANCE 250
      MINFEATURESIZE 10
      BUFFER 4
      POSITION AUTO
      PRIORITY 4
      WRAP " "
      ALIGN CENTER
    END
  END

Change History (5)

comment:1 by tbonfort, 12 years ago

Component: MapServer C LibraryRenderer API
Owner: changed from sdlime to tbonfort

comment:2 by tbonfort, 12 years ago

case 2 addressed in r13202 (still in a sandbox branch, will be moved to trunk soon)

comment:3 by woodbri, 12 years ago

If you can not reproduce case 1, let me know and I will try to narrow it down more, but I have to get this mapfile finished first.

comment:4 by tbonfort, 12 years ago

should be easy to reproduce. btw, annotation layers are going to be deprecated in 6.2, you might want to migrate to label styles if you're working on a new mapfile

comment:5 by sdlime, 12 years ago

Cc: sdlime added
Note: See TracTickets for help on using tickets.