Merge "javaObjectForIBinder: warn rets global and local" am: 2abd02381f am: fdb701f31d am: 1425072dcc

Original change: https://android-review.googlesource.com/c/platform/frameworks/base/+/2067811

Change-Id: I402e0bf35780120d10cff594d04805b48fe7eba0
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
This commit is contained in:
Treehugger Robot
2022-04-22 02:48:52 +00:00
committed by Automerger Merge Worker

View File

@@ -24,8 +24,18 @@
namespace android {
// Converstion to/from Java IBinder Object and C++ IBinder instance.
/**
* Conversion to Java IBinder Object from C++ IBinder instance.
*
* WARNING: this function returns global and local references. This can be
* figured out using GetObjectRefType. Though, when this function is called
* from within a Java context, the local ref will automatically be cleaned
* up. If this is called outside of a Java frame,
* PushObjectFrame/PopObjectFrame can simulate this automatic cleanup. The
* platform provides ScopedLocalFrame as an RAII object for this.
*/
extern jobject javaObjectForIBinder(JNIEnv* env, const sp<IBinder>& val);
/** Conversion from Java IBinder Object to C++ IBinder instance. */
extern sp<IBinder> ibinderForJavaObject(JNIEnv* env, jobject obj);
extern jobject newParcelFileDescriptor(JNIEnv* env, jobject fileDesc);