Summary: | Assertion when opening example file from tdf#63087 (gtk3 only) | ||
---|---|---|---|
Product: | LibreOffice | Reporter: | Julien Nabet <serval2412> |
Component: | Calc | Assignee: | Caolán McNamara <caolan.mcnamara> |
Status: | RESOLVED FIXED | ||
Severity: | normal | CC: | caolan.mcnamara |
Priority: | medium | Keywords: | haveBacktrace |
Version: | 6.4.0.0.alpha1+ | ||
Hardware: | x86-64 (AMD64) | ||
OS: | Linux (All) | ||
See Also: | https://bugs.documentfoundation.org/show_bug.cgi?id=63087 | ||
Whiteboard: | target:6.4.0 | ||
Crash report or crash signature: | Regression By: | ||
Bug Depends on: | |||
Bug Blocks: | 105537 | ||
Attachments: |
gdb bt
bt2 |
Description
Julien Nabet
2019-09-15 20:24:44 UTC
Created attachment 154182 [details]
gdb bt
From this location: #0 0x00007fffdd84cd02 in ScChildrenShapes::GetCount() const (this=0x55555c70a6f0) at /home/julien/lo/libreoffice/sc/source/ui/Accessibility/AccessibleDocument.cxx:488 #1 0x00007fffdd8546f8 in ScAccessibleDocument::getAccessibleChild(int) (this=0x555558455480, nIndex=0) at /home/julien/lo/libreoffice/sc/source/ui/Accessibility/AccessibleDocument.cxx:1722 #2 0x00007fffe831b271 in AtkListener::updateChildList(com::sun::star::uno::Reference<com::sun::star::accessibility::XAccessibleContext> const&) (this=0x5555589eb320, pContext=uno::Reference to (ScAccessibleDocument *) 0x5555584554f0) at /home/julien/lo/libreoffice/vcl/unx/gtk3/a11y/../../gtk/a11y/atklistener.cxx:146 #3 0x00007fffe831b6f5 in AtkListener::handleInvalidateChildren(com::sun::star::uno::Reference<com::sun::star::accessibility::XAccessibleContext> const&) (this=0x5555589eb320, rxParent=uno::Reference to (ScAccessibleDocument *) 0x5555584554f0) at /home/julien/lo/libreoffice/vcl/unx/gtk3/a11y/../../gtk/a11y/atklistener.cxx:248 #4 0x00007fffe831bb24 in AtkListener::notifyEvent(com::sun::star::accessibility::AccessibleEventObject const&) (this=0x5555589eb320, aEvent=...) at /home/julien/lo/libreoffice/vcl/unx/gtk3/a11y/../../gtk/a11y/atklistener.cxx:441 #5 0x00007ffff708b859 in comphelper::AccessibleEventNotifier::addEvent(unsigned int, com::sun::star::accessibility::AccessibleEventObject const&) (_nClient=22, _rEvent=...) at /home/julien/lo/libreoffice/comphelper/source/misc/accessibleeventnotifier.cxx:268 #6 0x00007fffdd83d994 in ScAccessibleContextBase::CommitChange(com::sun::star::accessibility::AccessibleEventObject const&) const (this=0x555558455480, rEvent=...) at /home/julien/lo/libreoffice/sc/source/ui/Accessibility/AccessibleContextBase.cxx:466 #7 0x00007fffdd8531fc in ScAccessibleDocument::Notify(SfxBroadcaster&, SfxHint const&) (this=0x555558455480, rBC=..., rHint=...) at /home/julien/lo/libreoffice/sc/source/ui/Accessibility/AccessibleDocument.cxx:1493 #8 0x00007ffff507cab3 in SfxBroadcaster::Broadcast(SfxHint const&) (this=0x55555796cff0, rHint=...) at /home/julien/lo/libreoffice/svl/source/notify/SfxBroadcaster.cxx:49 #9 0x00007fffde020eba in ScTabViewShell::BroadcastAccessibility(SfxHint const&) (this=0x555558348570, rHint=...) at /home/julien/lo/libreoffice/sc/source/ui/view/tabvwshh.cxx:238 #10 0x00007fffddfeec9d in ScTabView::TabChanged(bool) (this=0x555558348628, bSameTabButMoved=false) at /home/julien/lo/libreoffice/sc/source/ui/view/tabview5.cxx:302 #11 0x00007fffddfe320a in ScTabView::SetTabNo(short, bool, bool, bool) (this=0x555558348628, nTab=0, bNew=false, bExtendSelection=true, bSameTabButMoved=false) at /home/julien/lo/libreoffice/sc/source/ui/view/tabview3.cxx:1908 I noticed this: $8 = {<SfxListener> = {_vptr.SfxListener = 0x7fffdf54c470 <vtable for ScChildrenShapes+16>, mpImpl = std::unique_ptr<SfxListener::Impl> = {get() = 0x55555c707840}}, <accessibility::IAccessibleParent> = { _vptr.IAccessibleParent = 0x7fffdf54c4b0 <vtable for ScChildrenShapes+80>}, maZOrderedShapes = std::__debug::vector of length 2, capacity 2 = {0x0, 0x55555c5e3d60}, maShapesMap = std::__debug::unordered_map with 1 element = {[uno::Reference to (SvxShapePolyPolygon *) 0x555557fdb438] = 0x55555c5e3d60}, mbShapesNeedSorting = false, maShapeTreeInfo = { mxDocumentWindow = empty uno::Reference, mxModelBroadcaster = uno::Reference to (ScDrawModelBroadcaster *) 0x55555c6ff648, mpView = 0x5555584aba60, mxController = empty uno::Reference, mpWindow = { _vptr.VclPtr = 0x7ffff4d975b0 <vtable for VclPtr<OutputDevice>+16>, m_rInnerRef = rtl::Reference to 0x55555834e140}, mpViewForwarder = 0x555558455578}, xSelectionSupplier = uno::Reference to (ScTabViewObj *) 0x5555584afee8, mnSdrObjCount = 1, mnShapesSelected = 0, mpViewShell = 0x555558348570, mpAccessibleDocument = 0x555558455480, meSplitPos = SC_SPLIT_BOTTOMLEFT} maShapesMap contains 1 element but maZOrderedShapes contains 2!!? Created attachment 154183 [details]
bt2
Exception which triggers the assertion.
Caolán: since it concerns accessibility which is unmaintained, may I remove the assert? I think we could avoid the problem for this specific case so I'll try that first. Caolán McNamara committed a patch related to this issue. It has been pushed to "master": https://git.libreoffice.org/core/+/0f37cc57228e4f0fc6355776e77bbc959d3b3e86%5E%21 tdf#127561 avoid shapes with currently invalid positions It will be available in 6.4.0. The patch should be included in the daily builds available at https://dev-builds.libreoffice.org/daily/ in the next 24-48 hours. More information about daily builds can be found at: https://wiki.documentfoundation.org/Testing_Daily_Builds Affected users are encouraged to test the fix and report feedback. (In reply to Caolán McNamara from comment #5) > I think we could avoid the problem for this specific case so I'll try that > first. Great! BTW, about maZOrderedShapes and maShapesMap, their size can't be the same considering https://opengrok.libreoffice.org/xref/core/sc/source/ui/Accessibility/AccessibleDocument.cxx?r=ef59252a#297 |