diff --git a/lib/OpenLayers/Layer/GML.js b/lib/OpenLayers/Layer/GML.js index 50d0069786..81776bbfcb 100644 --- a/lib/OpenLayers/Layer/GML.js +++ b/lib/OpenLayers/Layer/GML.js @@ -131,7 +131,7 @@ OpenLayers.Layer.GML = OpenLayers.Class(OpenLayers.Layer.Vector, { requestSuccess:function(request) { var doc = request.responseXML; - if (!doc) { + if (!doc || !doc.documentElement) { doc = request.responseText; } diff --git a/lib/OpenLayers/Layer/GeoRSS.js b/lib/OpenLayers/Layer/GeoRSS.js index d1421ae65c..8b12a62265 100644 --- a/lib/OpenLayers/Layer/GeoRSS.js +++ b/lib/OpenLayers/Layer/GeoRSS.js @@ -131,8 +131,8 @@ OpenLayers.Layer.GeoRSS = OpenLayers.Class(OpenLayers.Layer.Markers, { */ parseData: function(ajaxRequest) { var doc = ajaxRequest.responseXML; - if (!doc) { - doc = OpenLayers.parseXMLString(ajaxRequest.responseText); + if (!doc || !doc.documentElement) { + doc = OpenLayers.Format.XML.prototype.read(ajaxRequest.responseText); } if (this.useFeedTitle) { diff --git a/lib/OpenLayers/Tile/WFS.js b/lib/OpenLayers/Tile/WFS.js index c2288476ff..06345c29e7 100644 --- a/lib/OpenLayers/Tile/WFS.js +++ b/lib/OpenLayers/Tile/WFS.js @@ -127,9 +127,8 @@ OpenLayers.Tile.WFS = OpenLayers.Class(OpenLayers.Tile, { requestSuccess:function(request) { if (this.features) { var doc = request.responseXML; - - if (!doc) { - doc = OpenLayers.parseXMLString(request.responseText); + if (!doc || !doc.documentElement) { + doc = OpenLayers.Format.XML.prototype.read(request.responseText); } if (this.layer.vectorMode) { this.layer.addFeatures(this.layer.formatObject.read(doc));