From 068f94fd5ce6928d7285ebf7a0016dbb5b94f099 Mon Sep 17 00:00:00 2001 From: ray Date: Thu, 12 Jan 2006 00:45:43 +0000 Subject: [PATCH] Occam's razor: use Arrays to compare the stack trace elements. git-svn-id: https://samskivert.googlecode.com/svn/trunk@1755 6335cc39-0255-0410-8fd6-9bcaacd3b74c --- .../java/com/samskivert/util/ObjectUtil.java | 26 +++++-------------- 1 file changed, 6 insertions(+), 20 deletions(-) diff --git a/projects/samskivert/src/java/com/samskivert/util/ObjectUtil.java b/projects/samskivert/src/java/com/samskivert/util/ObjectUtil.java index a723ef2f..dc9c8922 100644 --- a/projects/samskivert/src/java/com/samskivert/util/ObjectUtil.java +++ b/projects/samskivert/src/java/com/samskivert/util/ObjectUtil.java @@ -23,6 +23,8 @@ package com.samskivert.util; import java.lang.reflect.Field; import java.io.PrintStream; +import java.util.Arrays; + /** * Utility methods that don't fit anywhere else. */ @@ -42,26 +44,10 @@ public class ObjectUtil */ public static boolean equals (Throwable t1, Throwable t2) { - if (t1 == t2) { - return true; - } - if (t1 == null || t2 == null) { - return false; - } - if (!equals(t1.getMessage(), t2.getMessage())) { - return false; - } - StackTraceElement[] ste1 = t1.getStackTrace(); - StackTraceElement[] ste2 = t2.getStackTrace(); - if (ste1.length != ste2.length) { - return false; - } - for (int ii = 0; ii < ste1.length; ii++) { - if (!ste1[ii].equals(ste2[ii])) { - return false; - } - } - return true; + return (t1 == t2) || + ((t1 != null) && (t2 != null) && + equals(t1.getMessage(), t2.getMessage()) && + Arrays.equals(t1.getStackTrace(), t2.getStackTrace())); } /**