From 247caf60a8db9c3550d223a2bb1c4587575e828d Mon Sep 17 00:00:00 2001 From: Seth Fowler Date: Thu, 21 Mar 2013 11:22:42 -0700 Subject: [PATCH] Bug 851416 - Ensure SVGRootRenderingObserver always gets added back to the rendering observer list. r=dholbert --HG-- extra : rebase_source : e945338503a9dbaf2ad4b4925c8f8993555e605c --- image/src/VectorImage.cpp | 13 +++++++++---- 1 file changed, 9 insertions(+), 4 deletions(-) diff --git a/image/src/VectorImage.cpp b/image/src/VectorImage.cpp index 3b3896367bc2..67027e73bf32 100644 --- a/image/src/VectorImage.cpp +++ b/image/src/VectorImage.cpp @@ -84,11 +84,16 @@ protected: } mVectorImage->InvalidateObserver(); - } - // We may have been removed from the observer list by our caller. Rather - // than add ourselves back here, we wait until Draw gets called, ensuring - // that we coalesce invalidations between Draw calls. + // We may have been removed from the observer list by our caller. Rather + // than add ourselves back here, we wait until Draw gets called, ensuring + // that we coalesce invalidations between Draw calls. + } else { + // Here we may also have been removed from the observer list, but since + // we're not sending an invalidation, Draw won't get called. We need to + // add ourselves back immediately. + ResumeListening(); + } } // Private data