[mapserver-commits] r9464 - trunk/mapserver
svn at osgeo.org
svn at osgeo.org
Thu Oct 15 14:08:15 EDT 2009
Author: warmerdam
Date: 2009-10-15 14:08:14 -0400 (Thu, 15 Oct 2009)
New Revision: 9464
Modified:
trunk/mapserver/HISTORY.TXT
trunk/mapserver/mapquery.c
trunk/mapserver/maprasterquery.c
trunk/mapserver/mapserver.h
Log:
Correct FEATURE_COUNT limits on WMS GetFeatureInfo raster queries (#3168)
Modified: trunk/mapserver/HISTORY.TXT
===================================================================
--- trunk/mapserver/HISTORY.TXT 2009-10-15 17:20:35 UTC (rev 9463)
+++ trunk/mapserver/HISTORY.TXT 2009-10-15 18:08:14 UTC (rev 9464)
@@ -56,7 +56,9 @@
- Correct libjpeg v7 compatability issue in old jpeg interface code (#3167)
+- Correct FEATURE_COUNT limits on WMS GetFeatureInfo raster queries (#3168)
+
Version 5.6.0-beta3 (2009-10-07):
---------------------------------
Modified: trunk/mapserver/mapquery.c
===================================================================
--- trunk/mapserver/mapquery.c 2009-10-15 17:20:35 UTC (rev 9463)
+++ trunk/mapserver/mapquery.c 2009-10-15 18:08:14 UTC (rev 9464)
@@ -1113,7 +1113,7 @@
/* Raster layers are handled specially. */
if( lp->type == MS_LAYER_RASTER ) {
- if( msRasterQueryByPoint( map, lp, map->query.mode, map->query.point, map->query.buffer ) == MS_FAILURE )
+ if( msRasterQueryByPoint( map, lp, map->query.mode, map->query.point, map->query.buffer, map->query.maxresults ) == MS_FAILURE )
return MS_FAILURE;
continue;
}
Modified: trunk/mapserver/maprasterquery.c
===================================================================
--- trunk/mapserver/maprasterquery.c 2009-10-15 17:20:35 UTC (rev 9463)
+++ trunk/mapserver/maprasterquery.c 2009-10-15 18:08:14 UTC (rev 9464)
@@ -909,7 +909,7 @@
/************************************************************************/
int msRasterQueryByPoint(mapObj *map, layerObj *layer, int mode, pointObj p,
- double buffer)
+ double buffer, int maxresults)
{
#ifndef USE_GDAL
msSetError( MS_IMGERR,
@@ -918,6 +918,7 @@
return MS_FAILURE;
#else
int result;
+ int previous_maxresults;
double layer_tolerance;
rectObj bufferRect;
rasterLayerInfo *rlinfo = NULL;
@@ -981,7 +982,6 @@
rlinfo->range_mode = MS_SINGLE;
result = msRasterQueryByRect( map, layer, pointRect );
-
if( rlinfo->query_results > 0 )
return result;
}
@@ -996,7 +996,10 @@
bufferRect.maxy = p.y + buffer;
rlinfo->range_mode = mode;
+ previous_maxresults = rlinfo->query_result_hard_max;
+ rlinfo->query_result_hard_max = maxresults;
result = msRasterQueryByRect( map, layer, bufferRect );
+ rlinfo->query_result_hard_max = previous_maxresults;
return result;
#endif /* USE_GDAL */
Modified: trunk/mapserver/mapserver.h
===================================================================
--- trunk/mapserver/mapserver.h 2009-10-15 17:20:35 UTC (rev 9463)
+++ trunk/mapserver/mapserver.h 2009-10-15 18:08:14 UTC (rev 9464)
@@ -1742,7 +1742,7 @@
MS_DLL_EXPORT void msQueryFree(mapObj *map, int qlayer); /* todo: rename */
MS_DLL_EXPORT int msRasterQueryByShape(mapObj *map, layerObj *layer, shapeObj *selectshape);
MS_DLL_EXPORT int msRasterQueryByRect(mapObj *map, layerObj *layer, rectObj queryRect);
-MS_DLL_EXPORT int msRasterQueryByPoint(mapObj *map, layerObj *layer, int mode, pointObj p, double buffer );
+MS_DLL_EXPORT int msRasterQueryByPoint(mapObj *map, layerObj *layer, int mode, pointObj p, double buffer, int maxresults );
/* in mapstring.c */
MS_DLL_EXPORT void msStringTrim(char *str);
More information about the mapserver-commits
mailing list