diff options
| author | 2017-08-23 17:15:09 -0400 | |
|---|---|---|
| committer | 2017-09-26 17:12:50 -0400 | |
| commit | 232f3628bca9b07a3c6a815f0540c29df29b6f85 (patch) | |
| tree | a43b2946f2eee0b19c7ac1493520b6c3effc70f4 | |
| parent | 3f7cd530cd72aaf4db6da99fdd436d55e63d8bc9 (diff) | |
Unpin images when skia pipeline object is destroyed
Unpin images when skia pipeline object is destroyed. This fixes
an assert in skia ~SkImage_Raster.
Test: Built and ran Android on a device.
Bug: 66730647
Change-Id: I73603efd4fc2ca584cdb8f6a4774e48a187f6787
| -rw-r--r-- | libs/hwui/pipeline/skia/SkiaPipeline.cpp | 4 | ||||
| -rw-r--r-- | libs/hwui/pipeline/skia/SkiaPipeline.h | 2 |
2 files changed, 5 insertions, 1 deletions
diff --git a/libs/hwui/pipeline/skia/SkiaPipeline.cpp b/libs/hwui/pipeline/skia/SkiaPipeline.cpp index 6f117de23864..c4bd1e1b10d4 100644 --- a/libs/hwui/pipeline/skia/SkiaPipeline.cpp +++ b/libs/hwui/pipeline/skia/SkiaPipeline.cpp @@ -45,6 +45,10 @@ SkiaPipeline::SkiaPipeline(RenderThread& thread) : mRenderThread(thread) { mVectorDrawables.reserve(30); } +SkiaPipeline::~SkiaPipeline() { + unpinImages(); +} + TaskManager* SkiaPipeline::getTaskManager() { return mRenderThread.cacheManager().getTaskManager(); } diff --git a/libs/hwui/pipeline/skia/SkiaPipeline.h b/libs/hwui/pipeline/skia/SkiaPipeline.h index 2b0c419aa1a1..3e6ae306217c 100644 --- a/libs/hwui/pipeline/skia/SkiaPipeline.h +++ b/libs/hwui/pipeline/skia/SkiaPipeline.h @@ -28,7 +28,7 @@ namespace skiapipeline { class SkiaPipeline : public renderthread::IRenderPipeline { public: SkiaPipeline(renderthread::RenderThread& thread); - virtual ~SkiaPipeline() {} + virtual ~SkiaPipeline(); TaskManager* getTaskManager() override; |