diff options
author | Leon Scroggins III <scroggo@google.com> | 2020-04-06 12:01:01 -0400 |
---|---|---|
committer | Leon Scroggins <scroggo@google.com> | 2020-04-06 21:11:37 +0000 |
commit | f97b29d2e3aefcb4bb31a7b7ead9f651a91e7ff4 (patch) | |
tree | 89b5bcee0eb9bfac59c74fc4a0b4a9115dc71af4 /libs/hwui/jni/CreateJavaOutputStreamAdaptor.cpp | |
parent | 60c8c9cece9d7d2eb1bd212de4e22168a1a22c45 (diff) |
Switch get_env_or_die to requireEnv
Fixes: 153099745
Test: manual
The heif decoder may need to continue reading the input from a
JavaInputStreamAdaptor on the AnimatedImageThread. Attach the JVM like
we do for ByteBufferStream and ByteArrayStream.
Similarly, if the AnimatedImageThread is holding a reference to an
AnimatedImageDrawable, it is possible to call its destructor, and
ultimately InvokeListener's destructor or ByteBufferStreamAdaptor's
release_proc on that thread without the JVM attached. Attach in that
case, too.
Change-Id: I84d236eed2fb5c8617533aed0cae4c762d1eb6dd
Diffstat (limited to 'libs/hwui/jni/CreateJavaOutputStreamAdaptor.cpp')
-rw-r--r-- | libs/hwui/jni/CreateJavaOutputStreamAdaptor.cpp | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/libs/hwui/jni/CreateJavaOutputStreamAdaptor.cpp b/libs/hwui/jni/CreateJavaOutputStreamAdaptor.cpp index 39483b55992b..f1c6b29204b2 100644 --- a/libs/hwui/jni/CreateJavaOutputStreamAdaptor.cpp +++ b/libs/hwui/jni/CreateJavaOutputStreamAdaptor.cpp @@ -49,13 +49,13 @@ public: } ~JavaInputStreamAdaptor() override { - auto* env = android::get_env_or_die(fJvm); + auto* env = android::requireEnv(fJvm); env->DeleteGlobalRef(fJavaInputStream); env->DeleteGlobalRef(fJavaByteArray); } size_t read(void* buffer, size_t size) override { - auto* env = android::get_env_or_die(fJvm); + auto* env = android::requireEnv(fJvm); if (!fSwallowExceptions && checkException(env)) { // Just in case the caller did not clear from a previous exception. return 0; |