зеркало из https://github.com/mozilla/gecko-dev.git
Bug 1489632 - mark Skia bitmap layer as immutable before popping it. r=rhunt
This commit is contained in:
Родитель
513dbaad87
Коммит
db66e58ecc
|
@ -119,6 +119,7 @@ protected:
|
||||||
sk_sp<SkSpecialImage> makeSpecial(const SkBitmap&) override;
|
sk_sp<SkSpecialImage> makeSpecial(const SkBitmap&) override;
|
||||||
sk_sp<SkSpecialImage> makeSpecial(const SkImage*) override;
|
sk_sp<SkSpecialImage> makeSpecial(const SkImage*) override;
|
||||||
sk_sp<SkSpecialImage> snapSpecial() override;
|
sk_sp<SkSpecialImage> snapSpecial() override;
|
||||||
|
void setImmutable() override { fBitmap.setImmutable(); }
|
||||||
|
|
||||||
///////////////////////////////////////////////////////////////////////////
|
///////////////////////////////////////////////////////////////////////////
|
||||||
|
|
||||||
|
|
|
@ -1195,6 +1195,7 @@ void SkCanvas::internalRestore() {
|
||||||
if (layer) {
|
if (layer) {
|
||||||
if (fMCRec) {
|
if (fMCRec) {
|
||||||
const SkIPoint& origin = layer->fDevice->getOrigin();
|
const SkIPoint& origin = layer->fDevice->getOrigin();
|
||||||
|
layer->fDevice->setImmutable();
|
||||||
this->internalDrawDevice(layer->fDevice.get(), origin.x(), origin.y(),
|
this->internalDrawDevice(layer->fDevice.get(), origin.x(), origin.y(),
|
||||||
layer->fPaint.get(),
|
layer->fPaint.get(),
|
||||||
layer->fClipImage.get(), layer->fClipMatrix);
|
layer->fClipImage.get(), layer->fClipMatrix);
|
||||||
|
|
|
@ -271,6 +271,7 @@ protected:
|
||||||
virtual sk_sp<SkSpecialImage> makeSpecial(const SkBitmap&);
|
virtual sk_sp<SkSpecialImage> makeSpecial(const SkBitmap&);
|
||||||
virtual sk_sp<SkSpecialImage> makeSpecial(const SkImage*);
|
virtual sk_sp<SkSpecialImage> makeSpecial(const SkImage*);
|
||||||
virtual sk_sp<SkSpecialImage> snapSpecial();
|
virtual sk_sp<SkSpecialImage> snapSpecial();
|
||||||
|
virtual void setImmutable() {}
|
||||||
|
|
||||||
bool readPixels(const SkPixmap&, int x, int y);
|
bool readPixels(const SkPixmap&, int x, int y);
|
||||||
|
|
||||||
|
|
Загрузка…
Ссылка в новой задаче