Bug 91127 - Crash on closing the Field dialog
Summary: Crash on closing the Field dialog
Status: RESOLVED FIXED
Alias: None
Product: LibreOffice
Classification: Unclassified
Component: Writer (show other bugs)
Version:
(earliest affected)
5.0.0.0.alpha0+ Master
Hardware: Other All
: medium normal
Assignee: Not Assigned
URL:
Whiteboard: target:5.0.0
Keywords: regression
Depends on:
Blocks: VclPtr
  Show dependency treegraph
 
Reported: 2015-05-07 08:44 UTC by Miklos Vajna
Modified: 2016-04-24 16:21 UTC (History)
1 user (show)

See Also:
Crash report or crash signature:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Miklos Vajna 2015-05-07 08:44:17 UTC
Backtrace:

Program received signal SIGSEGV, Segmentation fault.
0x00007ffff09ed7dd in vcl::Window::dispose (this=0x2154ea0) at /home/vmiklos/git/libreoffice/master/vcl/source/window/window.cxx:554
554         if ( mpWindowImpl->mbFrame )
(gdb) print mpWindowImpl
$1 = (WindowImpl *) 0x9999999999999999
(gdb) up
#1  0x00007ffff0a55c36 in Control::dispose (this=0x2154ea0) at /home/vmiklos/git/libreoffice/master/vcl/source/control/ctrl.cxx:76
76          Window::dispose();
(gdb) 
#2  0x00007ffff2bb82c2 in SvTreeListBox::dispose (this=0x2154ea0) at /home/vmiklos/git/libreoffice/master/svtools/source/contnr/treelistbox.cxx:1584
1584        Control::dispose();
(gdb) up
#3  0x00007fffd5b2c791 in SwDBTreeList::dispose (this=0x2154ea0) at /home/vmiklos/git/libreoffice/master/sw/source/uibase/dbui/dbtree.cxx:205
205         SvTreeListBox::dispose();
(gdb) 
#4  0x00007ffff0b2f62c in OutputDevice::disposeOnce (this=0x2154ea0) at /home/vmiklos/git/libreoffice/master/vcl/source/outdev/outdev.cxx:203
203         dispose();
(gdb) 
#5  0x00007ffff08aa77e in VclPtr<vcl::Window>::disposeAndClear (this=0x2154cb8) at /home/vmiklos/git/libreoffice/master/include/vcl/vclptr.hxx:209
209                 aTmp->disposeOnce();
(gdb) 
#6  0x00007ffff088d51f in VclBuilder::disposeBuilder (this=0x20f7c90) at /home/vmiklos/git/libreoffice/master/vcl/source/window/builder.cxx:536
536             aI->m_pWindow.disposeAndClear();
(gdb) bt
#0  0x00007ffff09ed7dd in vcl::Window::dispose (this=0x2154ea0) at /home/vmiklos/git/libreoffice/master/vcl/source/window/window.cxx:554
#1  0x00007ffff0a55c36 in Control::dispose (this=0x2154ea0) at /home/vmiklos/git/libreoffice/master/vcl/source/control/ctrl.cxx:76
#2  0x00007ffff2bb82c2 in SvTreeListBox::dispose (this=0x2154ea0) at /home/vmiklos/git/libreoffice/master/svtools/source/contnr/treelistbox.cxx:1584
#3  0x00007fffd5b2c791 in SwDBTreeList::dispose (this=0x2154ea0) at /home/vmiklos/git/libreoffice/master/sw/source/uibase/dbui/dbtree.cxx:205
#4  0x00007ffff0b2f62c in OutputDevice::disposeOnce (this=0x2154ea0) at /home/vmiklos/git/libreoffice/master/vcl/source/outdev/outdev.cxx:203
#5  0x00007ffff08aa77e in VclPtr<vcl::Window>::disposeAndClear (this=0x2154cb8) at /home/vmiklos/git/libreoffice/master/include/vcl/vclptr.hxx:209
#6  0x00007ffff088d51f in VclBuilder::disposeBuilder (this=0x20f7c90) at /home/vmiklos/git/libreoffice/master/vcl/source/window/builder.cxx:536
#7  0x00007ffff08e540d in VclBuilderContainer::disposeBuilder (this=0x20f8b10) at /home/vmiklos/git/libreoffice/master/vcl/source/window/dialog.cxx:462
#8  0x00007ffff09a46f0 in TabPage::dispose (this=0x20f88f0) at /home/vmiklos/git/libreoffice/master/vcl/source/window/tabpage.cxx:95
#9  0x00007ffff3c63ca1 in SfxTabPage::dispose (this=0x20f88f0) at /home/vmiklos/git/libreoffice/master/sfx2/source/dialog/tabdlg.cxx:181
#10 0x00007fffc4f6e572 in SwFldDBPage::dispose (this=0x20f88f0) at /home/vmiklos/git/libreoffice/master/sw/source/ui/fldui/flddb.cxx:94
#11 0x00007ffff0b2f62c in OutputDevice::disposeOnce (this=0x20f88f0) at /home/vmiklos/git/libreoffice/master/vcl/source/outdev/outdev.cxx:203
#12 0x00007ffff3bcdaaa in VclPtr<SfxTabPage>::disposeAndClear (this=0x2013908) at /home/vmiklos/git/libreoffice/master/include/vcl/vclptr.hxx:209
#13 0x00007ffff3c64a31 in SfxTabDialog::dispose (this=0x2013320) at /home/vmiklos/git/libreoffice/master/sfx2/source/dialog/tabdlg.cxx:401
#14 0x00007ffff0b2f62c in OutputDevice::disposeOnce (this=0x2013320) at /home/vmiklos/git/libreoffice/master/vcl/source/outdev/outdev.cxx:203
#15 0x00007ffff3a90d5a in VclPtr<vcl::Window>::disposeAndClear (this=0x20107e8) at /home/vmiklos/git/libreoffice/master/include/vcl/vclptr.hxx:209
#16 0x00007ffff3a8cf67 in SfxChildWindow::~SfxChildWindow (this=0x20107d0, __in_chrg=<optimized out>) at /home/vmiklos/git/libreoffice/master/sfx2/source/appl/childwin.cxx:201
#17 0x00007fffd591ef62 in SwChildWinWrapper::~SwChildWinWrapper (this=0x20107d0, __in_chrg=<optimized out>) at /home/vmiklos/git/libreoffice/master/sw/source/uibase/inc/chldwrap.hxx:27
#18 0x00007fffd591f02a in SwFldDlgWrapper::~SwFldDlgWrapper (this=0x20107d0, __in_chrg=<optimized out>) at /home/vmiklos/git/libreoffice/master/sw/source/uibase/inc/fldwrap.hxx:25
#19 0x00007fffd591f05a in SwFldDlgWrapper::~SwFldDlgWrapper (this=0x20107d0, __in_chrg=<optimized out>) at /home/vmiklos/git/libreoffice/master/sw/source/uibase/inc/fldwrap.hxx:25

Sounds like vcl::Window::dispose() is called twice.
Comment 1 Michael Meeks 2015-05-07 08:44:52 UTC
Thanks - taking ...
Comment 2 Commit Notification 2015-05-07 12:13:46 UTC
Michael Meeks committed a patch related to this issue.
It has been pushed to "master":

http://cgit.freedesktop.org/libreoffice/core/commit/?id=a3deb4866890ca6d4a41df0f08107eb75b132716

tdf#91127 - audit for unfortunate SAL_NO_ACQUIRE referencing issues.

It will be available in 5.0.0.

The patch should be included in the daily builds available at
http://dev-builds.libreoffice.org/daily/ in the next 24-48 hours. More
information about daily builds can be found at:
http://wiki.documentfoundation.org/Testing_Daily_Builds
Affected users are encouraged to test the fix and report feedback.
Comment 3 Michael Meeks 2015-05-07 15:00:56 UTC
Got it =) the 'make' functions need a systematic re-work unfortunately =)
Comment 4 Commit Notification 2015-05-07 15:02:22 UTC
Michael Meeks committed a patch related to this issue.
It has been pushed to "master":

http://cgit.freedesktop.org/libreoffice/core/commit/?id=fc8c282e99450ae240ca3d16bb74e1d4ab541497

tdf#91127 - get SfxTabPage creation function ref-counting right.

It will be available in 5.0.0.

The patch should be included in the daily builds available at
http://dev-builds.libreoffice.org/daily/ in the next 24-48 hours. More
information about daily builds can be found at:
http://wiki.documentfoundation.org/Testing_Daily_Builds
Affected users are encouraged to test the fix and report feedback.
Comment 5 Commit Notification 2015-05-07 15:02:25 UTC
Michael Meeks committed a patch related to this issue.
It has been pushed to "master":

http://cgit.freedesktop.org/libreoffice/core/commit/?id=630fe2d0c92464f5572b807b8c6c47ca6f4ac590

tdf#91127 - SwDbTreeList 'make' function fix.

It will be available in 5.0.0.

The patch should be included in the daily builds available at
http://dev-builds.libreoffice.org/daily/ in the next 24-48 hours. More
information about daily builds can be found at:
http://wiki.documentfoundation.org/Testing_Daily_Builds
Affected users are encouraged to test the fix and report feedback.
Comment 6 Jean-Baptiste Faure 2016-04-24 16:21:55 UTC
Version set from commit notification.

Best regards. JBF