diff options
author | Chris Craik <ccraik@google.com> | 2015-06-01 10:39:36 -0700 |
---|---|---|
committer | Chris Craik <ccraik@google.com> | 2015-06-04 09:50:15 -0700 |
commit | f77facd0b9eaa603aee44bbb331e73f45ea4a07f (patch) | |
tree | 4fb99a4623f64d48c53e961618ed03e05cc12abf /rs/java/android/renderscript | |
parent | bf17375e5e6195122ee24295cf05f012822711ec (diff) |
Fix RenderScript copy tracing sections
bug:21560057
Change-Id: I3b44d04bd908d9549ef7ada5f48f5d94e239d186
Diffstat (limited to 'rs/java/android/renderscript')
-rw-r--r-- | rs/java/android/renderscript/Allocation.java | 28 |
1 files changed, 16 insertions, 12 deletions
diff --git a/rs/java/android/renderscript/Allocation.java b/rs/java/android/renderscript/Allocation.java index 2ce11a2b3327..dad1a7c1b5e9 100644 --- a/rs/java/android/renderscript/Allocation.java +++ b/rs/java/android/renderscript/Allocation.java @@ -1053,6 +1053,7 @@ public class Allocation extends BaseObj { mSelectedLOD, mSelectedFace.mID, count, 1, data.getID(mRS), dataOff, 0, data.mSelectedLOD, data.mSelectedFace.mID); + Trace.traceEnd(RenderScript.TRACE_TAG); } private void validate2DRange(int xoff, int yoff, int w, int h) { @@ -1214,19 +1215,22 @@ public class Allocation extends BaseObj { * @param data the Bitmap to be copied */ public void copy2DRangeFrom(int xoff, int yoff, Bitmap data) { - Trace.traceBegin(RenderScript.TRACE_TAG, "copy2DRangeFrom"); - mRS.validate(); - if (data.getConfig() == null) { - Bitmap newBitmap = Bitmap.createBitmap(data.getWidth(), data.getHeight(), Bitmap.Config.ARGB_8888); - Canvas c = new Canvas(newBitmap); - c.drawBitmap(data, 0, 0, null); - copy2DRangeFrom(xoff, yoff, newBitmap); - return; + try { + Trace.traceBegin(RenderScript.TRACE_TAG, "copy2DRangeFrom"); + mRS.validate(); + if (data.getConfig() == null) { + Bitmap newBitmap = Bitmap.createBitmap(data.getWidth(), data.getHeight(), Bitmap.Config.ARGB_8888); + Canvas c = new Canvas(newBitmap); + c.drawBitmap(data, 0, 0, null); + copy2DRangeFrom(xoff, yoff, newBitmap); + return; + } + validateBitmapFormat(data); + validate2DRange(xoff, yoff, data.getWidth(), data.getHeight()); + mRS.nAllocationData2D(getIDSafe(), xoff, yoff, mSelectedLOD, mSelectedFace.mID, data); + } finally { + Trace.traceEnd(RenderScript.TRACE_TAG); } - validateBitmapFormat(data); - validate2DRange(xoff, yoff, data.getWidth(), data.getHeight()); - mRS.nAllocationData2D(getIDSafe(), xoff, yoff, mSelectedLOD, mSelectedFace.mID, data); - Trace.traceEnd(RenderScript.TRACE_TAG); } private void validate3DRange(int xoff, int yoff, int zoff, int w, int h, int d) { |