From: Sam Ruby Date: Sat, 22 Jul 2000 12:40:49 +0000 (+0000) Subject: Don't assume that Java byte arrays are null terminated. X-Git-Tag: PRE_FILE_COMPILE_API_CHANGE~195 X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=313ca6b5e8446d5616806565acea626299031b89;p=php Don't assume that Java byte arrays are null terminated. --- diff --git a/ext/java/java.c b/ext/java/java.c index 701640b0e5..eac4745302 100644 --- a/ext/java/java.c +++ b/ext/java/java.c @@ -653,7 +653,8 @@ JNIEXPORT void JNICALL Java_net_php_reflect_setResultFromString presult->type=IS_STRING; presult->value.str.len=(*jenv)->GetArrayLength(jenv, jvalue); presult->value.str.val=emalloc(presult->value.str.len+1); - strcpy(presult->value.str.val, value); + memcpy(presult->value.str.val, value, presult->value.str.len); + presult->value.str.val[presult->value.str.len]=0; if (isCopy) (*jenv)->ReleaseByteArrayElements(jenv, jvalue, value, 0); } diff --git a/ext/rpc/java/java.c b/ext/rpc/java/java.c index 701640b0e5..eac4745302 100644 --- a/ext/rpc/java/java.c +++ b/ext/rpc/java/java.c @@ -653,7 +653,8 @@ JNIEXPORT void JNICALL Java_net_php_reflect_setResultFromString presult->type=IS_STRING; presult->value.str.len=(*jenv)->GetArrayLength(jenv, jvalue); presult->value.str.val=emalloc(presult->value.str.len+1); - strcpy(presult->value.str.val, value); + memcpy(presult->value.str.val, value, presult->value.str.len); + presult->value.str.val[presult->value.str.len]=0; if (isCopy) (*jenv)->ReleaseByteArrayElements(jenv, jvalue, value, 0); }