Bug 117539 - Assert after cut and paste operation of a chart stick
Summary: Assert after cut and paste operation of a chart stick
Status: VERIFIED FIXED
Alias: None
Product: LibreOffice
Classification: Unclassified
Component: Chart (show other bugs)
Version:
(earliest affected)
5.1 all versions
Hardware: All All
: medium normal
Assignee: Not Assigned
URL:
Whiteboard: target:6.1.0 target:7.5.0
Keywords: bibisected, bisected, haveBacktrace, regression
Depends on:
Blocks: Crash-Assert
  Show dependency treegraph
 
Reported: 2018-05-10 08:02 UTC by Telesto
Modified: 2022-06-29 10:37 UTC (History)
5 users (show)

See Also:
Crash report or crash signature:


Attachments
gdb bt (41.32 KB, text/plain)
2019-03-06 21:07 UTC, Julien Nabet
Details
gdb bt (gtk3 rendering) (28.81 KB, text/plain)
2022-06-28 18:33 UTC, Julien Nabet
Details
Hangs (gtk3) (17.53 KB, text/plain)
2022-06-29 10:36 UTC, Julien Nabet
Details

Note You need to log in before you can comment on or make changes to this bug.
Description Telesto 2018-05-10 08:02:28 UTC
Description:
Crash after cut and paste operation of a chart stick

Steps to Reproduce:
1. Launch Writer
2. Insert a chart
3. Select the yellow chart bar
4. Cut
5. Paste
6. Cut 
7. Paste -> Crash

Actual Results:  
Crash

Expected Results:
No crash


Reproducible: Always


User Profile Reset: No



Additional Info:
Version: 6.1.0.0.alpha1+
Build ID: c5f8a296fcfc08f8ac441cb8300a7565caa50b53
CPU threads: 4; OS: Windows 6.3; UI render: default; 
TinderBox: Win-x86@42, Branch:master, Time: 2018-05-10_03:01:48
Locale: nl-NL (nl_NL); Calc: CL


User-Agent: Mozilla/5.0 (Windows NT 6.3; WOW64; rv:52.0) Gecko/20100101 Firefox/52.0
Comment 1 Telesto 2018-05-12 18:13:41 UTC Comment hidden (obsolete)
Comment 2 Aron Budea 2018-05-13 20:50:58 UTC
Repeating the steps from the description in a debug build, after the first cut and paste, there is an assert:
Expression: eType == OBJECTTYPE_DATA_SERIES
https://opengrok.libreoffice.org/xref/core/chart2/source/controller/sidebar/ChartSeriesPanel.cxx#271

This also appears to be a regression, as there's no problem in 6.0. Bibisected to the following commit using repo bibisect-win32-6.1. Adding Cc: to Noel Grandin, please take a look.

https://cgit.freedesktop.org/libreoffice/core/commit/?id=3d44b720f58366398e7f59c00dba6339712a670f
author		Noel Grandin <noel.grandin@collabora.co.uk>	2018-04-12 15:40:12 +0200
committer	Noel Grandin <noel.grandin@collabora.co.uk>	2018-04-16 08:22:30 +0200

loplugin:useuniqueptr in SfxItemPool_Impl
Comment 3 Noel Grandin 2018-05-17 15:17:12 UTC
Hmmm, reverting that commit makes no difference to me. Also, reproducable on Linux, using writer seems to be more reliable, I can't reproduce the crash in draw under Linux.
Comment 4 Noel Grandin 2018-05-17 19:59:45 UTC
There seems to be more than one bug here. Running a build from the commit mentioned by Telesto shows a crash for me in the SfxItemSet constructor, while I see a crash in chart2 when running current master. I'll investigate some more.
Comment 5 Commit Notification 2018-05-18 18:03:18 UTC
Noel Grandin committed a patch related to this issue.
It has been pushed to "master":

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

tdf#117539 Crash after cut and paste operation of a chart stick

It will be available in 6.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 6 Noel Grandin 2018-05-23 13:01:39 UTC
If someone has a dbgutil bibisect repo, perhaps they could bisect the assert showing up in chart2 when trying the writer thing? 

It predates my problematic commit by quite a long way (I've built all the way back to 8000 revisions before my commit and I still see the assert).
Comment 7 Xisco Faulí 2018-05-28 15:00:35 UTC
We have this gdbutil repositories -> https://wiki.documentfoundation.org/QA/Bibisect/Linux#Older_dbgutil_daily_repos

@Noel, what exactly we need to bisect here?
Comment 8 Noel Grandin 2018-05-28 16:37:01 UTC
@Xisco, we're looking for the assert mentioned in comment 2
Comment 9 Xisco Faulí 2018-05-28 23:24:19 UTC Comment hidden (obsolete)
Comment 10 Xisco Faulí 2018-05-28 23:39:34 UTC
Actually, I've found the range of commit with lo-linux-dbgutil-daily-till51 where the assert started to happen -> https://cgit.freedesktop.org/libreoffice/core/log/?qt=range&q=5a61d7f049a81d6e747d9d097f364ae45f58697b..14257152b19c08618a107c6eb0f684de11483da8
Comment 11 Xisco Faulí 2018-05-28 23:42:03 UTC
(In reply to Xisco Faulí from comment #10)
> Actually, I've found the range of commit with lo-linux-dbgutil-daily-till51
> where the assert started to happen ->
> https://cgit.freedesktop.org/libreoffice/core/log/
> ?qt=range&q=5a61d7f049a81d6e747d9d097f364ae45f58697b..
> 14257152b19c08618a107c6eb0f684de11483da8

@Markus, I see some commit of you in the range of commits mentioned above, I thought you might be interested in this bug...
Comment 12 Xisco Faulí 2018-05-29 00:05:31 UTC
Testing this I've also found bug 117864. Adding to See also
Comment 13 Markus Mohrhard 2018-10-27 12:02:04 UTC
(In reply to Xisco Faulí from comment #11)
> (In reply to Xisco Faulí from comment #10)
> > Actually, I've found the range of commit with lo-linux-dbgutil-daily-till51
> > where the assert started to happen ->
> > https://cgit.freedesktop.org/libreoffice/core/log/
> > ?qt=range&q=5a61d7f049a81d6e747d9d097f364ae45f58697b..
> > 14257152b19c08618a107c6eb0f684de11483da8
> 
> @Markus, I see some commit of you in the range of commits mentioned above, I
> thought you might be interested in this bug...

The crash is not directly related to chart.

#4  0x00007ffff2cac823 in SfxItemSet::SfxItemSet(SfxItemPool&) (this=0x6519988, rPool=...) at /home/moggi/devel/libo/svl/source/items/itemset.cxx:96
#5  0x00007ffff1568a07 in SdrPaintView::SdrPaintView(SdrModel&, OutputDevice*) (this=0x65197b0, rSdrModel=..., pOut=0x0) at /home/moggi/devel/libo/svx/source/svdraw/svdpntv.cxx:195
#6  0x00007ffff157582a in SdrSnapView::SdrSnapView(SdrModel&, OutputDevice*) (this=0x65197b0, rSdrModel=..., pOut=0x0) at /home/moggi/devel/libo/svx/source/svdraw/svdsnpv.cxx:192
#7  0x00007ffff144709e in SdrMarkView::SdrMarkView(SdrModel&, OutputDevice*) (this=0x65197b0, rSdrModel=..., pOut=0x0) at /home/moggi/devel/libo/svx/source/svdraw/svdmrkv.cxx:155
#8  0x00007ffff13915df in SdrEditView::SdrEditView(SdrModel&, OutputDevice*) (this=0x65197b0, rSdrModel=..., pOut=0x0) at /home/moggi/devel/libo/svx/source/svdraw/svdedtv.cxx:94
#9  0x00007ffff1571fb9 in SdrPolyEditView::SdrPolyEditView(SdrModel&, OutputDevice*) (this=0x65197b0, rSdrModel=..., pOut=0x0) at /home/moggi/devel/libo/svx/source/svdraw/svdpoev.cxx:50
#10 0x00007ffff13dcfc9 in SdrGlueEditView::SdrGlueEditView(SdrModel&, OutputDevice*) (this=0x65197b0, rSdrModel=..., pOut=0x0) at /home/moggi/devel/libo/svx/source/svdraw/svdglev.cxx:35
#11 0x00007ffff13b8076 in SdrObjEditView::SdrObjEditView(SdrModel&, OutputDevice*) (this=0x65197b0, rSdrModel=..., pOut=0x0) at /home/moggi/devel/libo/svx/source/svdraw/svdedxv.cxx:96
#12 0x00007ffff1595ec5 in SdrExchangeView::SdrExchangeView(SdrModel&, OutputDevice*) (this=0x65197b0, rSdrModel=..., pOut=0x0) at /home/moggi/devel/libo/svx/source/svdraw/svdxcgv.cxx:64
#13 0x00007ffff138cc64 in SdrDragView::SdrDragView(SdrModel&, OutputDevice*) (this=0x65197b0, rSdrModel=..., pOut=0x0) at /home/moggi/devel/libo/svx/source/svdraw/svddrgv.cxx:77
#14 0x00007ffff1368be4 in SdrCreateView::SdrCreateView(SdrModel&, OutputDevice*) (this=0x65197b0, rSdrModel=..., pOut=0x0) at /home/moggi/devel/libo/svx/source/svdraw/svdcrtv.cxx:200
#15 0x00007ffff158ebf2 in SdrView::SdrView(SdrModel&, OutputDevice*) (this=0x65197b0, rSdrModel=..., pOut=0x0, __in_chrg=<optimized out>, __vtt_parm=<optimized out>)


and not related to my changes.
Comment 14 Julien Nabet 2019-03-06 21:07:35 UTC
Created attachment 149775 [details]
gdb bt

On pc Debian x86-64 with master sources updated today + enable-dbgutil, I could reproduce this.
Comment 15 QA Administrators 2021-03-06 03:45:20 UTC Comment hidden (obsolete)
Comment 16 Commit Notification 2022-06-28 16:54:23 UTC
Noel Grandin committed a patch related to this issue.
It has been pushed to "master":

https://git.libreoffice.org/core/commit/ebbf3ccf693d5b6813746e72719e04e1c7cd438d

tdf#117539 Assert after cut and paste operation of a chart stick

It will be available in 7.5.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.
Comment 17 Julien Nabet 2022-06-28 18:33:37 UTC
Created attachment 181007 [details]
gdb bt (gtk3 rendering)

On pc Debian x86-64 with master sources updated today (273f59bdb5f446c119e1de4000e5bc7fb7266ea6) so including Noel's patch, I still reproduce this.
Comment 18 Julien Nabet 2022-06-28 18:35:25 UTC
Noel: bts are similar but not identical, should we reopen this tracker or do you prefer we submit a new one?
Comment 19 Commit Notification 2022-06-29 09:54:10 UTC
Noel Grandin committed a patch related to this issue.
It has been pushed to "master":

https://git.libreoffice.org/core/commit/ff6fc9927241afe4dc95580bf6bb987fe62a191d

tdf#117539 Assert after cut and paste operation of a chart stick

It will be available in 7.5.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.
Comment 20 Noel Grandin 2022-06-29 09:54:41 UTC
The latest patch should fix the SfxItemSet assert
Comment 21 Julien Nabet 2022-06-29 10:36:54 UTC
Created attachment 181011 [details]
Hangs (gtk3)

On pc Debian x86-64 with master sources updated today (including last patch), I don't reproduce the assertion but had an hang with gtk3 rendering.
Since I saw accessibility part, I gave a try with gen rendering, I don't reproduce the hang so must be specific to accessibility part and that's another pb.

Thank you Noel!