Bug Hunting Session
Bug 105151 - VCL: EndTracking issues ...
Summary: VCL: EndTracking issues ...
Status: RESOLVED FIXED
Alias: None
Product: LibreOffice
Classification: Unclassified
Component: graphics stack (show other bugs)
Version:
(earliest affected)
unspecified
Hardware: All All
: medium normal
Assignee: Michael Meeks
URL:
Whiteboard: target:5.4.0 target:5.2.5 target:5.3.0.2
Keywords:
Depends on:
Blocks: VclPtr
  Show dependency treegraph
 
Reported: 2017-01-06 15:23 UTC by Michael Meeks
Modified: 2017-01-12 16:10 UTC (History)
0 users

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 Michael Meeks 2017-01-06 15:23:06 UTC
Have seen an interesting trace like this:

Thread 2 (Thread 0x7efe68a1b700 (LWP 23871)):
#0  0x00007efebafdfe7d in nanosleep () at ../sysdeps/unix/syscall-template.S:81
#1  0x00007efebafdfd14 in __sleep (seconds=0, seconds@entry=30) at ../sysdeps/unix/sysv/linux/sleep.c:138
#2  0x000000000047bf0c in SigUtil::handleFatalSignal (signal=11) at common/SigUtil.cpp:162
#3  <signal handler called>
#4  0x00007efeb16d47c7 in Scheduler::Stop (this=0x7efe60a8ef00) at /home/ash/prjx/master/vcl/source/app/scheduler.cxx:321
#5  0x00007efeb121bc3c in SelectionEngine::SelMouseButtonUp (this=0x7efe60a8eed0, rMEvt=...) at /home/ash/prjx/master/vcl/source/window/seleng.cxx:237
#6  0x00007efe9a9c766c in ScGridWindow::MouseButtonUp (this=0x7efe60a8df90, rMEvt=...) at /home/ash/prjx/master/sc/source/ui/view/gridwin.cxx:2293
#7  0x00007efe9a9c9806 in ScGridWindow::Tracking (this=0x7efe60a8df90, rTEvt=...) at /home/ash/prjx/master/sc/source/ui/view/gridwin.cxx:2761

	+ which calls end-tracking on the child
	  after dispose -> and shouldn't ... (really) but ...

	** vcl::Window::EndTracking(TrackingEventFlags) **

#8  0x00007efeb1288963 in vcl::Window::EndTracking (this=0x7efe60a8df90, nFlags=TrackingEventFlags::NONE)
    at /home/ash/prjx/master/vcl/source/window/window2.cxx:368
#9  0x00007efeb129584e in vcl::Window::dispose (this=0x7efe60a8df90) at /home/ash/prjx/master/vcl/source/window/window.cxx:251

	+ calling dispose on this window -> this=0x7efe60a8df90

#10 0x00007efe9a9beddb in ScGridWindow::dispose (this=0x7efe60a8df90) at /home/ash/prjx/master/sc/source/ui/view/gridwin.cxx:523


#11 0x00007efeb142915a in VclReferenceBase::disposeOnce (this=0x7efe60a8e3a8) at /home/ash/prjx/master/vcl/source/outdev/vclreferencebase.cxx:42
#12 0x00007efe9aaa7144 in VclPtr<ScGridWindow>::disposeAndClear (this=0x7efe60a87570) at /home/ash/prjx/master/include/vcl/vclptr.hxx:229
#13 0x00007efe9aaa47fa in ScTabView::~ScTabView (this=0x7efe60a87360, __in_chrg=<optimized out>) at /home/ash/prjx/master/sc/source/ui/view/tabview5.cxx:198
#14 0x00007efe9ab14c8c in ScViewFunc::~ScViewFunc (this=0x7efe60a87360, __in_chrg=<optimized out>)
    at /home/ash/prjx/master/sc/source/ui/view/viewfunc.cxx:99
#15 0x00007efe9a98ee1c in ScDBFunc::~ScDBFunc (this=0x7efe60a87358, __in_chrg=<optimized out>) at /home/ash/prjx/master/sc/source/ui/view/dbfunc.cxx:46
#16 0x00007efe9aab66a1 in ScTabViewShell::~ScTabViewShell (this=0x7efe60a872f0, __in_chrg=<optimized out>)
    at /home/ash/prjx/master/sc/source/ui/view/tabvwsh4.cxx:1749
#17 0x00007efe9aab6714 in ScTabViewShell::~ScTabViewShell (this=0x7efe60a872f0, __in_chrg=<optimized out>)
    at /home/ash/prjx/master/sc/source/ui/view/tabvwsh4.cxx:1796
#18 0x00007efeb6c5026d in SfxViewFrame::ReleaseObjectShell_Impl (this=0x7efe60a7e170) at /home/ash/prjx/master/sfx2/source/view/viewfrm.cxx:1018
#19 0x00007efeb6c520fe in SfxViewFrame::~SfxViewFrame (this=0x7efe60a7e170, __in_chrg=<optimized out>)
    at /home/ash/prjx/master/sfx2/source/view/viewfrm.cxx:1405
#20 0x00007efeb6c5230c in SfxViewFrame::~SfxViewFrame (this=0x7efe60a7e170, __in_chrg=<optimized out>)
    at /home/ash/prjx/master/sfx2/source/view/viewfrm.cxx:1425
#21 0x00007efeb6c50741 in SfxViewFrame::Close (this=0x7efe60a7e170) at /home/ash/prjx/master/sfx2/source/view/viewfrm.cxx:1070
#22 0x00007efeb6c2522b in SfxFrame::DoClose_Impl (this=0x7efe60a7b900) at /home/ash/prjx/master/sfx2/source/view/frame.cxx:161

And some crash reports that look related for example:

http://crashreport.libreoffice.org/stats/crash_details/bbaad374-5e93-4d40-afc3-892eb3262052

Have a fix that undoes a behavioral change that the VclPtr re-work probably introduced here.
Comment 1 Michael Meeks 2017-01-06 15:26:02 UTC
Fix pushed to: https://gerrit.libreoffice.org/32785 lets see.
Comment 2 Commit Notification 2017-01-06 17:29:08 UTC
Michael Meeks committed a patch related to this issue.
It has been pushed to "master":

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

tdf#105151 - be more conservative about EndTracking / Tracking calls.

It will be available in 5.4.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 2017-01-06 17:29:49 UTC
Pushed a fix =)
Comment 4 Commit Notification 2017-01-09 14:34:28 UTC
Michael Meeks committed a patch related to this issue.
It has been pushed to "libreoffice-5-2":

http://cgit.freedesktop.org/libreoffice/core/commit/?id=62b77a31119c23a8617e161a2d4f4d4e1e97eb2c&h=libreoffice-5-2

tdf#105151 - be more conservative about EndTracking / Tracking calls.

It will be available in 5.2.5.

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 2017-01-12 16:10:02 UTC
Michael Meeks committed a patch related to this issue.
It has been pushed to "libreoffice-5-3":

http://cgit.freedesktop.org/libreoffice/core/commit/?id=16867471ffdb4742c18d6a04ceacd66e8f33dfa6&h=libreoffice-5-3

tdf#105151 - be more conservative about EndTracking / Tracking calls.

It will be available in 5.3.0.2.

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.