native: cleaner arraycopy
authorBernhard Urban <lewurm@gmail.com>
Mon, 18 Jun 2012 16:56:12 +0000 (18:56 +0200)
committerBernhard Urban <lewurm@gmail.com>
Tue, 19 Jun 2012 19:32:55 +0000 (21:32 +0200)
ffi/native.c

index 57a688e3e60c0dc28e5197298e1302b09ffa86a0..d14391467d9f49dded46eae4b0ea60225435805e 100644 (file)
@@ -58,7 +58,7 @@ struct string {
 
 struct chararray {
        unsigned int length;
-       char *str;
+       char str;
 };
 
 void java_io_PrintStream__printf_0___Ljava_lang_String__V
@@ -118,8 +118,7 @@ void java_lang_VMSystem__arraycopy___Ljava_lang_Object_ILjava_lang_Object_II_V(
                struct chararray *dest, int dest_start, int len)
 #endif
 {
-       /* TODO(bernhard): clean please... */
-       memcpy(((char *) dest) + 4, ((char *) src) + 4 + src_start, len);
+       memcpy(&dest->str, &src->str + src_start, len);
        dest->length = len;
 #if 0
        hexdump(src, len + 4);