Reviewers: spoon, scottb,

Description:
Some user-agents return status code 0 when operating off of file: URLs.
This patch gets Showcase working from local files.

Please review this at http://gwt-code-reviews.appspot.com/20801

Affected files:
   user/src/com/google/gwt/core/client/AsyncFragmentLoader.java


Index: user/src/com/google/gwt/core/client/AsyncFragmentLoader.java
===================================================================
--- user/src/com/google/gwt/core/client/AsyncFragmentLoader.java        
(revision  
5214)
+++ user/src/com/google/gwt/core/client/AsyncFragmentLoader.java        
(working  
copy)
@@ -116,7 +116,7 @@
        super("HTTP download failed with status " + statusCode);
        this.statusCode = statusCode;
      }
-
+
      public int getStatusCode() {
        return statusCode;
      }
@@ -169,6 +169,12 @@

    private static final String HTTP_GET = "GET";

+  /**
+   * Some UA's like Safari will have a "0" status code when loading from  
file:
+   * URLs.
+   */
+  private static final int HTTP_STATUS_LOCAL = 0;
+
    private static final int HTTP_STATUS_OK = 200;

    /**
@@ -365,14 +371,16 @@
          public void onReadyStateChange(XMLHttpRequest xhr) {
            if (xhr.getReadyState() == XMLHttpRequest.DONE) {
              xhr.clearOnReadyStateChange();
-            if (xhr.getStatus() == HTTP_STATUS_OK) {
+            if (xhr.getStatus() == HTTP_STATUS_OK
+                || xhr.getStatus() == HTTP_STATUS_LOCAL) {
                try {
                  installCode(xhr.getResponseText());
                } catch (RuntimeException e) {
                  loadErrorHandler.loadFailed(e);
                }
              } else {
-              loadErrorHandler.loadFailed(new  
HttpDownloadFailure(xhr.getStatus()));
+              loadErrorHandler.loadFailed(new HttpDownloadFailure(
+                  xhr.getStatus()));
              }
            }
          }



--~--~---------~--~----~------------~-------~--~----~
http://groups.google.com/group/Google-Web-Toolkit-Contributors
-~----------~----~----~----~------~----~------~--~---

Reply via email to