Modified:
trunk/moon/src/ChangeLog
trunk/moon/src/uielement.cpp
Log:
2008-09-23 Sebastien Pouliot <seba...@ximian.com>
* uielement.cpp: Delete the temporary region before returning on an
invisible element (common in defiwind).
Modified: trunk/moon/src/ChangeLog
===================================================================
--- trunk/moon/src/ChangeLog 2008-09-23 12:36:43 UTC (rev 113812)
+++ trunk/moon/src/ChangeLog 2008-09-23 12:37:46 UTC (rev 113813)
@@ -1,3 +1,8 @@
+2008-09-23 Sebastien Pouliot <seba...@ximian.com>
+
+ * uielement.cpp: Delete the temporary region before returning on an
+ invisible element (common in defiwind).
+
2008-09-22 Chris Toshok <tos...@ximian.com>
* dependencyobject.cpp (DependencyObject::MergeTemporaryNameScopes):
Modified: trunk/moon/src/uielement.cpp
===================================================================
--- trunk/moon/src/uielement.cpp 2008-09-23 12:36:43 UTC (rev 113812)
+++ trunk/moon/src/uielement.cpp 2008-09-23 12:37:46 UTC (rev 113813)
@@ -668,8 +668,10 @@
Region *region = new Region (GetSubtreeBounds ());
region->Intersect (parent_region);
- if (!GetRenderVisible() || IS_INVISIBLE (total_opacity) || region->IsEmpty ())
+ if (!GetRenderVisible() || IS_INVISIBLE (total_opacity) || region->IsEmpty ()) {
+ delete region;
return;
+ }
#if FRONT_TO_BACK_STATS
GetSurface()->uielements_rendered_back_to_front ++;