Revision: 6935 Author: [email protected] Date: Mon Nov 16 15:54:41 2009 Log: Fix JSONObject handling on Chrome in DevMode.
Patch by: jat Review by: jlabanca (desk) http://code.google.com/p/google-web-toolkit/source/detail?r=6935 Modified: /trunk/user/src/com/google/gwt/json/client/JSONObject.java ======================================= --- /trunk/user/src/com/google/gwt/json/client/JSONObject.java Thu Feb 19 22:19:58 2009 +++ /trunk/user/src/com/google/gwt/json/client/JSONObject.java Mon Nov 16 15:54:41 2009 @@ -195,7 +195,9 @@ private native void addAllKeys(Collection<String> s) /*-{ var jsObject = [email protected]::jsObject; for (var key in jsObject) { - [email protected]::add(Ljava/lang/Object;)(key); + if (jsObject.hasOwnProperty(key)) { + [email protected]::add(Ljava/lang/Object;)(key); + } } }-*/; @@ -213,7 +215,9 @@ var jsObject = [email protected]::jsObject; var i = 0; for (var key in jsObject) { - result[i++] = key; + if (jsObject.hasOwnProperty(key)) { + result[i++] = key; + } } return result; }-*/; @@ -222,13 +226,19 @@ var jsObject = [email protected]::jsObject; var size = 0; for (var key in jsObject) { - ++size; + if (jsObject.hasOwnProperty(key)) { + ++size; + } } return size; }-*/; private native JSONValue get0(String key) /*-{ - var v = [email protected]::jsObject[key]; + var jsObject = [email protected]::jsObject; + var v; + if (jsObject.hasOwnProperty(key)) { + v = jsObject[key]; + } var func = @com.google.gwt.json.client.JSONParser::typeMap[typeof v]; return func ? func(v) : @com.google.gwt.json.client.JSONParser::throwUnknownTypeException(Ljava/lang/String;)(typeof v); }-*/; -- http://groups.google.com/group/Google-Web-Toolkit-Contributors
