diff --git a/lib/less/browser.js b/lib/less/browser.js
index <HASH>..<HASH> 100644
--- a/lib/less/browser.js
+++ b/lib/less/browser.js
@@ -239,7 +239,7 @@ function xhr(url, type, callback, errback) {
     xhr.setRequestHeader('Accept', type || 'text/x-less, text/css; q=0.9, */*; q=0.5');
     xhr.send(null);
 
-    if (isFileProtocol) {
+    if (isFileProtocol && !less.fileAsync) {
         if (xhr.status === 0 || (xhr.status >= 200 && xhr.status < 300)) {
             callback(xhr.responseText);
         } else {
Check XHR return type appropriately

Asynchronous file XHRs need to listen for onreadystatechange.