aboutsummaryrefslogtreecommitdiffhomepage
path: root/src/core
diff options
context:
space:
mode:
authorGravatar reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81>2011-11-28 16:09:24 +0000
committerGravatar reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81>2011-11-28 16:09:24 +0000
commitb9d1c6a3c43a2cbcbd612f4ec4aaf604a1fa6444 (patch)
treebd3d42a8faeb7ab4d0e991ba978bb13695e560bf /src/core
parent37f3ae0b9f31abb62f34f91b17e2eb86e514ae27 (diff)
call getSaveCount inside restoreToCount, in case it goes virtual...
git-svn-id: http://skia.googlecode.com/svn/trunk@2752 2bbb7eff-a529-9590-31e7-b0007b416f81
Diffstat (limited to 'src/core')
-rw-r--r--src/core/SkCanvas.cpp4
1 files changed, 3 insertions, 1 deletions
diff --git a/src/core/SkCanvas.cpp b/src/core/SkCanvas.cpp
index 13ca462bd6..70ee430bfb 100644
--- a/src/core/SkCanvas.cpp
+++ b/src/core/SkCanvas.cpp
@@ -813,7 +813,9 @@ void SkCanvas::restoreToCount(int count) {
if (count < 1) {
count = 1;
}
- while (fMCStack.count() > count) {
+
+ int n = this->getSaveCount() - count;
+ for (int i = 0; i < n; ++i) {
this->restore();
}
}