diff options
author | Stephan Bergmann <sbergman@redhat.com> | 2015-09-21 15:35:09 +0200 |
---|---|---|
committer | Eike Rathke <erack@redhat.com> | 2015-10-01 13:10:51 +0000 |
commit | 6f1e77fc600f776433a759172323b4afec3d811e (patch) | |
tree | 2e6c7116aa933243c362872ae01dda86a7e99430 /shell | |
parent | 62b39a7c48dcd74f5e14ffd78b3ab917a84d7622 (diff) |
rhbz#1264753: Avoid this being release()ed to 0 in ScAccessibleDocument ctor
...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/18750
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Eike Rathke <erack@redhat.com>
Tested-by: Eike Rathke <erack@redhat.com>
Diffstat (limited to 'shell')
0 files changed, 0 insertions, 0 deletions