am f4201925: Merge "Add missing try/finallys"

* commit 'f4201925d9e3d01e7a2a1db07c8186e4ba9a0fb5':
  Add missing try/finallys
This commit is contained in:
John Reck
2014-04-24 00:27:22 +00:00
committed by Android Git Automerger
3 changed files with 52 additions and 43 deletions

View File

@@ -178,11 +178,14 @@ public class ThreadedRenderer extends HardwareRenderer {
Trace.traceBegin(Trace.TRACE_TAG_VIEW, "getDisplayList");
HardwareCanvas canvas = mRootNode.start(mWidth, mHeight);
callbacks.onHardwarePostDraw(canvas);
canvas.drawDisplayList(view.getDisplayList());
callbacks.onHardwarePostDraw(canvas);
mRootNode.end(canvas);
Trace.traceEnd(Trace.TRACE_TAG_VIEW);
try {
callbacks.onHardwarePostDraw(canvas);
canvas.drawDisplayList(view.getDisplayList());
callbacks.onHardwarePostDraw(canvas);
} finally {
mRootNode.end(canvas);
Trace.traceEnd(Trace.TRACE_TAG_VIEW);
}
view.mRecreateDisplayList = false;
}

View File

@@ -14897,8 +14897,11 @@ public class View implements Drawable.Callback, KeyEvent.Callback,
final int width = bounds.width();
final int height = bounds.height();
final HardwareCanvas canvas = displayList.start(width, height);
drawable.draw(canvas);
displayList.end(canvas);
try {
drawable.draw(canvas);
} finally {
displayList.end(canvas);
}
// Set up drawable properties that are view-independent.
displayList.setLeftTopRightBottom(bounds.left, bounds.top, bounds.right, bounds.bottom);

View File

@@ -1514,43 +1514,46 @@ public final class ViewRootImpl implements ViewParent,
mResizeBuffer.prepare(mWidth, mHeight, false);
RenderNode layerRenderNode = mResizeBuffer.startRecording();
HardwareCanvas layerCanvas = layerRenderNode.start(mWidth, mHeight);
final int restoreCount = layerCanvas.save();
try {
final int restoreCount = layerCanvas.save();
int yoff;
final boolean scrolling = mScroller != null
&& mScroller.computeScrollOffset();
if (scrolling) {
yoff = mScroller.getCurrY();
mScroller.abortAnimation();
} else {
yoff = mScrollY;
int yoff;
final boolean scrolling = mScroller != null
&& mScroller.computeScrollOffset();
if (scrolling) {
yoff = mScroller.getCurrY();
mScroller.abortAnimation();
} else {
yoff = mScrollY;
}
layerCanvas.translate(0, -yoff);
if (mTranslator != null) {
mTranslator.translateCanvas(layerCanvas);
}
RenderNode renderNode = mView.mRenderNode;
if (renderNode != null && renderNode.isValid()) {
layerCanvas.drawDisplayList(renderNode, null,
RenderNode.FLAG_CLIP_CHILDREN);
} else {
mView.draw(layerCanvas);
}
drawAccessibilityFocusedDrawableIfNeeded(layerCanvas);
mResizeBufferStartTime = SystemClock.uptimeMillis();
mResizeBufferDuration = mView.getResources().getInteger(
com.android.internal.R.integer.config_mediumAnimTime);
layerCanvas.restoreToCount(restoreCount);
layerRenderNode.end(layerCanvas);
layerRenderNode.setCaching(true);
layerRenderNode.setLeftTopRightBottom(0, 0, mWidth, mHeight);
mTempRect.set(0, 0, mWidth, mHeight);
} finally {
mResizeBuffer.endRecording(mTempRect);
}
layerCanvas.translate(0, -yoff);
if (mTranslator != null) {
mTranslator.translateCanvas(layerCanvas);
}
RenderNode renderNode = mView.mRenderNode;
if (renderNode != null && renderNode.isValid()) {
layerCanvas.drawDisplayList(renderNode, null,
RenderNode.FLAG_CLIP_CHILDREN);
} else {
mView.draw(layerCanvas);
}
drawAccessibilityFocusedDrawableIfNeeded(layerCanvas);
mResizeBufferStartTime = SystemClock.uptimeMillis();
mResizeBufferDuration = mView.getResources().getInteger(
com.android.internal.R.integer.config_mediumAnimTime);
layerCanvas.restoreToCount(restoreCount);
layerRenderNode.end(layerCanvas);
layerRenderNode.setCaching(true);
layerRenderNode.setLeftTopRightBottom(0, 0, mWidth, mHeight);
mTempRect.set(0, 0, mWidth, mHeight);
mResizeBuffer.endRecording(mTempRect);
mAttachInfo.mHardwareRenderer.flushLayerUpdates();
}
mAttachInfo.mContentInsets.set(mPendingContentInsets);
@@ -2949,7 +2952,7 @@ public final class ViewRootImpl implements ViewParent,
}
}
}
/**
* Return true if child is an ancestor of parent, (or equal to the parent).
*/