Bug Hunting Session
Bug 92262 - PIVOTTABLE: DEBUG BUILDS ONLY: crash when clicking on the autofilter arrow
Summary: PIVOTTABLE: DEBUG BUILDS ONLY: crash when clicking on the autofilter arrow
Status: VERIFIED FIXED
Alias: None
Product: LibreOffice
Classification: Unclassified
Component: Calc (show other bugs)
Version:
(earliest affected)
5.0.0.0.beta1
Hardware: Other All
: medium normal
Assignee: Michael Meeks
URL:
Whiteboard: target:5.1.0 target:5.0.0.3
Keywords: bisected, haveBacktrace, regression
Depends on:
Blocks: VclPtr
  Show dependency treegraph
 
Reported: 2015-06-22 19:12 UTC by Clément Lassieur
Modified: 2016-10-25 19:24 UTC (History)
2 users (show)

See Also:
Crash report or crash signature:


Attachments
pivot table example (13.21 KB, application/vnd.oasis.opendocument.spreadsheet)
2015-06-22 19:12 UTC, Clément Lassieur
Details
backtrace (5.24 KB, text/plain)
2015-06-25 14:57 UTC, Clément Lassieur
Details
full backtrace (27.15 KB, text/plain)
2015-06-25 14:57 UTC, Clément Lassieur
Details

Note You need to log in before you can comment on or make changes to this bug.
Description Clément Lassieur 2015-06-22 19:12:31 UTC
Created attachment 116740 [details]
pivot table example

It only appears with debug builds (I use --enable-dbgutil).

Steps to reproduce:

  1. create two columns like these:

    foo bar
    1   3
    2   4

  2. create a pivot table based on A1:B3
  3. use “foo” as “Row Field” and “bar” as “Data Field”
  4. click on OK (to actually create the pivot table)

    # start here if you use the attachement “pivot-table.ods”
  5. click three times on the autofilter arrow (cell A1)
  6. close the page (File → Close)

LibreOffice crashes either at step 5 or at step 6, depending on the
commit.

Here is the bisection:

    good

  commit e8b97a52c96df9c8e8055407b1e40ed7cb9cfc67 (introduce the bug)
  Change-Id I056cf3026ff17d65cca0b6e6588bda4a88fa8d95

    crash at step 6, but you’ve got to use the attachment if you
    want to reproduce because there’s another bug preventing from
    creating the pivot table (bug 91125)

  commit 06ecf7d2aebe64226142ee27c2512351960f8bb1 (fix bug 91125)
  Change-Id I0b694bd530e7019042d22e46db831b5a4aae0e23

    crash at step 6

  commit 88528b88bfa41d7c13c619ed0e17215924c589a9 (fix bug 91364)
  Change-Id I6bc94025da3d6536b38cb43eef262d1d5f4c4c4c

    crash at step 5

Reproduced (crash at step 5) with:

  Version: 5.1.0.0.alpha1+
  Build ID: 16c2b60fc10b5fdfd36df64f8fca50b95d81871b
  TinderBox: Linux-rpm_deb-x86_64@46-TDF-dbg,
  Branch:master, Time: 2015-06-22_06:04:50
  Locale: en-US (en_US.UTF-8)

Not reproduced with:

  Version: 5.1.0.0.alpha1+
  Build ID: a64999511ae654131d997eec9a3d78478cfc1c75
  TinderBox: Linux-rpm_deb-x86_64@46-TDF,
  Branch:master, Time: 2015-06-22_05:01:17
  Locale: en-US (en_US.utf8)

OS: Debian stretch x86_64 GNU/Linux

Output:

  warn:legacy.osl:8593:1:vcl/source/window/window.cxx:318:
  Window ( 21ScCheckListMenuWindow (ScMenuFloatingWindow)) with live
  SystemWindows destroyed:  20ScMenuFloatingWindow (ScMenuFloatingWindow)
  Window ( 21ScCheckListMenuWindow (ScMenuFloatingWindow)) with live
  SystemWindows destroyed:  20ScMenuFloatingWindow (ScMenuFloatingWindow)
Comment 1 Clément Lassieur 2015-06-25 14:57:02 UTC
Created attachment 116831 [details]
backtrace
Comment 2 Clément Lassieur 2015-06-25 14:57:55 UTC
Created attachment 116832 [details]
full backtrace
Comment 3 Julien Nabet 2015-06-25 21:12:17 UTC
On pc Debian x86-64 with master sources updated today, I could reproduce this.

First I noticed this:
warn:legacy.osl:4339:1:sc/source/core/data/dptabsrc.cxx:2267: unknown property

which comes from:
Breakpoint 1, ScDPLevel::getPropertyValue (this=0x6bbaf80, aPropertyName="ShowEmpty") at /home/julien/compile-libreoffice/libreoffice/sc/source/core/data/dptabsrc.cxx:2267
2267	        OSL_FAIL("unknown property");
(gdb) bt
#0  0x00002aaacc3cf1e3 in ScDPLevel::getPropertyValue(rtl::OUString const&) (this=0x6bbaf80, aPropertyName="ShowEmpty")
    at /home/julien/compile-libreoffice/libreoffice/sc/source/core/data/dptabsrc.cxx:2267
#1  0x00002aaacce72f48 in ScUnoHelpFunctions::GetBoolProperty(com::sun::star::uno::Reference<com::sun::star::beans::XPropertySet> const&, rtl::OUString const&, bool) (xProp=uno::Reference to (ScDPLevel *) 0x6bbafc0, rName="ShowEmpty", bDefault=false) at /home/julien/compile-libreoffice/libreoffice/sc/source/ui/unoobj/miscuno.cxx:48
#2  0x00002aaacc2f97a7 in lcl_FillLabelData(ScDPLabelData&, com::sun::star::uno::Reference<com::sun::star::beans::XPropertySet> const&) (rData=..., xDimProp=uno::Reference to (ScDPDimension *) 0x6db4860) at /home/julien/compile-libreoffice/libreoffice/sc/source/core/data/dpobject.cxx:2277
#3  0x00002aaacc2fa16e in ScDPObject::FillLabelDataForDimension(com::sun::star::uno::Reference<com::sun::star::container::XIndexAccess> const&, int, ScDPLabelData&) (this=0x6fb2890, xDims=uno::Reference to (ScNameToIndexAccess *) 0x70fee38, nDim=0, rLabelData=...) at /home/julien/compile-libreoffice/libreoffice/sc/source/core/data/dpobject.cxx:2354
#4  0x00002aaacc2fa617 in ScDPObject::FillLabelData(ScPivotParam&) (this=0x6fb2890, rParam=...)
    at /home/julien/compile-libreoffice/libreoffice/sc/source/core/data/dpobject.cxx:2393
#5  0x00002aaaccaf1445 in ScPivotLayoutDialog::ScPivotLayoutDialog(SfxBindings*, SfxChildWindow*, vcl::Window*, ScViewData*, ScDPObject const*, bool) (this=
    0x6fb2440, pSfxBindings=0x2c34610, pChildWindow=0x6d7d990, pParent=0x2c550a0, pViewData=0x2c3ba60, pPivotTableObject=0x6f0e310, bNewPivotTable=true)
    at /home/julien/compile-libreoffice/libreoffice/sc/source/ui/dbgui/PivotLayoutDialog.cxx:154
Comment 4 Clément Lassieur 2015-06-26 08:43:10 UTC
(In reply to Julien Nabet from comment #3)

> First I noticed this:
> warn:legacy.osl:4339:1:sc/source/core/data/dptabsrc.cxx:2267: unknown
> property

FYI this warning also occurs with commit 2b0be6c (= e8b97a5^), which
doesn’t crash.
Comment 5 Julien Nabet 2015-06-26 10:21:41 UTC
(In reply to Clément Lassieur from comment #4)
> (In reply to Julien Nabet from comment #3)
> 
> > First I noticed this:
> > warn:legacy.osl:4339:1:sc/source/core/data/dptabsrc.cxx:2267: unknown
> > property
> 
> FYI this warning also occurs with commit 2b0be6c (= e8b97a5^), which
> doesn’t crash.

Yep, I noticed it still crashed after having fixed this warning.
According to bt, it could be linked to VclPtr
Comment 6 Michael Meeks 2015-06-26 11:56:42 UTC
This warning:

Window ( 21ScCheckListMenuWindow (ScMenuFloatingWindow)) with live
  SystemWindows destroyed:  20ScMenuFloatingWindow (ScMenuFloatingWindow)

Suggests its a simpler vclptr error - but the trace interestingly does not ;-) that warning should be an assert in a dbgutil build. Will have a poke.
Comment 7 Commit Notification 2015-06-29 12:40:31 UTC
Julien Nabet committed a patch related to this issue.
It has been pushed to "master":

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

Related tdf#92262: PIVOTTABLE: crash when clicking on the autofilter arrow

It will be available in 5.1.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 8 Julien Nabet 2015-06-29 13:13:38 UTC
The patch doesn't fix it of course=> I remove target.
Comment 9 Commit Notification 2015-06-30 11:24:16 UTC
Julien Nabet committed a patch related to this issue.
It has been pushed to "libreoffice-5-0":

http://cgit.freedesktop.org/libreoffice/core/commit/?id=6a2c4efbd1d6086ef0f1162e0e20eb0540ded2ba&h=libreoffice-5-0

Related tdf#92262: PIVOTTABLE: crash when clicking on the autofilter arrow

It will be available in 5.0.0.3.

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 10 Michael Meeks 2015-07-01 16:36:20 UTC
found a few sillies in there - just testing a fix; thanks for reporting Clement & fixing another badness Julien.
Comment 11 Michael Meeks 2015-07-01 16:44:17 UTC
Works for me - in gerrit:
    https://gerrit.libreoffice.org/16664
Comment 12 Michael Meeks 2015-07-01 19:01:50 UTC
Thanks for the report.
Comment 13 Commit Notification 2015-07-01 19:03:09 UTC
Michael Meeks committed a patch related to this issue.
It has been pushed to "master":

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

tdf#92262 - fixup shared_ptr -> VclPtr issue.

It will be available in 5.1.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 14 Commit Notification 2015-07-02 16:39:06 UTC
Michael Meeks committed a patch related to this issue.
It has been pushed to "libreoffice-5-0":

http://cgit.freedesktop.org/libreoffice/core/commit/?id=50b93a183bcdd9981a740a92cd5cc6be77be1973&h=libreoffice-5-0

tdf#92262 - fixup shared_ptr -> VclPtr issue.

It will be available in 5.0.0.3.

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 15 Julien Nabet 2015-07-04 12:02:34 UTC
On pc Debian x86-64 with master sources updated today, I don't reproduce this.
Thank you Michael! :-)