Don't rely on responseXML, also use responseText
On servers that report an incorrect content type for XML documents, responseXML will be empty. In these cases we need to use responseText instead. This change also prevents readNode calls with empty data.
This commit is contained in:
@@ -877,12 +877,17 @@ ol.parser.KML.prototype.parseLinks = function(deferreds, obj, done) {
|
||||
var me = this;
|
||||
goog.events.listen(xhr, goog.net.EventType.COMPLETE, function(e) {
|
||||
if (e.target.isSuccess()) {
|
||||
var data = e.target.getResponseXml();
|
||||
goog.dispose(e.target);
|
||||
if (data && data.nodeType == 9) {
|
||||
data = data.documentElement;
|
||||
var data = e.target.getResponseXml() || e.target.getResponseText();
|
||||
if (typeof data == 'string') {
|
||||
data = goog.dom.xml.loadXml(data);
|
||||
}
|
||||
goog.dispose(e.target);
|
||||
if (data) {
|
||||
if (data.nodeType == 9) {
|
||||
data = data.documentElement;
|
||||
}
|
||||
me.readNode(data, obj);
|
||||
}
|
||||
me.readNode(data, obj);
|
||||
me.parseLinks(deferreds, obj, done);
|
||||
this.callback(data);
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user