Changed jsj_HashJavaObject to conform to JSJHashFunction.

This commit is contained in:
beard 1998-07-01 00:21:18 +00:00
Родитель 0f3bc0bc43
Коммит e77b637d38
2 изменённых файлов: 7 добавлений и 4 удалений

Просмотреть файл

@ -29,6 +29,7 @@
#ifndef _JSJAVA_PVT_H
#define _JSJAVA_PVT_H
#include "jsj_hash.h" /* Hash tables */
#include "prhash.h" /* NSPR hash-tables */
#include "jni.h" /* Java Native Interface */
#include "jsapi.h" /* JavaScript engine API */
@ -462,8 +463,8 @@ jsj_GetJavaErrorMessage(JNIEnv *env);
extern void
jsj_LogError(const char *error_msg);
PR_CALLBACK prhashcode
jsj_HashJavaObject(const void *key, JNIEnv *jEnv);
PR_CALLBACK JSJHashNumber
jsj_HashJavaObject(const void *key, void* env);
PR_CALLBACK intN
jsj_JavaObjectComparator(const void *v1, const void *v2, void *arg);

Просмотреть файл

@ -40,13 +40,15 @@
* This is a hash-table utility routine that computes the hash code of a Java
* object by calling java.lang.System.identityHashCode()
*/
PR_CALLBACK prhashcode
jsj_HashJavaObject(const void *key, JNIEnv *jEnv)
PR_CALLBACK JSJHashNumber
jsj_HashJavaObject(const void *key, void* env)
{
prhashcode hash_code;
jobject java_obj;
JNIEnv *jEnv;
java_obj = (jobject)key;
jEnv = (JNIEnv*) env;
hash_code = (*jEnv)->CallStaticIntMethod(jEnv, jlSystem,
jlSystem_identityHashCode, java_obj);
PR_ASSERT(!(*jEnv)->ExceptionOccurred(jEnv));