Home | History | Annotate | Download | only in vm

Lines Matching full:jobj

304  * If "jobj" is NULL, or is a weak global reference whose reference has
305 * been cleared, this returns NULL. If jobj is an invalid indirect
310 Object* dvmDecodeIndirectRef(Thread* self, jobject jobj) {
311 if (jobj == NULL) {
315 switch (indirectRefKind(jobj)) {
318 Object* result = self->jniLocalRefTable.get(jobj);
320 ALOGE("JNI ERROR (app bug): use of deleted local reference (%p)", jobj);
330 Object* result = pRefTable->get(jobj);
332 ALOGE("JNI ERROR (app bug): use of deleted global reference (%p)", jobj);
342 Object* result = pRefTable->get(jobj);
346 ALOGE("JNI ERROR (app bug): use of deleted weak global reference (%p)", jobj);
355 return reinterpret_cast<Object*>(jobj);
357 ALOGW("Invalid indirect reference %p in decodeIndirectRef", jobj);
387 jobject jobj = (jobject) pRefTable->add(cookie, obj);
388 if (UNLIKELY(jobj == NULL)) {
395 return jobj;
411 static void deleteLocalReference(Thread* self, jobject jobj) {
412 if (jobj == NULL) {
419 if (!pRefTable->remove(cookie, jobj)) {
427 ALOGW("JNI WARNING: DeleteLocalRef(%p) failed to find entry", jobj);
484 jobject jobj = (jobject) gDvm.jniGlobalRefTable.add(IRT_FIRST_SEGMENT, obj);
485 if (jobj == NULL) {
517 return jobj;
527 jobject jobj = (jobject) table->add(IRT_FIRST_SEGMENT, obj);
528 if (jobj == NULL) {
533 return jobj;
536 static void deleteWeakGlobalReference(jobject jobj) {
537 if (jobj == NULL) {
543 if (!table->remove(IRT_FIRST_SEGMENT, jobj)) {
544 ALOGW("JNI: DeleteWeakGlobalRef(%p) failed to find entry", jobj);
555 static void deleteGlobalReference(jobject jobj) {
556 if (jobj == NULL) {
561 if (!gDvm.jniGlobalRefTable.remove(IRT_FIRST_SEGMENT, jobj)) {
562 ALOGW("JNI: DeleteGlobalRef(%p) failed to find entry", jobj);
665 jobjectRefType dvmGetJNIRefType(Thread* self, jobject jobj) {
671 assert(jobj != NULL);
673 Object* obj = dvmDecodeIndirectRef(self, jobj);
674 if (obj == reinterpret_cast<Object*>(jobj) && gDvmJni.workAroundAppJniBugs) {
675 // If we're handing out direct pointers, check whether 'jobj' is a direct reference
681 return (jobjectRefType) indirectRefKind(jobj);
1329 static jint Throw(JNIEnv* env, jthrowable jobj) {
1331 if (jobj != NULL) {
1332 Object* obj = dvmDecodeIndirectRef(ts.self(), jobj);
1445 static jobject NewGlobalRef(JNIEnv* env, jobject jobj) {
1447 Object* obj = dvmDecodeIndirectRef(ts.self(), jobj);
1463 static jobject NewLocalRef(JNIEnv* env, jobject jobj) {
1465 Object* obj = dvmDecodeIndirectRef(ts.self(), jobj);
1584 static jclass GetObjectClass(JNIEnv* env, jobject jobj) {
1587 assert(jobj != NULL);
1589 Object* obj = dvmDecodeIndirectRef(ts.self(), jobj);
1596 static jboolean IsInstanceOf(JNIEnv* env, jobject jobj, jclass jclazz) {
1600 if (jobj == NULL) {
1604 Object* obj = dvmDecodeIndirectRef(ts.self(), jobj);
1826 static _ctype Get##_jname##Field(JNIEnv* env, jobject jobj, \
1830 Object* obj = dvmDecodeIndirectRef(ts.self(), jobj); \
1866 static void Set##_jname##Field(JNIEnv* env, jobject jobj, \
1870 Object* obj = dvmDecodeIndirectRef(ts.self(), jobj); \
1907 static _ctype Call##_jname##Method(JNIEnv* env, jobject jobj, \
1911 Object* obj = dvmDecodeIndirectRef(ts.self(), jobj); \
1926 static _ctype Call##_jname##MethodV(JNIEnv* env, jobject jobj, \
1930 Object* obj = dvmDecodeIndirectRef(ts.self(), jobj); \
1942 static _ctype Call##_jname##MethodA(JNIEnv* env, jobject jobj, \
1946 Object* obj = dvmDecodeIndirectRef(ts.self(), jobj); \
1977 static _ctype CallNonvirtual##_jname##Method(JNIEnv* env, jobject jobj, \
1981 Object* obj = dvmDecodeIndirectRef(ts.self(), jobj); \
1997 static _ctype CallNonvirtual##_jname##MethodV(JNIEnv* env, jobject jobj,\
2001 Object* obj = dvmDecodeIndirectRef(ts.self(), jobj); \
2014 static _ctype CallNonvirtual##_jname##MethodA(JNIEnv* env, jobject jobj,\
2018 Object* obj = dvmDecodeIndirectRef(ts.self(), jobj); \
2296 static void SetObjectArrayElement(JNIEnv* env, jobjectArray jarr, jsize index, jobject jobj) {
2304 Object* obj = dvmDecodeIndirectRef(ts.self(), jobj);
2521 static jint MonitorEnter(JNIEnv* env, jobject jobj) {
2523 Object* obj = dvmDecodeIndirectRef(ts.self(), jobj);
2538 jobj) {
2540 Object* obj = dvmDecodeIndirectRef(ts.self(), jobj);
2647 static jweak NewWeakGlobalRef(JNIEnv* env, jobject jobj) {
2649 Object *obj = dvmDecodeIndirectRef(ts.self(), jobj);
2679 static jobjectRefType GetObjectRefType(JNIEnv* env, jobject jobj) {
2681 return dvmGetJNIRefType(ts.self(), jobj);