@@ -258,7 +258,7 @@ public void setLocalArg(int argIndex, long localArgByteLength) {
258258 setKernelArg (argIndex , localArgByteLength , null );
259259 }
260260
261- protected void setKernelArg (int i , long size , Pointer <?> ptr ) {
261+ private void setKernelArg (int i , long size , Pointer <?> ptr ) {
262262 if (size <= 0 )
263263 throw new IllegalArgumentException ("Kernel args must have a known byte size, given " + size + " instead." );
264264 try {
@@ -277,49 +277,49 @@ public void setArg(int i, float[] arg) {
277277 setArg (i , arg , tmp ());
278278 }
279279 private void setArg (int i , float [] arg , Pointer <?> tmp ) {
280- setArg (i , arg .length <= MAX_TMP_ITEMS ? tmp .setFloats (arg ) : pointerToFloats (arg ));
280+ setArg (i , arg .length * 4 , arg . length <= MAX_TMP_ITEMS ? tmp .setFloats (arg ) : pointerToFloats (arg ));
281281 }
282282 public void setArg (int i , int [] arg ) {
283283 setArg (i , arg , tmp ());
284284 }
285285 private void setArg (int i , int [] arg , Pointer <?> tmp ) {
286- setArg (i , arg .length <= MAX_TMP_ITEMS ? tmp .setInts (arg ) : pointerToInts (arg ));
286+ setArg (i , arg .length * 4 , arg . length <= MAX_TMP_ITEMS ? tmp .setInts (arg ) : pointerToInts (arg ));
287287 }
288288 public void setArg (int i , double [] arg ) {
289289 setArg (i , arg , tmp ());
290290 }
291291 private void setArg (int i , double [] arg , Pointer <?> tmp ) {
292- setArg (i , arg .length <= MAX_TMP_ITEMS ? tmp .setDoubles (arg ) : pointerToDoubles (arg ));
292+ setArg (i , arg .length * 8 , arg . length <= MAX_TMP_ITEMS ? tmp .setDoubles (arg ) : pointerToDoubles (arg ));
293293 }
294294 public void setArg (int i , long [] arg ) {
295295 setArg (i , arg , tmp ());
296296 }
297297 private void setArg (int i , long [] arg , Pointer <?> tmp ) {
298- setArg (i , arg .length <= MAX_TMP_ITEMS ? tmp .setLongs (arg ) : pointerToLongs (arg ));
298+ setArg (i , arg .length * 8 , arg . length <= MAX_TMP_ITEMS ? tmp .setLongs (arg ) : pointerToLongs (arg ));
299299 }
300300 public void setArg (int i , short [] arg ) {
301301 setArg (i , arg , tmp ());
302302 }
303303 private void setArg (int i , short [] arg , Pointer <?> tmp ) {
304- setArg (i , arg .length <= MAX_TMP_ITEMS ? tmp .setShorts (arg ) : pointerToShorts (arg ));
304+ setArg (i , arg .length * 2 , arg . length <= MAX_TMP_ITEMS ? tmp .setShorts (arg ) : pointerToShorts (arg ));
305305 }
306306 public void setArg (int i , byte [] arg ) {
307307 setArg (i , arg , tmp ());
308308 }
309309 private void setArg (int i , byte [] arg , Pointer <?> tmp ) {
310- setArg (i , arg .length <= MAX_TMP_ITEMS ? tmp .setBytes (arg ) : pointerToBytes (arg ));
310+ setArg (i , arg .length , arg . length <= MAX_TMP_ITEMS ? tmp .setBytes (arg ) : pointerToBytes (arg ));
311311 }
312312 public void setArg (int i , boolean [] arg ) {
313313 setArg (i , arg , tmp ());
314314 }
315315 private void setArg (int i , boolean [] arg , Pointer <?> tmp ) {
316- setArg (i , arg .length <= MAX_TMP_ITEMS ? tmp .setBooleans (arg ) : pointerToBooleans (arg ));
316+ setArg (i , arg .length , arg . length <= MAX_TMP_ITEMS ? tmp .setBooleans (arg ) : pointerToBooleans (arg ));
317317 }
318318 public void setArg (int i , char [] arg ) {
319319 setArg (i , arg , tmp ());
320320 }
321321 private void setArg (int i , char [] arg , Pointer <?> tmp ) {
322- setArg (i , arg .length <= MAX_TMP_ITEMS ? tmp .setChars (arg ) : pointerToChars (arg ));
322+ setArg (i , arg .length * 2 , arg . length <= MAX_TMP_ITEMS ? tmp .setChars (arg ) : pointerToChars (arg ));
323323 }
324324
325325 public void setArg (int i , SizeT arg ) {
0 commit comments