summaryrefslogtreecommitdiff
path: root/ext/rpc/java/java.c
diff options
context:
space:
mode:
authorSam Ruby <rubys@php.net>2000-07-22 17:32:32 +0000
committerSam Ruby <rubys@php.net>2000-07-22 17:32:32 +0000
commit3f4c7c8359918f873c4574819a86ac6120aa4474 (patch)
treed6e3eb78315329effc816f3bf2abbc1aa8b2f643 /ext/rpc/java/java.c
parent7893c729652de3435334124593a4a46acf5e811b (diff)
downloadphp-git-3f4c7c8359918f873c4574819a86ac6120aa4474.tar.gz
Allow java.lang.Hashtables to be passed into PHP as arrays.
Diffstat (limited to 'ext/rpc/java/java.c')
-rw-r--r--ext/rpc/java/java.c13
1 files changed, 13 insertions, 0 deletions
diff --git a/ext/rpc/java/java.c b/ext/rpc/java/java.c
index e74d060bbe..9eb19ae91e 100644
--- a/ext/rpc/java/java.c
+++ b/ext/rpc/java/java.c
@@ -730,6 +730,19 @@ JNIEXPORT jlong JNICALL Java_net_php_reflect_nextElement
return (jlong)(long)result;
}
+JNIEXPORT jlong JNICALL Java_net_php_reflect_hashUpdate
+ (JNIEnv *jenv, jclass self, jlong array, jbyteArray key)
+{
+ pval *result;
+ pval pkey;
+ pval *handle = (pval*)(long)array;
+ ALLOC_ZVAL(result);
+ Java_net_php_reflect_setResultFromString(jenv, self, (jlong)(long)&pkey, key);
+ zend_hash_update(handle->value.ht, pkey.value.str.val, pkey.value.str.len+1,
+ &result, sizeof(zval *), NULL);
+ return (jlong)(long)result;
+}
+
JNIEXPORT void JNICALL Java_net_php_reflect_setException
(JNIEnv *jenv, jclass self, jlong result, jbyteArray value)
{