diff options
| author | 2011-09-15 15:28:43 -0700 | |
|---|---|---|
| committer | 2011-09-15 15:38:36 -0700 | |
| commit | 81b37d8bde34ef3bb8eb8dfd7492761a39a8fd09 (patch) | |
| tree | dbab2126f8f4d8e26a596c25f2138d803f9c5ac7 | |
| parent | c286b2cc26d57efa5fef42c085bb2eb330021114 (diff) | |
If media player has died already, do not dec the old surface texture reference.
Otherwise segfault will occur.
For bug 5327664.
Do not merge.
Change-Id: I03ea7bc047aa99a106f1e010dac74f75a833ef84
| -rw-r--r-- | media/jni/android_media_MediaPlayer.cpp | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/media/jni/android_media_MediaPlayer.cpp b/media/jni/android_media_MediaPlayer.cpp index f16a029a36cf..c270f21a7b25 100644 --- a/media/jni/android_media_MediaPlayer.cpp +++ b/media/jni/android_media_MediaPlayer.cpp @@ -247,6 +247,11 @@ getVideoSurfaceTexture(JNIEnv* env, jobject thiz) { static void decVideoSurfaceRef(JNIEnv *env, jobject thiz) { + sp<MediaPlayer> mp = getMediaPlayer(env, thiz); + if (mp == NULL) { + return; + } + sp<ISurfaceTexture> old_st = getVideoSurfaceTexture(env, thiz); if (old_st != NULL) { old_st->decStrong(thiz); |