To comment on the following update, log in, then open the issue:
http://www.openoffice.org/issues/show_bug.cgi?id=50771
                  Issue #:|50771
                  Summary:|crash with rehearse timings ...
                Component:|Drawing
                  Version:|OOo 1.1.4
                 Platform:|All
                      URL:|
               OS/Version:|All
                   Status:|NEW
        Status whiteboard:|
                 Keywords:|
               Resolution:|
               Issue type:|PATCH
                 Priority:|P3
             Subcomponent:|code
              Assigned to:|wg
              Reported by:|mmeeks





------- Additional comments from [EMAIL PROTECTED] Wed Jun 15 06:53:09 -0700 
2005 -------
So - this may well be a bug in our large VCL back-ports.
Either way - we have a case where 'pWin->IsMapModeEnabled()' returns false - and
yet the logic here ignores that eventuality & thus ends up trying to render the
most gigantic pixbuf to the screen, chews all RAM and dies in action:


#9  0x401e1989 in OutputDevice::DrawOutDev (this=0x46ba4cc8,
[EMAIL PROTECTED], [EMAIL PROTECTED], [EMAIL PROTECTED],
[EMAIL PROTECTED], 
    [EMAIL PROTECTED]) at 
/opt/OpenOffice/OOO_1_1_4/vcl/source/gdi/outdev2.cxx:450
(gdb) p rDestPt
$14 = (const Point &) @0xbfffd688: {<Pair> = {nA = 0, nB = 0}, <No data fields>}
(gdb) p rDestSize
$15 = (const Size &) @0xbfffd680: {<Pair> = {nA = 28012, nB = 21029}, <No data
fields>}

        Broken input data from:

#10 0x443d3c97 in SdrPageView::DoCachedMasterPaint () from ./libsvx645li.so

This patch 'fixes' it (at least - for me ;-) it's a quick hack rather than the
world's most well thought out fix so ...

Index: svx/source/svdraw/svdpagv.cxx
===================================================================
RCS file: /cvs/graphics/svx/source/svdraw/svdpagv.cxx,v
retrieving revision 1.34
diff -u -p -u -r1.34 svdpagv.cxx
--- svx/source/svdraw/svdpagv.cxx       21 Jul 2003 10:57:08 -0000      1.34
+++ svx/source/svdraw/svdpagv.cxx       15 Jun 2005 13:48:40 -0000
@@ -1128,8 +1128,10 @@ FASTBOOL SdrPageView::DoCachedMasterPain
        // Seitennummer der MasterPage muss gleich sein
        if (!bCreate)
                bCreate=pBmp->nMasterPageNum!=pPg->GetPageNum();
+       Fraction aUnity(1, 1);
        if (!bCreate) // Scaling checken
-               bCreate=rMap.GetScaleX()!=pBmp->aMapX ||
rMap.GetScaleY()!=pBmp->aMapY;
+               bCreate=rMap.GetScaleX()!=pBmp->aMapX ||
rMap.GetScaleY()!=pBmp->aMapY ||
+                               (!pWin->IsMapModeEnabled() && (pBmp->aMapX !=
aUnity || pBmp->aMapY != aUnity));
 
        // Sichtbare Layer muessen gleich sein
        if (!bCreate)
@@ -1199,6 +1201,8 @@ FASTBOOL SdrPageView::DoCachedMasterPain
                        aMapOrgGridTmp-=aOfs; // Position der PageView abziehen
fuer Border, Grid, ...
                        aNewMap.SetOrigin(aMapOrgGridTmp);
                        pBmp->aVD.SetMapMode(aNewMap);
+                       pBmp->aVD.EnableMapMode(pWin->IsMapModeEnabled());
+
                        rXOut.SetOutDev(&pBmp->aVD);
 
             // Paper, Border etc. painten

...



        if (pBmp!=NULL)
        {
                Size aSiz(pBmp->aVD.GetOutputSize());
                // The non-enabled map-mode problem manifest itself here.
               
pWin->DrawOutDev(pBmp->aLogBound.TopLeft(),aSiz,Point(),aSiz,pBmp->aVD);
                pPg->Paint(rXOut,rInfoRec,FALSE,(sal_uInt16)nImplPaintMode);
 


To reproduce simply load the attached sheet - run 'Rehearse timings' wait 10
secs, switch to the next slide -> bang.

---------------------------------------------------------------------
Please do not reply to this automatically generated notification from
Issue Tracker. Please log onto the website and enter your comments.
http://qa.openoffice.org/issue_handling/project_issues.html#notification

---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]


---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to