<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2//EN">
<HTML>
<HEAD>
<META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=us-ascii">
<META NAME="Generator" CONTENT="MS Exchange Server version 6.0.6618.4">
<TITLE>svn commit: r1037 - Add missing ReadNext() check</TITLE>
</HEAD>
<BODY>
<!-- Converted from text/rtf format -->

<P><FONT SIZE=2 FACE="Arial">r1037 | waltweltonlair | 2007-01-09 02:21:43 &#43;0100 (Tue, 09 Jan 2007) | 12 lines</FONT>
</P>

<P><FONT SIZE=2 FACE="Arial">This is for the 1.1.x branch...</FONT>
</P>

<P><FONT SIZE=2 FACE="Arial">Add missing ReadNext() check</FONT>
</P>

<P><FONT SIZE=2 FACE="Arial">The buffer web code was calling ReadNext on an MgSpatialContextReader without</FONT>

<BR><FONT SIZE=2 FACE="Arial">checking the return value.&nbsp; It then immediately called GetCoordinateSystemWkt</FONT>

<BR><FONT SIZE=2 FACE="Arial">on the reader.&nbsp; This generates an MgIndexOutOfRangeException if there are no</FONT>

<BR><FONT SIZE=2 FACE="Arial">spatial contexts.&nbsp; Updated the code to only call GetCoordinateSystemWkt if</FONT>

<BR><FONT SIZE=2 FACE="Arial">ReadNext returns true.</FONT>
</P>

<P><FONT SIZE=2 FACE="Arial">The fix was made for all three web tier flavors: ASPX, PHP, JSP.</FONT>
</P>

<P><FONT SIZE=2 FACE="Arial">===================================================================</FONT>

<BR><FONT SIZE=2 FACE="Arial">--- mapviewerjava/buffer.jsp&nbsp;&nbsp;&nbsp; (revision 1036)</FONT>

<BR><FONT SIZE=2 FACE="Arial">&#43;&#43;&#43; mapviewerjava/buffer.jsp&nbsp;&nbsp;&nbsp; (revision 1037)</FONT>

<BR><FONT SIZE=2 FACE="Arial">@@ -221,17 &#43;221,10 @@</FONT>

<BR><FONT SIZE=2 FACE="Arial">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; MgResourceIdentifier featSourceId = new MgResourceIdentifier(selLayer.GetFeatureSourceId());</FONT>

<BR><FONT SIZE=2 FACE="Arial">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; MgSpatialContextReader ctxs = featureSrvc.GetSpatialContexts(featSourceId, true);</FONT>

<BR><FONT SIZE=2 FACE="Arial">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; String srsDefDs = &quot;&quot;;</FONT>

<BR><FONT SIZE=2 FACE="Arial">-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; if(ctxs != null)</FONT>

<BR><FONT SIZE=2 FACE="Arial">-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; {</FONT>

<BR><FONT SIZE=2 FACE="Arial">-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; ctxs.ReadNext();</FONT>

<BR><FONT SIZE=2 FACE="Arial">&#43;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; if(ctxs != null &amp;&amp; ctxs.ReadNext())</FONT>

<BR><FONT SIZE=2 FACE="Arial">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; srsDefDs = ctxs.GetCoordinateSystemWkt();</FONT>

<BR><FONT SIZE=2 FACE="Arial">-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; if(srsDefDs == null || srsDefDs.length() == 0)</FONT>

<BR><FONT SIZE=2 FACE="Arial">-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; {</FONT>

<BR><FONT SIZE=2 FACE="Arial">-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; excludedLayers&#43;&#43;;</FONT>

<BR><FONT SIZE=2 FACE="Arial">-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; continue;</FONT>

<BR><FONT SIZE=2 FACE="Arial">-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; }</FONT>

<BR><FONT SIZE=2 FACE="Arial">-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; }</FONT>

<BR><FONT SIZE=2 FACE="Arial">-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; else</FONT>

<BR><FONT SIZE=2 FACE="Arial">&#43;</FONT>

<BR><FONT SIZE=2 FACE="Arial">&#43;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; if(srsDefDs == null || srsDefDs.length() == 0)</FONT>

<BR><FONT SIZE=2 FACE="Arial">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; {</FONT>

<BR><FONT SIZE=2 FACE="Arial">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; excludedLayers&#43;&#43;;</FONT>

<BR><FONT SIZE=2 FACE="Arial">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; continue;</FONT>

<BR><FONT SIZE=2 FACE="Arial">@@ -505,16 &#43;498,16 @@</FONT>
</P>

<P><FONT SIZE=2 FACE="Arial">&nbsp;String GetMapSrs(MgMap map)</FONT>

<BR><FONT SIZE=2 FACE="Arial">&nbsp;{</FONT>

<BR><FONT SIZE=2 FACE="Arial">-&nbsp;&nbsp;&nbsp; try</FONT>

<BR><FONT SIZE=2 FACE="Arial">&#43;&nbsp;&nbsp;&nbsp; try</FONT>

<BR><FONT SIZE=2 FACE="Arial">&nbsp;&nbsp;&nbsp;&nbsp; {</FONT>

<BR><FONT SIZE=2 FACE="Arial">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; String srs = map.GetMapSRS();</FONT>

<BR><FONT SIZE=2 FACE="Arial">-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; if(!srs.equals(&quot;&quot;))</FONT>

<BR><FONT SIZE=2 FACE="Arial">&#43;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; if(!srs.equals(&quot;&quot;))</FONT>

<BR><FONT SIZE=2 FACE="Arial">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; return srs;</FONT>

<BR><FONT SIZE=2 FACE="Arial">&nbsp;&nbsp;&nbsp;&nbsp; }</FONT>

<BR><FONT SIZE=2 FACE="Arial">&nbsp;&nbsp;&nbsp;&nbsp; catch(MgException e)</FONT>

<BR><FONT SIZE=2 FACE="Arial">&nbsp;&nbsp;&nbsp;&nbsp; {</FONT>

<BR><FONT SIZE=2 FACE="Arial">&nbsp;&nbsp;&nbsp;&nbsp; }</FONT>

<BR><FONT SIZE=2 FACE="Arial">-</FONT>

<BR><FONT SIZE=2 FACE="Arial">&#43;</FONT>

<BR><FONT SIZE=2 FACE="Arial">&nbsp;&nbsp;&nbsp;&nbsp; //No SRS, set to ArbitrayXY meters</FONT>

<BR><FONT SIZE=2 FACE="Arial">&nbsp;&nbsp;&nbsp;&nbsp; //</FONT>

<BR><FONT SIZE=2 FACE="Arial">&nbsp;&nbsp;&nbsp;&nbsp; return &quot;LOCALCS[\&quot;*XY-MT*\&quot;,LOCAL_DATUM[\&quot;*X-Y*\&quot;,10000],UNIT[\&quot;Meter\&quot;, 1],AXIS[\&quot;X\&quot;,EAST],AXIS[\&quot;Y\&quot;,NORTH]]&quot;;</FONT>
</P>

<P><FONT SIZE=2 FACE="Arial">===================================================================</FONT>

<BR><FONT SIZE=2 FACE="Arial">--- mapviewernet/buffer.aspx&nbsp;&nbsp;&nbsp; (revision 1036)</FONT>

<BR><FONT SIZE=2 FACE="Arial">&#43;&#43;&#43; mapviewernet/buffer.aspx&nbsp;&nbsp;&nbsp; (revision 1037)</FONT>

<BR><FONT SIZE=2 FACE="Arial">@@ -202,17 &#43;202,10 @@</FONT>

<BR><FONT SIZE=2 FACE="Arial">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; MgResourceIdentifier featSourceId = new MgResourceIdentifier(selLayer.GetFeatureSourceId());</FONT>

<BR><FONT SIZE=2 FACE="Arial">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; MgSpatialContextReader ctxs = featureSrvc.GetSpatialContexts(featSourceId, true);</FONT>

<BR><FONT SIZE=2 FACE="Arial">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; String srsDefDs = &quot;&quot;;</FONT>

<BR><FONT SIZE=2 FACE="Arial">-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; if (ctxs != null)</FONT>

<BR><FONT SIZE=2 FACE="Arial">-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; {</FONT>

<BR><FONT SIZE=2 FACE="Arial">-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; ctxs.ReadNext();</FONT>

<BR><FONT SIZE=2 FACE="Arial">&#43;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; if (ctxs != null &amp;&amp; ctxs.ReadNext())</FONT>

<BR><FONT SIZE=2 FACE="Arial">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; srsDefDs = ctxs.GetCoordinateSystemWkt();</FONT>

<BR><FONT SIZE=2 FACE="Arial">-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; if (srsDefDs == null || srsDefDs.Length == 0)</FONT>

<BR><FONT SIZE=2 FACE="Arial">-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; {</FONT>

<BR><FONT SIZE=2 FACE="Arial">-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; excludedLayers&#43;&#43;;</FONT>

<BR><FONT SIZE=2 FACE="Arial">-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; continue;</FONT>

<BR><FONT SIZE=2 FACE="Arial">-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; }</FONT>

<BR><FONT SIZE=2 FACE="Arial">-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; }</FONT>

<BR><FONT SIZE=2 FACE="Arial">-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; else</FONT>

<BR><FONT SIZE=2 FACE="Arial">&#43;</FONT>

<BR><FONT SIZE=2 FACE="Arial">&#43;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; if (srsDefDs == null || srsDefDs.Length == 0)</FONT>

<BR><FONT SIZE=2 FACE="Arial">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; {</FONT>

<BR><FONT SIZE=2 FACE="Arial">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; excludedLayers&#43;&#43;;</FONT>

<BR><FONT SIZE=2 FACE="Arial">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; continue;</FONT>
</P>

<P><FONT SIZE=2 FACE="Arial">===================================================================</FONT>

<BR><FONT SIZE=2 FACE="Arial">--- mapviewerphp/buffer.php&nbsp;&nbsp;&nbsp;&nbsp; (revision 1036)</FONT>

<BR><FONT SIZE=2 FACE="Arial">&#43;&#43;&#43; mapviewerphp/buffer.php&nbsp;&nbsp;&nbsp;&nbsp; (revision 1037)</FONT>

<BR><FONT SIZE=2 FACE="Arial">@@ -191,17 &#43;191,10 @@</FONT>

<BR><FONT SIZE=2 FACE="Arial">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; $featSourceId = new MgResourceIdentifier($selLayer-&gt;GetFeatureSourceId());</FONT>

<BR><FONT SIZE=2 FACE="Arial">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; $ctxs = $featureSrvc-&gt;GetSpatialContexts($featSourceId, true);</FONT>

<BR><FONT SIZE=2 FACE="Arial">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; $srsDefDs = &quot;&quot;;</FONT>

<BR><FONT SIZE=2 FACE="Arial">-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; if($ctxs != null)</FONT>

<BR><FONT SIZE=2 FACE="Arial">-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; {</FONT>

<BR><FONT SIZE=2 FACE="Arial">-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; $ctxs-&gt;ReadNext();</FONT>

<BR><FONT SIZE=2 FACE="Arial">&#43;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; if($ctxs != null &amp;&amp; $ctxs-&gt;ReadNext())</FONT>

<BR><FONT SIZE=2 FACE="Arial">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; $srsDefDs = $ctxs-&gt;GetCoordinateSystemWkt();</FONT>

<BR><FONT SIZE=2 FACE="Arial">-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; if($srsDefDs == &quot;&quot;)</FONT>

<BR><FONT SIZE=2 FACE="Arial">-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; {</FONT>

<BR><FONT SIZE=2 FACE="Arial">-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; $excludedLayers &#43;&#43;;</FONT>

<BR><FONT SIZE=2 FACE="Arial">-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; continue;</FONT>

<BR><FONT SIZE=2 FACE="Arial">-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; }</FONT>

<BR><FONT SIZE=2 FACE="Arial">-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; }</FONT>

<BR><FONT SIZE=2 FACE="Arial">-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; else</FONT>

<BR><FONT SIZE=2 FACE="Arial">&#43;</FONT>

<BR><FONT SIZE=2 FACE="Arial">&#43;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; if($srsDefDs == &quot;&quot;)</FONT>

<BR><FONT SIZE=2 FACE="Arial">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; {</FONT>

<BR><FONT SIZE=2 FACE="Arial">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; $excludedLayers &#43;&#43;;</FONT>

<BR><FONT SIZE=2 FACE="Arial">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; continue;</FONT>

<BR><FONT SIZE=2 FACE="Arial">@@ -213,7 &#43;206,7 @@</FONT>
</P>

<P><FONT SIZE=2 FACE="Arial">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; if($arbitraryDsSrs)</FONT>

<BR><FONT SIZE=2 FACE="Arial">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; $dsSrsUnits = $srsDs-&gt;GetUnits();</FONT>

<BR><FONT SIZE=2 FACE="Arial">-</FONT>

<BR><FONT SIZE=2 FACE="Arial">&#43;</FONT>

<BR><FONT SIZE=2 FACE="Arial">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; // exclude layer if:</FONT>

<BR><FONT SIZE=2 FACE="Arial">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; //&nbsp; the map is non-arbitrary and the layer is arbitrary or vice-versa</FONT>

<BR><FONT SIZE=2 FACE="Arial">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; //&nbsp;&nbsp;&nbsp;&nbsp; or</FONT>

<BR><FONT SIZE=2 FACE="Arial">@@ -474,9 &#43;467,9 @@</FONT>

<BR><FONT SIZE=2 FACE="Arial">&nbsp;function GetMapSrs($map)</FONT>

<BR><FONT SIZE=2 FACE="Arial">&nbsp;{</FONT>

<BR><FONT SIZE=2 FACE="Arial">&nbsp;&nbsp;&nbsp;&nbsp; $srs = $map-&gt;GetMapSRS();</FONT>

<BR><FONT SIZE=2 FACE="Arial">-&nbsp;&nbsp;&nbsp; if($srs != &quot;&quot;)</FONT>

<BR><FONT SIZE=2 FACE="Arial">&#43;&nbsp;&nbsp;&nbsp; if($srs != &quot;&quot;)</FONT>

<BR><FONT SIZE=2 FACE="Arial">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; return $srs;</FONT>

<BR><FONT SIZE=2 FACE="Arial">-</FONT>

<BR><FONT SIZE=2 FACE="Arial">&#43;</FONT>

<BR><FONT SIZE=2 FACE="Arial">&nbsp;&nbsp;&nbsp;&nbsp; //No SRS, set to ArbitrayXY meters</FONT>

<BR><FONT SIZE=2 FACE="Arial">&nbsp;&nbsp;&nbsp;&nbsp; //</FONT>

<BR><FONT SIZE=2 FACE="Arial">&nbsp;&nbsp;&nbsp;&nbsp; return &quot;LOCALCS[\&quot;*XY-MT*\&quot;,LOCAL_DATUM[\&quot;*X-Y*\&quot;,10000],UNIT[\&quot;Meter\&quot;, 1],AXIS[\&quot;X\&quot;,EAST],AXIS[\&quot;Y\&quot;,NORTH]]&quot;;</FONT>
</P>
<BR>

<P><FONT SIZE=1 FACE="Courier New">&nbsp;W&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; E&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; @__&nbsp;&nbsp; __o</FONT>

<BR><FONT SIZE=1 FACE="Courier New">&nbsp;&nbsp; A&nbsp;&nbsp; T&nbsp;&nbsp; R&nbsp;&nbsp; @___&nbsp;&nbsp;&nbsp; _ \&lt;,_</FONT>

<BR><FONT SIZE=1 FACE="Courier New">&nbsp;&nbsp;&nbsp;&nbsp; L&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; @_&nbsp;&nbsp; (*)/ (*)</FONT>
</P>

</BODY>
</HTML>