You are viewing a plain text version of this content. The canonical link for it is here.
Posted to derby-dev@db.apache.org by "Daniel John Debrunner (JIRA)" <de...@db.apache.org> on 2006/02/13 18:59:28 UTC

[jira] Commented: (DERBY-902) Remove use of String(byte[]) and String(byte[], int, int) constructors in engine leading to non-portable behaviour

    [ http://issues.apache.org/jira/browse/DERBY-902?page=comments#action_12366220 ] 

Daniel John Debrunner commented on DERBY-902:
---------------------------------------------

A simpler patch is just to have a string constant of three spaces, since that is what the code does:

here's more context to the patch

 		byte[] b = {20, 20, 20};
-		String errSeparator = new String(b);
+		String errSeparator = new String(b, "US-ASCII");
 
Not sure the original code was so complex, it really is:

  String errSeparator = "   ";



> Remove use of String(byte[]) and String(byte[], int, int) constructors in engine leading to non-portable behaviour
> ------------------------------------------------------------------------------------------------------------------
>
>          Key: DERBY-902
>          URL: http://issues.apache.org/jira/browse/DERBY-902
>      Project: Derby
>         Type: Bug
>   Components: Network Server
>     Reporter: Daniel John Debrunner
>      Fix For: 10.2.0.0
>  Attachments: DERBY-902_021306.stat, DERBY-902_021306_2.diff
>
> These constructors use the Java default platform encoding to convert the bytes to a String, this typically leads to bugs on platforms with different encodings.
> Replace with code using fixed conversion, or alternative mechanisms. 
> If the call is required its use should be commented as to why it is required.
> org.apache.derby.catalog.SystemProcedures
> I generated this list using the Java search in eclipse for references to the constructors
> String(byte[])
> String(byte[],int,int) - no occurrrences in java/engine

-- 
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators:
   http://issues.apache.org/jira/secure/Administrators.jspa
-
For more information on JIRA, see:
   http://www.atlassian.com/software/jira