summaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorleozwang <leozwang@google.com>2015-02-09 04:14:27 +0000
committerAndroid Git Automerger <android-git-automerger@android.com>2015-02-09 04:14:27 +0000
commitf2096bd3b55154f8bf811bfcd655f9c7f442e967 (patch)
tree97d7e7feed0c438d441fd444670fec959a176d66 /src
parent50ef13da2b0f5b9a95f0172cccf27d29500a67a0 (diff)
parentfe619b536938e7c2835c4858b96983ff7d297932 (diff)
downloadandroid_packages_providers_MediaProvider-f2096bd3b55154f8bf811bfcd655f9c7f442e967.tar.gz
android_packages_providers_MediaProvider-f2096bd3b55154f8bf811bfcd655f9c7f442e967.tar.bz2
android_packages_providers_MediaProvider-f2096bd3b55154f8bf811bfcd655f9c7f442e967.zip
am fe619b53: am 1baeeea4: am d1f37448: Check mCurrentThumbRequest.mPath to prevent crash.
* commit 'fe619b536938e7c2835c4858b96983ff7d297932': Check mCurrentThumbRequest.mPath to prevent crash.
Diffstat (limited to 'src')
-rwxr-xr-xsrc/com/android/providers/media/MediaProvider.java34
1 files changed, 18 insertions, 16 deletions
diff --git a/src/com/android/providers/media/MediaProvider.java b/src/com/android/providers/media/MediaProvider.java
index 6044d996..0e8259bd 100755
--- a/src/com/android/providers/media/MediaProvider.java
+++ b/src/com/android/providers/media/MediaProvider.java
@@ -619,24 +619,26 @@ public class MediaProvider extends ContentProvider {
Log.w(TAG, "Have message but no request?");
} else {
try {
- File origFile = new File(mCurrentThumbRequest.mPath);
- if (origFile.exists() && origFile.length() > 0) {
- mCurrentThumbRequest.execute();
- // Check if more requests for the same image are queued.
- synchronized (mMediaThumbQueue) {
- for (MediaThumbRequest mtq : mMediaThumbQueue) {
- if ((mtq.mOrigId == mCurrentThumbRequest.mOrigId) &&
- (mtq.mIsVideo == mCurrentThumbRequest.mIsVideo) &&
- (mtq.mMagic == 0) &&
- (mtq.mState == MediaThumbRequest.State.WAIT)) {
- mtq.mMagic = mCurrentThumbRequest.mMagic;
+ if (mCurrentThumbRequest.mPath != null) {
+ File origFile = new File(mCurrentThumbRequest.mPath);
+ if (origFile.exists() && origFile.length() > 0) {
+ mCurrentThumbRequest.execute();
+ // Check if more requests for the same image are queued.
+ synchronized (mMediaThumbQueue) {
+ for (MediaThumbRequest mtq : mMediaThumbQueue) {
+ if ((mtq.mOrigId == mCurrentThumbRequest.mOrigId) &&
+ (mtq.mIsVideo == mCurrentThumbRequest.mIsVideo) &&
+ (mtq.mMagic == 0) &&
+ (mtq.mState == MediaThumbRequest.State.WAIT)) {
+ mtq.mMagic = mCurrentThumbRequest.mMagic;
+ }
}
}
- }
- } else {
- // original file hasn't been stored yet
- synchronized (mMediaThumbQueue) {
- Log.w(TAG, "original file hasn't been stored yet: " + mCurrentThumbRequest.mPath);
+ } else {
+ // original file hasn't been stored yet
+ synchronized (mMediaThumbQueue) {
+ Log.w(TAG, "original file hasn't been stored yet: " + mCurrentThumbRequest.mPath);
+ }
}
}
} catch (IOException ex) {