diff --git a/com.oracle.truffle.r.ffi.impl/src/com/oracle/truffle/r/ffi/impl/common/JavaUpCallsRFFIImpl.java b/com.oracle.truffle.r.ffi.impl/src/com/oracle/truffle/r/ffi/impl/common/JavaUpCallsRFFIImpl.java
index 20866113b12c16c832b3425155a8192bf1c2fcb7..e60d227d77a467d222d39c95fd1be1fedb39e1de 100644
--- a/com.oracle.truffle.r.ffi.impl/src/com/oracle/truffle/r/ffi/impl/common/JavaUpCallsRFFIImpl.java
+++ b/com.oracle.truffle.r.ffi.impl/src/com/oracle/truffle/r/ffi/impl/common/JavaUpCallsRFFIImpl.java
@@ -983,6 +983,7 @@ public abstract class JavaUpCallsRFFIImpl implements UpCallsRFFI {
                     int sIdx = 0;
                     for (int i = 0; i < tLen; i++) {
                         c.copy(sIdx, i);
+                        sIdx++;
                         if (sIdx >= sLen) {
                             sIdx -= sLen;
                         }