diff --git a/src/core/SkThreadedBMPDevice.h b/src/core/SkThreadedBMPDevice.h index d851702f37..d9e27b449c 100644 --- a/src/core/SkThreadedBMPDevice.h +++ b/src/core/SkThreadedBMPDevice.h @@ -146,6 +146,7 @@ private: } SkASSERT(fSize < MAX_QUEUE_SIZE); SkIRect drawBounds = fDevice->transformDrawBounds(rawDrawBounds); + fElements[fSize].~DrawElement(); // release previous resources to prevent memory leak new (&fElements[fSize++]) DrawElement(fDevice, std::move(fn), drawBounds); fTasks->addColumn(); }