Don't let an exception escape if we can't decode cookies. Future work to
support non-encoding of cookies is captured in issue 3566.
Issue: 1633
Patch by: jat
Review by: jgw (desk)
git-svn-id: https://google-web-toolkit.googlecode.com/svn/trunk@5254 8db76d5a-ed1c-0410-87a9-c151d255dfc7
diff --git a/user/src/com/google/gwt/user/client/Cookies.java b/user/src/com/google/gwt/user/client/Cookies.java
index 81ab03e..1ab8492 100644
--- a/user/src/com/google/gwt/user/client/Cookies.java
+++ b/user/src/com/google/gwt/user/client/Cookies.java
@@ -120,8 +120,16 @@
name = crumbs[i].substring(0, eqIdx);
value = crumbs[i].substring(eqIdx + 1);
}
- name = decodeURIComponent(name);
- value = decodeURIComponent(value);
+ try {
+ name = decodeURIComponent(name);
+ } catch (e) {
+ // ignore error, keep undecoded name
+ }
+ try {
+ value = decodeURIComponent(value);
+ } catch (e) {
+ // ignore error, keep undecoded value
+ }
m.@java.util.Map::put(Ljava/lang/Object;Ljava/lang/Object;)(name,value);
}
}