From 3913ef1787f5e8b4d517db951f8bbeef89f1a942 Mon Sep 17 00:00:00 2001 From: bartvde Date: Thu, 20 Jan 2011 13:20:03 +0000 Subject: [PATCH] WMS GetFeatureInfo control should use integers for X and Y, r=ahocevar (closes #3019) git-svn-id: http://svn.openlayers.org/trunk/openlayers@11046 dc9f47b5-9b13-0410-9fdd-eb0c1a62fdaf --- lib/OpenLayers/Control/WMSGetFeatureInfo.js | 8 ++++---- tests/Control/WMSGetFeatureInfo.html | 18 +++++++++++++++--- 2 files changed, 19 insertions(+), 7 deletions(-) diff --git a/lib/OpenLayers/Control/WMSGetFeatureInfo.js b/lib/OpenLayers/Control/WMSGetFeatureInfo.js index c93eef5c63..c193ca7922 100644 --- a/lib/OpenLayers/Control/WMSGetFeatureInfo.js +++ b/lib/OpenLayers/Control/WMSGetFeatureInfo.js @@ -370,13 +370,13 @@ OpenLayers.Control.WMSGetFeatureInfo = OpenLayers.Class(OpenLayers.Control, { }, (parseFloat(firstLayer.params.VERSION) >= 1.3) ? { crs: projection, - i: clickPosition.x, - j: clickPosition.y + i: parseInt(clickPosition.x), + j: parseInt(clickPosition.y) } : { srs: projection, - x: clickPosition.x, - y: clickPosition.y + x: parseInt(clickPosition.x), + y: parseInt(clickPosition.y) } ); OpenLayers.Util.applyDefaults(params, this.vendorParams); diff --git a/tests/Control/WMSGetFeatureInfo.html b/tests/Control/WMSGetFeatureInfo.html index 5d370d76b1..6ed080d000 100644 --- a/tests/Control/WMSGetFeatureInfo.html +++ b/tests/Control/WMSGetFeatureInfo.html @@ -233,7 +233,7 @@ // Verify that things work all right when we combine different types for the STYLES and LAYERS // params in the WMS Layers involved function test_mixedParams(t) { - t.plan(3); + t.plan(5); var map = new OpenLayers.Map("map", { getExtent: function() {return(new OpenLayers.Bounds(-180,-90,180,90));} } @@ -271,9 +271,21 @@ log.options = options; }; click.activate(); - click.getInfoForClick({xy: {x: 50, y: 50}}); + click.getInfoForClick({xy: {x: 50.2, y: 50.1}}); OpenLayers.Request.GET = _request; + t.eq( + log.options && log.options.params.X, + 50, + "X should be an integer" + ); + + t.eq( + log.options && log.options.params.Y, + 50, + "Y should be an integer" + ); + t.eq( log.options && log.options.url, "http://localhost/wms", @@ -506,7 +518,7 @@ log.options = options; }; click.activate(); - click.getInfoForClick({xy: {x: 50, y: 60}}); + click.getInfoForClick({xy: {x: 50.1, y: 60.2}}); OpenLayers.Request.GET = _request; t.eq( log.options && log.options.params.CRS,