diff --git a/ext/java/java.c b/ext/java/java.c index f407e7d1740..9d8a9ad2e98 100644 --- a/ext/java/java.c +++ b/ext/java/java.c @@ -689,7 +689,8 @@ JNIEXPORT void JNICALL Java_net_php_reflect_setResultFromObject /* wrapper the java object in a pval object */ pval *presult = (pval*)(long)result; pval *handle; - + TSRMLS_FETCH(); + if (presult->type != IS_OBJECT) { object_init_ex(presult, &java_class_entry); presult->is_ref=1; diff --git a/ext/rpc/java/java.c b/ext/rpc/java/java.c index f407e7d1740..9d8a9ad2e98 100644 --- a/ext/rpc/java/java.c +++ b/ext/rpc/java/java.c @@ -689,7 +689,8 @@ JNIEXPORT void JNICALL Java_net_php_reflect_setResultFromObject /* wrapper the java object in a pval object */ pval *presult = (pval*)(long)result; pval *handle; - + TSRMLS_FETCH(); + if (presult->type != IS_OBJECT) { object_init_ex(presult, &java_class_entry); presult->is_ref=1;