vcl/source/gdi/region.cxx | 14 ++++++++++---- 1 file changed, 10 insertions(+), 4 deletions(-)
New commits: commit ad80a95695b95999b8fe0f60bcec1e5e5b76f4e8 Author: Armin Le Grand <a...@apache.org> Date: Thu Oct 25 08:36:02 2012 +0000 Related: #i121237# Corrected Region export was missing to write an end marker when RegionBand was empty (cherry picked from commit a6b23e539771d5c22a575ff418ffafacf7c2bc06) Change-Id: I0dbcb27aa0936b061062c94cdf4a2c7f1f306b0e diff --git a/vcl/source/gdi/region.cxx b/vcl/source/gdi/region.cxx index fd91eb6..bf4a7c1 100644 --- a/vcl/source/gdi/region.cxx +++ b/vcl/source/gdi/region.cxx @@ -1386,8 +1386,7 @@ bool Region::IsInside( const Point& rPoint ) const //} // ensure RegionBand existance - const_cast< Region* >(this)->GetAsRegionBand(); - const RegionBand* pRegionBand = getRegionBand(); + const RegionBand* pRegionBand = GetAsRegionBand(); if(pRegionBand) { @@ -1670,6 +1669,14 @@ SvStream& operator<<( SvStream& rOStrm, const Region& rRegion ) { pRegionBand->save(rOStrm); } + else + { + // for compatibility, write an empty RegionBand (will only write + // the end marker STREAMENTRY_END, but this *is* needed) + const RegionBand aRegionBand; + + aRegionBand.save(rOStrm); + } // write polypolygon if available const sal_Bool bHasPolyPolygon(rRegion.HasPolyPolygonOrB2DPolyPolygon()); @@ -1693,8 +1700,7 @@ void Region::GetRegionRectangles(RectangleVector& rTarget) const rTarget.clear(); // ensure RegionBand existance - const_cast< Region* >(this)->GetAsRegionBand(); - const RegionBand* pRegionBand = getRegionBand(); + const RegionBand* pRegionBand = GetAsRegionBand(); if(pRegionBand) { _______________________________________________ Libreoffice-commits mailing list libreoffice-comm...@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/libreoffice-commits