From ce3d3ef78d6512cc272d469e236fba4fca1189b0 Mon Sep 17 00:00:00 2001 From: James Dong Date: Tue, 12 Jun 2012 17:18:37 -0700 Subject: Fix one of the potential ANR issues from AwesomePlayer Change-Id: I8ac7bbb5fe219f65bdbdd223538fbac0575e2957 related-to-bug: 6565826 --- media/libstagefright/AwesomePlayer.cpp | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) (limited to 'media/libstagefright/AwesomePlayer.cpp') diff --git a/media/libstagefright/AwesomePlayer.cpp b/media/libstagefright/AwesomePlayer.cpp index 0749254..d7f721f 100644 --- a/media/libstagefright/AwesomePlayer.cpp +++ b/media/libstagefright/AwesomePlayer.cpp @@ -2120,7 +2120,13 @@ status_t AwesomePlayer::finishSetDataSource_l() { String8 mimeType; float confidence; sp dummy; - bool success = SniffWVM(dataSource, &mimeType, &confidence, &dummy); + bool success; + + // SniffWVM is potentially blocking since it may require network access. + // Do not call it with mLock held. + mLock.unlock(); + success = SniffWVM(dataSource, &mimeType, &confidence, &dummy); + mLock.lock(); if (!success || strcasecmp( -- cgit v1.1