summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
author Mathias Agopian <mathias@google.com> 2009-10-15 18:08:15 -0700
committer Mathias Agopian <mathias@google.com> 2009-10-15 18:08:15 -0700
commita8ac904d97a008b346390c87e74d44df39b0f320 (patch)
tree542fe7fccb07a5d9f380c9d169680d38a4f5f445
parent53f33d84776a0bad668e361365a7049b16f8a929 (diff)
fix [2182249] [MR1] valgrind error in surface flinger
-rw-r--r--include/private/ui/RegionHelper.h15
-rw-r--r--libs/ui/tests/region.cpp7
2 files changed, 16 insertions, 6 deletions
diff --git a/include/private/ui/RegionHelper.h b/include/private/ui/RegionHelper.h
index 926fddb177cd..8d76533c5abb 100644
--- a/include/private/ui/RegionHelper.h
+++ b/include/private/ui/RegionHelper.h
@@ -86,7 +86,7 @@ public:
rasterizer(current);
}
}
- } while(!spannerInner.isDone());
+ } while(!spannerInner.isDone());
} while(!spanner.isDone());
}
@@ -220,18 +220,21 @@ private:
}
inline void prepare(int inside) {
- SpannerBase::lhs_head = lhs.rects->left + lhs.dx;
- SpannerBase::lhs_tail = lhs.rects->right + lhs.dx;
- SpannerBase::rhs_head = rhs.rects->left + rhs.dx;
- SpannerBase::rhs_tail = rhs.rects->right + rhs.dx;
if (inside == SpannerBase::lhs_before_rhs) {
+ SpannerBase::lhs_head = lhs.rects->left + lhs.dx;
+ SpannerBase::lhs_tail = lhs.rects->right + lhs.dx;
SpannerBase::rhs_head = max_value;
SpannerBase::rhs_tail = max_value;
} else if (inside == SpannerBase::lhs_after_rhs) {
SpannerBase::lhs_head = max_value;
SpannerBase::lhs_tail = max_value;
+ SpannerBase::rhs_head = rhs.rects->left + rhs.dx;
+ SpannerBase::rhs_tail = rhs.rects->right + rhs.dx;
} else {
- // use both spans
+ SpannerBase::lhs_head = lhs.rects->left + lhs.dx;
+ SpannerBase::lhs_tail = lhs.rects->right + lhs.dx;
+ SpannerBase::rhs_head = rhs.rects->left + rhs.dx;
+ SpannerBase::rhs_tail = rhs.rects->right + rhs.dx;
}
}
diff --git a/libs/ui/tests/region.cpp b/libs/ui/tests/region.cpp
index 0deb2ba9e55d..ef15de9747e0 100644
--- a/libs/ui/tests/region.cpp
+++ b/libs/ui/tests/region.cpp
@@ -25,9 +25,16 @@ using namespace android;
int main()
{
+ Region empty;
Region reg0( Rect( 0, 0, 100, 100 ) );
Region reg1 = reg0;
Region reg2, reg3;
+
+ Region reg4 = empty | reg1;
+ Region reg5 = reg1 | empty;
+
+ reg4.dump("reg4");
+ reg5.dump("reg5");
reg0.dump("reg0");
reg1.dump("reg1");