More fixes for bug 43656 so new test case passes.
authormarkt <markt@13f79535-47bb-0310-9956-ffa450edef68>
Sat, 19 Apr 2008 09:47:07 +0000 (09:47 +0000)
committermarkt <markt@13f79535-47bb-0310-9956-ffa450edef68>
Sat, 19 Apr 2008 09:47:07 +0000 (09:47 +0000)
git-svn-id: https://svn.apache.org/repos/asf/tomcat/trunk@649784 13f79535-47bb-0310-9956-ffa450edef68

java/org/apache/el/lang/ELSupport.java

index c638c6d..3b9fca9 100644 (file)
@@ -223,9 +223,15 @@ public class ELSupport {
             if (number instanceof BigDecimal) {
                 return ((BigDecimal) number).toBigInteger();
             }
+            if (number instanceof BigInteger) {
+                return new BigInteger(number.toString());
+            }
             return BigInteger.valueOf(number.longValue());
         }
         if (BigDecimal.class.equals(type)) {
+            if (number instanceof BigDecimal) {
+                return new BigDecimal(number.toString());
+            }
             if (number instanceof BigInteger) {
                 return new BigDecimal((BigInteger) number);
             }