From fbf68d1dd864220a0312bb0b089d8af9f65b3401 Mon Sep 17 00:00:00 2001 From: Petre Eftime Date: Tue, 1 Sep 2015 18:53:12 +0300 Subject: [PATCH] java: fix some cast issues with adxl345, free arrays Signed-off-by: Petre Eftime Signed-off-by: Mihai Tudor Panu --- src/adxl345/javaupm_adxl345.i | 15 ++++++++------- 1 file changed, 8 insertions(+), 7 deletions(-) diff --git a/src/adxl345/javaupm_adxl345.i b/src/adxl345/javaupm_adxl345.i index d83ef6cc..b1cdfd26 100644 --- a/src/adxl345/javaupm_adxl345.i +++ b/src/adxl345/javaupm_adxl345.i @@ -13,24 +13,25 @@ return $jnicall; } -%typemap(out) float *getAcceleration { +%typemap(out) float * { $result = JCALL1(NewFloatArray, jenv, 3); JCALL4(SetFloatArrayRegion, jenv, $result, 0, 3, $1); + delete [] $1; } -%typemap(jni) int16_t* "jintArray" -%typemap(jstype) int16_t* "int[]" -%typemap(jtype) int16_t* "int[]" +%typemap(jni) int16_t* "jshortArray" +%typemap(jstype) int16_t* "short[]" +%typemap(jtype) int16_t* "short[]" %typemap(javaout) int16_t* { return $jnicall; } %typemap(out) int16_t *getRawValues { - $result = JCALL1(NewIntArray, jenv, 3); - JCALL4(SetIntArrayRegion, jenv, $result, 0, 3, (const signed int*)$1); - //delete [] $1; + $result = JCALL1(NewShortArray, jenv, 3); + JCALL4(SetShortArrayRegion, jenv, $result, 0, 3, (jshort*)$1); + delete [] $1; } %include "adxl345.h"