aboutsummaryrefslogtreecommitdiffstats
path: root/Library/Formula/mapserver.rb
diff options
context:
space:
mode:
authorAlan Boudreault2012-08-16 11:43:27 -0400
committerJack Nagel2012-08-20 22:39:02 -0500
commit61ae9bf581cee233b4b4d42abff5307da00da8f9 (patch)
treeca56df6eef6ed49928519684f3dad8273db57fa9 /Library/Formula/mapserver.rb
parenta87d390a980d420a3326226f0553ddec9109f239 (diff)
downloadhomebrew-61ae9bf581cee233b4b4d42abff5307da00da8f9.tar.bz2
mapserver: add patch for pixmap symbol
Closes #14234. Signed-off-by: Jack Nagel <jacknagel@gmail.com>
Diffstat (limited to 'Library/Formula/mapserver.rb')
-rw-r--r--Library/Formula/mapserver.rb17
1 files changed, 17 insertions, 0 deletions
diff --git a/Library/Formula/mapserver.rb b/Library/Formula/mapserver.rb
index dd1a953ac..6c81665f5 100644
--- a/Library/Formula/mapserver.rb
+++ b/Library/Formula/mapserver.rb
@@ -53,6 +53,8 @@ class Mapserver < Formula
def patches
# Fix clang compilation issue, remove on future release
# See http://trac.osgeo.org/mapserver/changeset/12809
+ # Fix msGetMarkerSize() called on unloaded pixmap symbol
+ # https://github.com/mapserver/mapserver/issues/4225
DATA
end
@@ -93,3 +95,18 @@ index 5ff3f20..7a14588 100644
//---------------------------------------------------------------------
int subpixel_width() const { return m_profile->subpixel_width(); }
+diff --git a/mapsymbol.c b/mapsymbol.c
+index 164a0ac..f9dcb20 100644
+--- a/mapsymbol.c
++++ b/mapsymbol.c
+@@ -601,6 +601,10 @@ int msGetMarkerSize(symbolSetObj *symbolset, styleObj *style, int *width, int *h
+ }
+
+ symbol = symbolset->symbol[style->symbol];
++ if (symbol->type == MS_SYMBOL_PIXMAP && !symbol->pixmap_buffer) {
++ if (MS_SUCCESS != msPreloadImageSymbol(MS_MAP_RENDERER(symbolset->map), symbol))
++ return MS_FAILURE;
++ }
+ if(style->size == -1) {
+ size = MS_NINT( msSymbolGetDefaultSize(symbol) * scalefactor );
+ }