[Libreoffice-bugs] [Bug 108838] LibreOffice freezes while changing the template of many slides ( gtk/ gtk3 )

bugzilla-daemon at bugs.documentfoundation.org bugzilla-daemon at bugs.documentfoundation.org
Fri Jun 30 15:26:22 UTC 2017


https://bugs.documentfoundation.org/show_bug.cgi?id=108838

Michael Stahl <mstahl at redhat.com> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
           Keywords|                            |accessibility, perf
             Status|NEW                         |RESOLVED
                 CC|                            |mstahl at redhat.com
         Resolution|---                         |FIXED
           Assignee|libreoffice-bugs at lists.free |mstahl at redhat.com
                   |desktop.org                 |

--- Comment #2 from Michael Stahl <mstahl at redhat.com> ---
oh, didn't notice there was a bug for this

fixed with:

commit b2b085441dc79fb78607dbf1969c12a40db58214
Author: Michael Stahl <mstahl at redhat.com>
Date:   Fri Jun 30 15:23:15 2017 +0200

    accessibility: fix horrible memory leak in AccessibleTabBarBase

    Reproducing tdf#108833 failed because applying the Master Page takes
    > 2 hours; the time is spent calling vcl::Window listeners, of which
    there were some 39525 after a couple minutes, almost all of which
    AccessibleTabBarBase.

    AccessibleTabBarBase::WindowEventListener() has an inverted condition
    that suppresses the event that is generated from TabBar::Clear()
    and thus when DrawViewShell::ResetActualPage() calls Clear() no
    AccessibleTabBarPage is removed but then the InsertPage() calls create
    duplicate objects that again register as listeners.

    The condition is obviously inverted given the CVS commit message:

    1.2.88.1
    log
    @#135353# do not pass VCLEVENT_TABBAR_PAGEREMOVED (all) to objects other
than AccessibleTabBarPageList
    @
    text
    a69 8

            if( ( pWinEvent->GetId() == VCLEVENT_TABBAR_PAGEREMOVED ) &&
                ( (sal_uInt16)(sal_IntPtr) pWinEvent->GetData() ==
TAB_PAGE_NOTFOUND ) &&
                ( dynamic_cast< AccessibleTabBarPageList *> (this) != NULL ) )
            {
                return 0;
            }

    Change-Id: I2a3b86bbd0f0251a966f41b316a3b313517df24f

-- 
You are receiving this mail because:
You are the assignee for the bug.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.freedesktop.org/archives/libreoffice-bugs/attachments/20170630/8daa748a/attachment-0001.html>


More information about the Libreoffice-bugs mailing list