• Stephan Bergmann's avatar
    rhbz#1264753: Avoid this being release()ed to 0 in ScAccessibleDocument ctor · 6f1e77fc
    Stephan Bergmann yazdı
    ...where the most plausible explanation for the bug's crash from within
    ScGridWindow::CreateAccessible appears to be that the call to
    
      xAcc = new ScAccessibleEditObject(this, ...)
    
    which stores "this" as a css::uno::Reference in the ScAccessibleEditObject, can
    cause xAcc to be deleted synchronously from within the ScAccessibleDocument
    ctor, causing the ScAccessibleDocument instance itself to also be deleted.
    
    So re-use the existing ScAccessibleDocument::Init (already properly called at
    the only place that instantiates ScAccessibleDocument, in
    ScGridWindow::CreateAccessible) to defer any initialization that uses "this",
    and hope that the resulting slight re-ordering of when certain initialization
    code is executed does not cause problems.
    
    Change-Id: I524a1659394e8900b7d33de358fdd4baf647c083
    Reviewed-on: https://gerrit.libreoffice.org/18750Tested-by: 's avatarJenkins <ci@libreoffice.org>
    Reviewed-by: 's avatarEike Rathke <erack@redhat.com>
    Tested-by: 's avatarEike Rathke <erack@redhat.com>
    6f1e77fc
AccessibleDocument.cxx 86 KB