From f38290846923e5198dbebdca36eb0527854580c9 Mon Sep 17 00:00:00 2001 From: Wendy Smoak Date: Sun, 27 Jul 2008 06:25:58 +0000 Subject: [PATCH] [WW-2734] Fix impossible casts, reported by FindBugs. git-svn-id: https://svn.apache.org/repos/asf/struts/struts2/branches/STRUTS_2_0_X@680067 13f79535-47bb-0310-9956-ffa450edef68 --- .../views/jsp/iterator/SubsetIteratorTag.java | 4 ++-- .../struts2/views/jsp/SubsetIteratorTagTest.java | 15 +++++++++++++++ 2 files changed, 17 insertions(+), 2 deletions(-) diff --git a/core/src/main/java/org/apache/struts2/views/jsp/iterator/SubsetIteratorTag.java b/core/src/main/java/org/apache/struts2/views/jsp/iterator/SubsetIteratorTag.java index 61f394257..6a6b2ac95 100644 --- a/core/src/main/java/org/apache/struts2/views/jsp/iterator/SubsetIteratorTag.java +++ b/core/src/main/java/org/apache/struts2/views/jsp/iterator/SubsetIteratorTag.java @@ -214,7 +214,7 @@ public class SubsetIteratorTag extends StrutsBodyTagSupport { count = ((Long)countObj).intValue(); } else if (countObj instanceof Double) { - count = ((Long)countObj).intValue(); + count = ((Double)countObj).intValue(); } else if (countObj instanceof String) { try { @@ -240,7 +240,7 @@ public class SubsetIteratorTag extends StrutsBodyTagSupport { start = ((Long)startObj).intValue(); } else if (startObj instanceof Double) { - start = ((Long)startObj).intValue(); + start = ((Double)startObj).intValue(); } else if (startObj instanceof String) { try { diff --git a/core/src/test/java/org/apache/struts2/views/jsp/SubsetIteratorTagTest.java b/core/src/test/java/org/apache/struts2/views/jsp/SubsetIteratorTagTest.java index 4d0b093e0..efc46728e 100644 --- a/core/src/test/java/org/apache/struts2/views/jsp/SubsetIteratorTagTest.java +++ b/core/src/test/java/org/apache/struts2/views/jsp/SubsetIteratorTagTest.java @@ -243,6 +243,21 @@ public class SubsetIteratorTagTest extends AbstractTagTest { } + public void testWithDoubleCount() throws Exception { + SubsetIteratorTag tag = new SubsetIteratorTag(); + tag.setPageContext(pageContext); + tag.setCount("3.0"); + tag.doStartTag(); + tag.doEndTag(); + } + + public void testWithDoubleStart() throws Exception { + SubsetIteratorTag tag = new SubsetIteratorTag(); + tag.setPageContext(pageContext); + tag.setStart("2.0"); + tag.doStartTag(); + tag.doEndTag(); + } public Action getAction() { return new ActionSupport() {