sw/source/core/layout/flylay.cxx      |    6 ++++++
 vcl/source/glyphs/graphite_layout.cxx |    6 +++++-
 2 files changed, 11 insertions(+), 1 deletion(-)

New commits:
commit b8452a89ceaa9008558b83f3a8b6937d14b7c803
Author: Michael Stahl <mst...@redhat.com>
Date:   Fri May 25 22:43:29 2012 +0200

    fdo#50169: band-aid another crash in GraphiteLayout::expandOrCondense:
    
    error: attempt to subscript container with out-of-bounds index 6,
    but container only holds 6 elements.

diff --git a/vcl/source/glyphs/graphite_layout.cxx 
b/vcl/source/glyphs/graphite_layout.cxx
index 4edeb9a..429e700 100644
--- a/vcl/source/glyphs/graphite_layout.cxx
+++ b/vcl/source/glyphs/graphite_layout.cxx
@@ -849,7 +849,11 @@ void GraphiteLayout::expandOrCondense(ImplLayoutArgs 
&rArgs)
                     nOffset = static_cast<int>(fExtraPerCluster * nCluster);
                     int nCharIndex = mvGlyph2Char[i];
                     assert(nCharIndex > -1);
-                    mvCharDxs[nCharIndex-mnMinCharPos] += nOffset;
+                    if (static_cast<size_t>(nCharIndex-mnMinCharPos)
+                            < mvCharDxs.size())
+                    {
+                        mvCharDxs[nCharIndex-mnMinCharPos] += nOffset;
+                    }
                     // adjust char dxs for rest of characters in cluster
                     while (++nCharIndex - mnMinCharPos < 
static_cast<int>(mvChar2BaseGlyph.size()))
                     {
commit b6db1e0683c8fac594a606297f16b1fe163ed15b
Author: Michael Stahl <mst...@redhat.com>
Date:   Fri May 25 21:57:55 2012 +0200

    rhbz#810644: CalcClipRect: add band-aid
    
    No idea what the problem is, perhaps it'll just crash elsewhere now...

diff --git a/sw/source/core/layout/flylay.cxx b/sw/source/core/layout/flylay.cxx
index b2a9296..c1ae0be 100644
--- a/sw/source/core/layout/flylay.cxx
+++ b/sw/source/core/layout/flylay.cxx
@@ -1027,6 +1027,12 @@ sal_Bool CalcClipRect( const SdrObject *pSdrObj, SwRect 
&rRect, sal_Bool bMove )
             if ( !bFollowTextFlow || bConsiderWrapOnObjPos )
             {
                 const SwLayoutFrm* pClipFrm = pVertPosOrientFrm->FindPageFrm();
+                if (!pClipFrm)
+                {
+                    OSL_FAIL("!pClipFrm: "
+                            "if you can reproduce this please file a bug");
+                    return false;
+                }
                 rRect = bMove ? pClipFrm->GetUpper()->Frm()
                               : pClipFrm->Frm();
                 // #i26945# - consider that a table, during
_______________________________________________
Libreoffice-commits mailing list
libreoffice-comm...@lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/libreoffice-commits

Reply via email to