[kaffe] [PATCH] String constructor wraps
UnsupportedEncodingException in Error
Noa Resare
noa at resare.com
Sat Oct 9 00:40:08 PDT 2004
I get the feeling that I'm missing something obvious here but to me the
code in libraries/javalib/java/lang/String.java:128 just seems strangely
broken:
public String(byte[] data, int offset, int count, String encoding)
throws UnsupportedEncodingException
{
if (offset < 0 || count < 0 || offset + count > data.length)
throw new StringIndexOutOfBoundsException();
try
{
// XXX Consider using java.nio here.
value = EncodingManager.getDecoder(encoding)
.convertToChars(data, offset, count);
}
catch (UnsupportedEncodingException uee)
{
throw new Error(uee);
}
catch (CharConversionException cce)
{
throw new Error(cce);
}
this.offset = 0;
this.count = value.length;
}
Why catch the UnsupportedEncodingException at all? The attached patch
removes the wrapping. It fixes two mauve regressions.
cheers/noa
-------------- next part --------------
A non-text attachment was scrubbed...
Name: kaffe-stringinit.patch
Type: text/x-patch
Size: 1218 bytes
Desc: not available
Url : http://pogo.kaffe.org/pipermail/kaffe/attachments/20041009/5ddf1497/kaffe-stringinit.bin
More information about the kaffe
mailing list