From 7893c729652de3435334124593a4a46acf5e811b Mon Sep 17 00:00:00 2001 From: Sam Ruby Date: Sat, 22 Jul 2000 16:13:20 +0000 Subject: Verify that a classname is actually passed on a new Java() call. --- ext/rpc/java/java.c | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) (limited to 'ext/rpc/java/java.c') diff --git a/ext/rpc/java/java.c b/ext/rpc/java/java.c index eac4745302..e74d060bbe 100644 --- a/ext/rpc/java/java.c +++ b/ext/rpc/java/java.c @@ -434,9 +434,15 @@ void java_call_function_handler jmethodID co = (*jenv)->GetMethodID(jenv, JG(reflect_class), "CreateObject", "(Ljava/lang/String;[Ljava/lang/Object;J)V"); - jstring className=(*jenv)->NewStringUTF(jenv, arguments[0]->value.str.val); + jstring className; (pval*)(long)result = object; + if (ZEND_NUM_ARGS() < 1) { + php_error(E_ERROR, "Missing classname in new Java() call"); + return; + } + + className=(*jenv)->NewStringUTF(jenv, arguments[0]->value.str.val); (*jenv)->CallVoidMethod(jenv, JG(php_reflect), co, className, _java_makeArray(arg_count-1, arguments+1 JG_CC), result); -- cgit v1.2.1