diff options
| author | nicolasroard <nicolasroard@google.com> | 2013-02-26 04:50:31 +0000 |
|---|---|---|
| committer | Android (Google) Code Review <android-gerrit@google.com> | 2013-02-26 04:50:32 +0000 |
| commit | 8b4c7f99ddd23cfba032f1f2f878d644f0659972 (patch) | |
| tree | e5d57da3f94b7eb54f838745c648158a7d08814a /src | |
| parent | e858477ff8ed81b39031f1197ed6d92de56e51f6 (diff) | |
| parent | f503fda639ee0d5dd765ac8d6372c3c3a74f8d20 (diff) | |
| download | android_packages_apps_Gallery2-8b4c7f99ddd23cfba032f1f2f878d644f0659972.tar.gz android_packages_apps_Gallery2-8b4c7f99ddd23cfba032f1f2f878d644f0659972.tar.bz2 android_packages_apps_Gallery2-8b4c7f99ddd23cfba032f1f2f878d644f0659972.zip | |
Merge "Fix crash on applying borders" into gb-ub-photos-bryce
Diffstat (limited to 'src')
3 files changed, 8 insertions, 3 deletions
diff --git a/src/com/android/gallery3d/filtershow/cache/FilteringPipeline.java b/src/com/android/gallery3d/filtershow/cache/FilteringPipeline.java index ec08e488e..9c6415bc9 100644 --- a/src/com/android/gallery3d/filtershow/cache/FilteringPipeline.java +++ b/src/com/android/gallery3d/filtershow/cache/FilteringPipeline.java @@ -249,7 +249,8 @@ public class FilteringPipeline implements Handler.Callback { setPresetParameters(preset); if (request.getType() == RenderingRequest.PARTIAL_RENDERING) { - bitmap = MasterImage.getImage().getImageLoader().getScaleOneImageForPreset(null, preset, request.getBounds(), request.getDestination(), false); + bitmap = MasterImage.getImage().getImageLoader().getScaleOneImageForPreset(null, preset, + request.getBounds(), request.getDestination(), false); if (bitmap == null) { return; } diff --git a/src/com/android/gallery3d/filtershow/cache/ImageLoader.java b/src/com/android/gallery3d/filtershow/cache/ImageLoader.java index b502a2ffe..b5ed9eee0 100644 --- a/src/com/android/gallery3d/filtershow/cache/ImageLoader.java +++ b/src/com/android/gallery3d/filtershow/cache/ImageLoader.java @@ -315,6 +315,7 @@ public class ImageLoader { // decode with inSampleSize BitmapFactory.Options o2 = new BitmapFactory.Options(); o2.inSampleSize = scale; + o2.inMutable = true; Utils.closeSilently(is); is = mContext.getContentResolver().openInputStream(uri); @@ -376,9 +377,9 @@ public class ImageLoader { mLoadingLock.lock(); Bitmap bmp = mZoomCache.getImage(imagePreset, bounds); if (force || bmp == null) { - BitmapFactory.Options options = null; + BitmapFactory.Options options = new BitmapFactory.Options(); + options.inMutable = true; if (destination != null) { - options = new BitmapFactory.Options(); if (bounds.width() > destination.width()) { int sampleSize = 1; int w = bounds.width(); diff --git a/src/com/android/gallery3d/filtershow/presets/ImagePreset.java b/src/com/android/gallery3d/filtershow/presets/ImagePreset.java index fd5cd0d6f..15fa8ca1a 100644 --- a/src/com/android/gallery3d/filtershow/presets/ImagePreset.java +++ b/src/com/android/gallery3d/filtershow/presets/ImagePreset.java @@ -427,6 +427,9 @@ public class ImagePreset { if (mGeoData.hasModifications()) { return false; } + if (mBorder != null && !mBorder.supportsPartialRendering()) { + return false; + } for (int i = 0; i < mFilters.size(); i++) { FilterRepresentation representation = null; synchronized (mFilters) { |
