summaryrefslogtreecommitdiff
path: root/native/jni/java-lang
diff options
context:
space:
mode:
authorArchie Cobbs <archie@dellroad.org>2005-03-12 03:49:41 +0000
committerArchie Cobbs <archie@dellroad.org>2005-03-12 03:49:41 +0000
commiteba8fd701fb403bb8ee3d5b6981a625b312a4b54 (patch)
treee3f2338517892d657b57fa6a38aab9eaa6eb0964 /native/jni/java-lang
parentfa2778fc94133ba8cac479394596e6ea01c928bd (diff)
downloadclasspath-eba8fd701fb403bb8ee3d5b6981a625b312a4b54.tar.gz
* native/jni/java-lang/java_lang_VMProcess.c: Fix segfault
in the case that a zero length command array is passed.
Diffstat (limited to 'native/jni/java-lang')
-rw-r--r--native/jni/java-lang/java_lang_VMProcess.c2
1 files changed, 2 insertions, 0 deletions
diff --git a/native/jni/java-lang/java_lang_VMProcess.c b/native/jni/java-lang/java_lang_VMProcess.c
index 5455c81ee..ded3fc807 100644
--- a/native/jni/java-lang/java_lang_VMProcess.c
+++ b/native/jni/java-lang/java_lang_VMProcess.c
@@ -177,6 +177,8 @@ Java_java_lang_VMProcess_nativeSpawn(JNIEnv *env, jobject this,
* directory into a single array for simplicity of (de)allocation.
*/
cmdArrayLen = (*env)->GetArrayLength(env, cmdArray);
+ if (cmdArrayLen == 0)
+ goto null_pointer_exception;
if (envArray != NULL)
envArrayLen = (*env)->GetArrayLength(env, envArray);
if ((strings = malloc(((cmdArrayLen + 1)