emul/src/main/java/java/lang/AbstractStringBuilder.java
changeset 192 3bb0eb51bed6
parent 188 51d08c49e9b6
child 203 c6a0b5b64133
     1.1 --- a/emul/src/main/java/java/lang/AbstractStringBuilder.java	Sun Nov 18 21:58:44 2012 +0100
     1.2 +++ b/emul/src/main/java/java/lang/AbstractStringBuilder.java	Wed Nov 21 21:48:51 2012 +0100
     1.3 @@ -1416,8 +1416,14 @@
     1.4      }
     1.5  
     1.6      static void arraycopy(char[] value, int srcBegin, char[] dst, int dstBegin, int count) {
     1.7 -        while (count-- > 0) {
     1.8 -            dst[dstBegin + count] = value[srcBegin + count];
     1.9 +        if (srcBegin < dstBegin) {
    1.10 +            while (count-- > 0) {
    1.11 +                dst[dstBegin + count] = value[srcBegin + count];
    1.12 +            }
    1.13 +        } else {
    1.14 +            while (count-- > 0) {
    1.15 +                dst[dstBegin++] = value[srcBegin++];
    1.16 +            }
    1.17          }
    1.18      }
    1.19