diff --git a/Lib/java/director.swg b/Lib/java/director.swg index 0850564f3..355e62d67 100644 --- a/Lib/java/director.swg +++ b/Lib/java/director.swg @@ -369,7 +369,7 @@ namespace Swig { static char *copystr(const char *srcmsg) { char *target = 0; if (srcmsg) { - int msglen = strlen(srcmsg) + 1; + size_t msglen = strlen(srcmsg) + 1; target = new char[msglen]; strncpy(target, srcmsg, msglen); } diff --git a/Lib/java/java.swg b/Lib/java/java.swg index 37b3fa940..22a4884ef 100644 --- a/Lib/java/java.swg +++ b/Lib/java/java.swg @@ -1341,12 +1341,12 @@ SWIG_PROXY_CONSTRUCTOR(true, true, SWIGTYPE) if ($input) JCALL3(ReleaseByteArrayElements, jenv, $input, (jbyte *)$1, 0); } %typemap(directorin, descriptor="[B") (char *STRING, size_t LENGTH) { - jbyteArray jb = (jenv)->NewByteArray($2); - (jenv)->SetByteArrayRegion(jb, 0, $2, (jbyte *)$1); + jbyteArray jb = (jenv)->NewByteArray((jsize)$2); + (jenv)->SetByteArrayRegion(jb, 0, (jsize)$2, (jbyte *)$1); $input = jb; } %typemap(directorargout) (char *STRING, size_t LENGTH) -%{(jenv)->GetByteArrayRegion($input, 0, $2, (jbyte *)$1); +%{(jenv)->GetByteArrayRegion($input, 0, (jsize)$2, (jbyte *)$1); (jenv)->DeleteLocalRef($input);%} %typemap(javadirectorin, descriptor="[B") (char *STRING, size_t LENGTH) "$jniinput" %apply (char *STRING, size_t LENGTH) { (char *STRING, int LENGTH) } diff --git a/Lib/java/various.i b/Lib/java/various.i index bfcf346d3..e8042b763 100644 --- a/Lib/java/various.i +++ b/Lib/java/various.i @@ -65,7 +65,7 @@ %typemap(out) char **STRING_ARRAY { if ($1) { int i; - int len=0; + jsize len=0; jstring temp_string; const jclass clazz = JCALL1(FindClass, jenv, "java/lang/String");