Reviewers: fredsa,

Description:
Fix deobfuscation of throwables with a cause

Review by: fre...@google.com

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

Affected files:
  M user/src/com/google/gwt/logging/server/StackTraceDeobfuscator.java


Index: user/src/com/google/gwt/logging/server/StackTraceDeobfuscator.java
===================================================================
--- user/src/com/google/gwt/logging/server/StackTraceDeobfuscator.java (revision 9030) +++ user/src/com/google/gwt/logging/server/StackTraceDeobfuscator.java (working copy)
@@ -82,12 +82,15 @@
     return newSt;
   }

-  private Throwable deobfuscateThrowable(Throwable t, String strongName) {
-    if (t.getStackTrace() != null) {
- t.setStackTrace(deobfuscateStackTrace(t.getStackTrace(), strongName)); + private Throwable deobfuscateThrowable(Throwable old, String strongName) {
+    Throwable t = new Throwable(old.getMessage());
+    if (old.getStackTrace() != null) {
+ t.setStackTrace(deobfuscateStackTrace(old.getStackTrace(), strongName));
+    } else {
+      t.setStackTrace(new StackTraceElement[0]);
     }
-    if (t.getCause() != null) {
-      t.initCause(deobfuscateThrowable(t.getCause(), strongName));
+    if (old.getCause() != null) {
+      t.initCause(deobfuscateThrowable(old.getCause(), strongName));
     }
     return t;
   }


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

Reply via email to