You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@myfaces.apache.org by aw...@apache.org on 2007/07/16 22:59:57 UTC
svn commit: r556736 -
/myfaces/trinidad/trunk/trinidad/trinidad-api/src/main/java/org/apache/myfaces/trinidad/render/CoreRenderer.java
Author: awiner
Date: Mon Jul 16 13:59:56 2007
New Revision: 556736
URL: http://svn.apache.org/viewvc?view=rev&rev=556736
Log:
TRINIDAD-104: Don't write NULL characters as output
- In CoreRenderer.toChar(), catch any uses of NUL (\u0000) by returning CHAR_UNDEFINED
Modified:
myfaces/trinidad/trunk/trinidad/trinidad-api/src/main/java/org/apache/myfaces/trinidad/render/CoreRenderer.java
Modified: myfaces/trinidad/trunk/trinidad/trinidad-api/src/main/java/org/apache/myfaces/trinidad/render/CoreRenderer.java
URL: http://svn.apache.org/viewvc/myfaces/trinidad/trunk/trinidad/trinidad-api/src/main/java/org/apache/myfaces/trinidad/render/CoreRenderer.java?view=diff&rev=556736&r1=556735&r2=556736
==============================================================================
--- myfaces/trinidad/trunk/trinidad/trinidad-api/src/main/java/org/apache/myfaces/trinidad/render/CoreRenderer.java (original)
+++ myfaces/trinidad/trunk/trinidad/trinidad-api/src/main/java/org/apache/myfaces/trinidad/render/CoreRenderer.java Mon Jul 16 13:59:56 2007
@@ -147,26 +147,38 @@
{
if (o == null)
return CHAR_UNDEFINED;
-
+
+ char c;
if (o instanceof Character)
- return ((Character) o).charValue();
-
- // If it's not a Character object, then let's turn it into
- // a CharSequence and grab the first character
- CharSequence cs;
- if (o instanceof CharSequence)
{
- cs = (CharSequence) o;
+ c = ((Character) o).charValue();
}
else
{
- cs = o.toString();
+ // If it's not a Character object, then let's turn it into
+ // a CharSequence and grab the first character
+ CharSequence cs;
+ if (o instanceof CharSequence)
+ {
+ cs = (CharSequence) o;
+ }
+ else
+ {
+ cs = o.toString();
+ }
+
+ if (cs.length() == 0)
+ c = CHAR_UNDEFINED;
+ else
+ c = cs.charAt(0);
}
-
- if (cs.length() == 0)
- return CHAR_UNDEFINED;
- return cs.charAt(0);
+ // Handle the occasional odd bit of code that likes
+ // returning null, and treat it identically to UNDEFINED.
+ if (c == '\u0000')
+ c = CHAR_UNDEFINED;
+
+ return c;
}