From cb7cf5e18e17ff3e09627a2b5303f1f6cce0d933 Mon Sep 17 00:00:00 2001 From: Tim Schaub Date: Fri, 11 May 2012 17:41:24 -0600 Subject: [PATCH] Allow for circular dependency in XMLHttpRequest.js To make custom builds easier, it's convenient to have a OpenLayers.Request depend on OpenLayers.Request.XMLHttpRequest (see 18b4d6808da1278e9ec43caba56281804f82e63e). This makes it so we don't know which is going to be included first. To get around this, we can be careful about when we define OpenLayers.Request. --- lib/OpenLayers/Request.js | 11 +++++++++-- lib/OpenLayers/Request/XMLHttpRequest.js | 7 +++++++ 2 files changed, 16 insertions(+), 2 deletions(-) diff --git a/lib/OpenLayers/Request.js b/lib/OpenLayers/Request.js index 2d1540e4ad..b64696f113 100644 --- a/lib/OpenLayers/Request.js +++ b/lib/OpenLayers/Request.js @@ -20,7 +20,14 @@ OpenLayers.ProxyHost = ""; * with XMLHttpRequests. These methods work with a cross-browser * W3C compliant class. */ -OpenLayers.Request = { +if (!OpenLayers.Requst) { + /** + * This allows for OpenLayers/Request/XMLHttpRequest.js to be included + * before or after this script. + */ + OpenLayers.Request = {}; +} +OpenLayers.Util.extend(OpenLayers.Request, { /** * Constant: DEFAULT_CONFIG @@ -420,4 +427,4 @@ OpenLayers.Request = { return OpenLayers.Request.issue(config); } -}; +}); diff --git a/lib/OpenLayers/Request/XMLHttpRequest.js b/lib/OpenLayers/Request/XMLHttpRequest.js index db322955d9..21200a6dae 100644 --- a/lib/OpenLayers/Request/XMLHttpRequest.js +++ b/lib/OpenLayers/Request/XMLHttpRequest.js @@ -447,5 +447,12 @@ * XMLHttpRequest object. From * http://code.google.com/p/xmlhttprequest/. */ + if (!OpenLayers.Request) { + /** + * This allows for OpenLayers/Request.js to be included + * before or after this script. + */ + OpenLayers.Request = {}; + } OpenLayers.Request.XMLHttpRequest = cXMLHttpRequest; })();