Home | History | Annotate | Download | only in vm

Lines Matching full:jobj

311  * If "jobj" is NULL, or is a weak global reference whose reference has
312 * been cleared, this returns NULL. If jobj is an invalid indirect
317 Object* dvmDecodeIndirectRef(Thread* self, jobject jobj) {
318 if (jobj == NULL) {
322 switch (indirectRefKind(jobj)) {
325 Object* result = self->jniLocalRefTable.get(jobj);
327 ALOGE("JNI ERROR (app bug): use of deleted local reference (%p)", jobj);
337 Object* result = pRefTable->get(jobj);
339 ALOGE("JNI ERROR (app bug): use of deleted global reference (%p)", jobj);
349 Object* result = pRefTable->get(jobj);
353 ALOGE("JNI ERROR (app bug): use of deleted weak global reference (%p)", jobj);
362 return reinterpret_cast<Object*>(jobj);
364 ALOGW("Invalid indirect reference %p in decodeIndirectRef", jobj);
393 jobject jobj = (jobject) pRefTable->add(cookie, obj);
394 if (UNLIKELY(jobj == NULL)) {
402 return jobj;
418 static void deleteLocalReference(Thread* self, jobject jobj) {
419 if (jobj == NULL) {
426 if (!pRefTable->remove(cookie, jobj)) {
434 ALOGW("JNI WARNING: DeleteLocalRef(%p) failed to find entry", jobj);
491 jobject jobj = (jobject) gDvm.jniGlobalRefTable.add(IRT_FIRST_SEGMENT, obj);
492 if (jobj == NULL) {
503 return jobj;
513 jobject jobj = (jobject) table->add(IRT_FIRST_SEGMENT, obj);
514 if (jobj == NULL) {
519 return jobj;
522 static void deleteWeakGlobalReference(jobject jobj) {
523 if (jobj == NULL) {
529 if (!table->remove(IRT_FIRST_SEGMENT, jobj)) {
530 ALOGW("JNI: DeleteWeakGlobalRef(%p) failed to find entry", jobj);
541 static void deleteGlobalReference(jobject jobj) {
542 if (jobj == NULL) {
547 if (!gDvm.jniGlobalRefTable.remove(IRT_FIRST_SEGMENT, jobj)) {
548 ALOGW("JNI: DeleteGlobalRef(%p) failed to find entry", jobj);
662 jobjectRefType dvmGetJNIRefType(Thread* self, jobject jobj) {
668 assert(jobj != NULL);
670 Object* obj = dvmDecodeIndirectRef(self, jobj);
671 if (obj == reinterpret_cast<Object*>(jobj) && gDvmJni.workAroundAppJniBugs) {
672 // If we're handing out direct pointers, check whether 'jobj' is a direct reference
678 return (jobjectRefType) indirectRefKind(jobj);
1333 static jint Throw(JNIEnv* env, jthrowable jobj) {
1335 if (jobj != NULL) {
1336 Object* obj = dvmDecodeIndirectRef(ts.self(), jobj);
1449 static jobject NewGlobalRef(JNIEnv* env, jobject jobj) {
1451 Object* obj = dvmDecodeIndirectRef(ts.self(), jobj);
1467 static jobject NewLocalRef(JNIEnv* env, jobject jobj) {
1469 Object* obj = dvmDecodeIndirectRef(ts.self(), jobj);
1588 static jclass GetObjectClass(JNIEnv* env, jobject jobj) {
1591 assert(jobj != NULL);
1593 Object* obj = dvmDecodeIndirectRef(ts.self(), jobj);
1600 static jboolean IsInstanceOf(JNIEnv* env, jobject jobj, jclass jclazz) {
1604 if (jobj == NULL) {
1608 Object* obj = dvmDecodeIndirectRef(ts.self(), jobj);
1830 static _ctype Get##_jname##Field(JNIEnv* env, jobject jobj, \
1834 Object* obj = dvmDecodeIndirectRef(ts.self(), jobj); \
1870 static void Set##_jname##Field(JNIEnv* env, jobject jobj, \
1874 Object* obj = dvmDecodeIndirectRef(ts.self(), jobj); \
1911 static _ctype Call##_jname##Method(JNIEnv* env, jobject jobj, \
1915 Object* obj = dvmDecodeIndirectRef(ts.self(), jobj); \
1930 static _ctype Call##_jname##MethodV(JNIEnv* env, jobject jobj, \
1934 Object* obj = dvmDecodeIndirectRef(ts.self(), jobj); \
1946 static _ctype Call##_jname##MethodA(JNIEnv* env, jobject jobj, \
1950 Object* obj = dvmDecodeIndirectRef(ts.self(), jobj); \
1981 static _ctype CallNonvirtual##_jname##Method(JNIEnv* env, jobject jobj, \
1985 Object* obj = dvmDecodeIndirectRef(ts.self(), jobj); \
2001 static _ctype CallNonvirtual##_jname##MethodV(JNIEnv* env, jobject jobj,\
2005 Object* obj = dvmDecodeIndirectRef(ts.self(), jobj); \
2018 static _ctype CallNonvirtual##_jname##MethodA(JNIEnv* env, jobject jobj,\
2022 Object* obj = dvmDecodeIndirectRef(ts.self(), jobj); \
2300 static void SetObjectArrayElement(JNIEnv* env, jobjectArray jarr, jsize index, jobject jobj) {
2308 Object* obj = dvmDecodeIndirectRef(ts.self(), jobj);
2525 static jint MonitorEnter(JNIEnv* env, jobject jobj) {
2527 Object* obj = dvmDecodeIndirectRef(ts.self(), jobj);
2542 jobj) {
2544 Object* obj = dvmDecodeIndirectRef(ts.self(), jobj);
2651 static jweak NewWeakGlobalRef(JNIEnv* env, jobject jobj) {
2653 Object *obj = dvmDecodeIndirectRef(ts.self(), jobj);
2683 static jobjectRefType GetObjectRefType(JNIEnv* env, jobject jobj) {
2685 return dvmGetJNIRefType(ts.self(), jobj);