You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@commons.apache.org by si...@apache.org on 2012/09/07 20:32:04 UTC
svn commit: r1382115 - in /commons/proper/digester/trunk:
core/src/main/java/org/apache/commons/digester3/Digester.java
src/changes/changes.xml
Author: simonetripodi
Date: Fri Sep 7 18:32:03 2012
New Revision: 1382115
URL: http://svn.apache.org/viewvc?rev=1382115&view=rev
Log:
[DIGESTER-170] Digester.pop(String) throws EmptyStackException where API doc says it returns null
Modified:
commons/proper/digester/trunk/core/src/main/java/org/apache/commons/digester3/Digester.java
commons/proper/digester/trunk/src/changes/changes.xml
Modified: commons/proper/digester/trunk/core/src/main/java/org/apache/commons/digester3/Digester.java
URL: http://svn.apache.org/viewvc/commons/proper/digester/trunk/core/src/main/java/org/apache/commons/digester3/Digester.java?rev=1382115&r1=1382114&r2=1382115&view=diff
==============================================================================
--- commons/proper/digester/trunk/core/src/main/java/org/apache/commons/digester3/Digester.java (original)
+++ commons/proper/digester/trunk/core/src/main/java/org/apache/commons/digester3/Digester.java Fri Sep 7 18:32:03 2012
@@ -2747,7 +2747,6 @@ public class Digester
*/
public <T> T pop( String stackName )
{
- T result = null;
Stack<Object> namedStack = stacksByName.get( stackName );
if ( namedStack == null )
{
@@ -2755,17 +2754,23 @@ public class Digester
{
log.debug( "Stack '" + stackName + "' is empty" );
}
- throw new EmptyStackException();
+ return null;
}
- result = this.<T> npeSafeCast( namedStack.pop() );
-
- if ( stackAction != null )
+ try
+ {
+ T popped = this.<T> npeSafeCast( namedStack.pop() );
+ if ( stackAction != null )
+ {
+ popped = stackAction.onPop( this, stackName, popped );
+ }
+ return popped;
+ }
+ catch ( EmptyStackException e )
{
- result = stackAction.onPop( this, stackName, result );
+ log.warn( "Empty stack (returning null)" );
+ return ( null );
}
-
- return result;
}
/**
Modified: commons/proper/digester/trunk/src/changes/changes.xml
URL: http://svn.apache.org/viewvc/commons/proper/digester/trunk/src/changes/changes.xml?rev=1382115&r1=1382114&r2=1382115&view=diff
==============================================================================
--- commons/proper/digester/trunk/src/changes/changes.xml (original)
+++ commons/proper/digester/trunk/src/changes/changes.xml Fri Sep 7 18:32:03 2012
@@ -23,6 +23,9 @@
</properties>
<body>
<release version="3.3" date="201?-??-??" description="Maintenance release.">
+ <action dev="simonetripodi" type="fix" issue="DIGESTER-170" due-to="Dale Wijnand">
+ Digester.pop(String) throws EmptyStackException where API doc says it returns null
+ </action>
<action dev="simonetripodi" type="fix" issue="DIGESTER-169" due-to="Eugene Fedotov">
Problem when including rules XML file with "classpath:" URL prefix
</action>