diff options
| author | 2017-03-16 19:42:45 +0000 | |
|---|---|---|
| committer | 2017-03-16 19:42:45 +0000 | |
| commit | cea6624ffab5aeadd5eb295aa44e86f62ba9537e (patch) | |
| tree | 3b65e93f86fcfb8e1226cd91f2478cdc13f58ce0 | |
| parent | 959628a32ed0c5d3e9c69df1184f54f8919ea56b (diff) | |
| parent | 210b9afe64ecaf778cc48f051b20aed599e9dfab (diff) | |
Merge "Add HwParcel::releaseParcel()"
am: 210b9afe64
Change-Id: If08cb12187e9694144d5c07d9f6fcd67142b8af9
| -rw-r--r-- | core/java/android/os/HwParcel.java | 1 | ||||
| -rw-r--r-- | core/jni/android_os_HwParcel.cpp | 9 |
2 files changed, 10 insertions, 0 deletions
diff --git a/core/java/android/os/HwParcel.java b/core/java/android/os/HwParcel.java index a265dd08a92f..94fd5b074b82 100644 --- a/core/java/android/os/HwParcel.java +++ b/core/java/android/os/HwParcel.java @@ -219,6 +219,7 @@ public class HwParcel { public native final void writeStatus(int status); public native final void verifySuccess(); public native final void releaseTemporaryStorage(); + public native final void release(); public native final void send(); diff --git a/core/jni/android_os_HwParcel.cpp b/core/jni/android_os_HwParcel.cpp index 1bd233313ca3..678041f85d17 100644 --- a/core/jni/android_os_HwParcel.cpp +++ b/core/jni/android_os_HwParcel.cpp @@ -404,6 +404,11 @@ static void JHwParcel_native_verifySuccess(JNIEnv *env, jobject thiz) { signalExceptionForError(env, err); } +static void JHwParcel_native_release( + JNIEnv *env, jobject thiz) { + JHwParcel::GetNativeContext(env, thiz)->setParcel(NULL, false /* assumeOwnership */); +} + static void JHwParcel_native_releaseTemporaryStorage( JNIEnv *env, jobject thiz) { JHwParcel::GetNativeContext(env, thiz)->getStorage()->release(env); @@ -955,6 +960,10 @@ static JNINativeMethod gMethods[] = { { "writeBuffer", "(L" PACKAGE_PATH "/HwBlob;)V", (void *)JHwParcel_native_writeBuffer }, + + { "release", "()V", + (void *)JHwParcel_native_release }, + }; namespace android { |