Bug Hunting Session
Bug 78854 - EDITING: Undoing layout change causes it to crash
Summary: EDITING: Undoing layout change causes it to crash
Status: RESOLVED FIXED
Alias: None
Product: LibreOffice
Classification: Unclassified
Component: Impress (show other bugs)
Version:
(earliest affected)
4.1.6.2 release
Hardware: Other All
: high blocker
Assignee: David Tardon
URL:
Whiteboard: BSA target:4.4.5
Keywords: bibisected, bisected, regression
: 67708 89627 (view as bug list)
Depends on:
Blocks:
 
Reported: 2014-05-18 10:19 UTC by Marco polo
Modified: 2018-11-05 14:43 UTC (History)
8 users (show)

See Also:
Crash report or crash signature:


Attachments
shows the entered text still present after all undos have finished (46.80 KB, image/png)
2014-05-27 18:32 UTC, Yousuf Philips (jay) (retired)
Details
screencast explaining the crash part of the bug (812.11 KB, video/mp4)
2014-05-27 19:10 UTC, Yousuf Philips (jay) (retired)
Details

Note You need to log in before you can comment on or make changes to this bug.
Description Marco polo 2014-05-18 10:19:39 UTC
Problem description: 

Steps to reproduce:
1. Select the layout called, "Title, content"
2. Fill the slide with characters
3. Select the slide and change the layout to "Title Slide" 
4. press Ctrl+z

Current behavior: Before Ctrl+z two the text is duplicated. After Crtl+Z the hole software collapses an closes.  

Expected behavior: Maintain open. 

              
Operating System: Windows 8
Version: 4.2.4.2 release
Comment 1 Firas Hanife 2014-05-27 18:08:32 UTC
I can reproduce this issue on openSUSE 13.1 with:
4.1.6.2 and 4.2.4.2 and 4.3.0.0.beta1.

As a consequence I'm changing the affected version of LibreOffice.

After step 4 if any of the 2 text frames is moved LibreOffice crashes.
Comment 2 Yousuf Philips (jay) (retired) 2014-05-27 18:31:49 UTC
Confirmed to crash in Linux Mint with 4.2.4 and 4.3 beta. In 4.1.6, the text in 'Content' isnt removed and is selectable but you still see the 'Click to add text' mangled with it, but it wont crash.
Comment 3 Yousuf Philips (jay) (retired) 2014-05-27 18:32:36 UTC
Created attachment 99974 [details]
shows the entered text still present after all undos have finished
Comment 4 Yousuf Philips (jay) (retired) 2014-05-27 19:10:49 UTC
Created attachment 99979 [details]
screencast explaining the crash part of the bug
Comment 5 Yousuf Philips (jay) (retired) 2014-05-27 19:11:18 UTC
seems somewhat related to my undo style bug 79236.
Comment 6 Yousuf Philips (jay) (retired) 2014-05-30 05:56:50 UTC
I tested some more and its a regression in 4.0 and 3.6 is fine.
Comment 7 Joel Madero 2014-06-16 19:27:29 UTC
This bibisect was a bit ridiculous so I had to kind of include two crashes in one but they are both reproducible with the original steps.

1. In the first case it crashes right when you try to type in the content box after doing the undo
2. In the other case it crashes after you type and then click out of the box

If I don't do this then I hit a series of versions that I have to skip because at one point undo was broken in Presentation and then the bibisect fails. I really suspect they are the same issue despite having crashes in two different spots. If not - apologies


a7e54955e9f49e8b59dfd8c4533785a680b1796c is the first bad commit
commit a7e54955e9f49e8b59dfd8c4533785a680b1796c
Author: Bjoern Michaelsen <bjoern.michaelsen@canonical.com>
Date:   Wed Oct 16 11:07:50 2013 +0000

    source-hash-5da10275a7475efdbfd9de14ea58cf8f4c6c1582
    
    commit 5da10275a7475efdbfd9de14ea58cf8f4c6c1582
    Author:     Stephan Bergmann <sbergman@redhat.com>
    AuthorDate: Fri Mar 1 17:09:45 2013 +0100
    Commit:     Stephan Bergmann <sbergman@redhat.com>
    CommitDate: Fri Mar 1 17:18:29 2013 +0100
    
        Related rhbz#915743: Abort UCB call from SvtMatchContext_Impl::Stop
    
        ...as otherwise the SvtMatchContext_Impl thread can continue to run for
        arbitrarily long, and the other thread calling Stop() and join() will block.
    
        However, especially the WebDAV UCP does not properly support aborting commands,
        see 260afe56fd6b2f34de8290f3cdb7d1df5b88f8a8 " neon commands cannot be aborted",
        so this is not yet enough to actually fix rhbz#915743 "thread deadlock/slow
        join in insert->hyperlink in impress."
    
        Change-Id: I0da899f824763e1b3d19bb5b38d906feb690b623

:100644 100644 fd22aadcebcf1ca20b6c2fcdb9e135deeb9b5885 8a0f14e1bb71d7ecdf8086c62e9769bb7f2d09b8 M	autogen.log
:100644 100644 5af869ab53b50329a270e7d4e2587f802bf68afb 8519bf956c5e06a85818d380070eedc0ef846790 M	ccache.log
:100644 100644 63cd7351c9d6feb098661a5783d51bb172d8a306 33abac29aad7182260562465482b493d94b78a83 M	commitmsg
:100644 100644 e9ea867065a69fa4f0fbbb5c2abb40baeeabd307 21fc5294b2cb922862b78327b6b8a3cd953f38b5 M	dev-install.log
:100644 100644 4c087a5ff52a8cef08f31417ac650666b1d9d0af c1cc87465560a589137349c81641a62968242386 M	make.log
:040000 040000 ece742cbaf9101d015210ea8da6c00ad7a4457c7 9ff9cbceea1fe6b0ad1b17fe9068b2c8e32a6cbb M	opt


# bad: [423a84c4f7068853974887d98442bc2a2d0cc91b] source-hash-c15927f20d4727c3b8de68497b6949e72f9e6e9e
# good: [65fd30f5cb4cdd37995a33420ed8273c0a29bf00] source-hash-d6cde02dbce8c28c6af836e2dc1120f8a6ef9932
git bisect start 'latest' 'oldest'
# skip: [e02439a3d6297a1f5334fa558ddec5ef4212c574] source-hash-6b8393474974d2af7a2cb3c47b3d5c081b550bdb
git bisect skip e02439a3d6297a1f5334fa558ddec5ef4212c574
# good: [d1cca78ab77d64482b6643bc643d29dbe2dd1442] source-hash-2d19e9bb07ccff3134f855812dddfda5c07b1fe4
git bisect good d1cca78ab77d64482b6643bc643d29dbe2dd1442
# skip: [9daa289e178460daaafa4b3911031df5b8736218] source-hash-704292996a3731a61339b1a4a5c90c9403aa095f
git bisect skip 9daa289e178460daaafa4b3911031df5b8736218
# bad: [387dd1052972d27a3065a249b357e50e0a29829b] source-hash-35836f350861b33a0c28307a413eff76d0433d1e
git bisect bad 387dd1052972d27a3065a249b357e50e0a29829b
# good: [251dbe932a666e83c91816fcf755a4c3be51e078] source-hash-fff4d120866a0be3cd8185f2c67bb9f59b1a6a3f
git bisect good 251dbe932a666e83c91816fcf755a4c3be51e078
# skip: [fa729323917d7e0d45129bc21c08d8e19faab69b] source-hash-7275a051677b5646e56623b3addc783880ce8e9b
git bisect skip fa729323917d7e0d45129bc21c08d8e19faab69b
# bad: [ebb65cb393af31cb2876fe16279b72c1d1ac90c6] source-hash-23085e3bec84f8d07a594f8c1bbbbdbbe18d8121
git bisect bad ebb65cb393af31cb2876fe16279b72c1d1ac90c6
# bad: [86ca5fdf07cae65c864cd9ae4cc9203d83101068] source-hash-6bacf391710c8ebaa42b083dc14fb13cff48cd16
git bisect bad 86ca5fdf07cae65c864cd9ae4cc9203d83101068
# good: [31bac4fcc40da1e460b132be36dfa002e52919d0] source-hash-d55155cad0926f61b5745260196b93e95471d06a
git bisect good 31bac4fcc40da1e460b132be36dfa002e52919d0
# bad: [6b0fcfdf08f741216af030aceb20152a2b327f35] source-hash-310fb291ccfb817a3503785af143828682c0c1f1
git bisect bad 6b0fcfdf08f741216af030aceb20152a2b327f35
# good: [5e90d936616ff95724eaa3e3a0a7c7a9747e9b44] source-hash-ba446dd58a4ad324d242afcd5b28d3b4dff5a881
git bisect good 5e90d936616ff95724eaa3e3a0a7c7a9747e9b44
# bad: [a7e54955e9f49e8b59dfd8c4533785a680b1796c] source-hash-5da10275a7475efdbfd9de14ea58cf8f4c6c1582
git bisect bad a7e54955e9f49e8b59dfd8c4533785a680b1796c
# first bad commit: [a7e54955e9f49e8b59dfd8c4533785a680b1796c] source-hash-5da10275a7475efdbfd9de14ea58cf8f4c6c1582
Comment 8 Björn Michaelsen 2014-08-21 12:21:08 UTC
(This is an automated message.)

LibreOffice development currently prioritizes bugs with the so called MAB (most annoying bugs) -- as this bug has not run through that process (including writing a short rationale for this bug being a candidate and other who are watching the tracker bug silently approving that rationale etc.) its priority is set to high. Note this is effectively no change in the urgency assigned to this bug, as we are currently not making a difference between high and highest and severity is untouched.

You can find out more about MABs and how the process works by contacting libreoffice qa on irc:

 http://webchat.freenode.net/?channels=libreoffice-qa

The QA wiki page also gives you hints on how to get in contact with the team (if IRC fails you, your next best choice is the mailing list):

 https://wiki.documentfoundation.org/QA
Comment 9 DavidO 2014-10-12 09:18:15 UTC
(In reply to Joel Madero from comment #7)
> This bibisect was a bit ridiculous so I had to kind of include two crashes
> in one but they are both reproducible with the original steps.
> 
> 1. In the first case it crashes right when you try to type in the content
> box after doing the undo
> 2. In the other case it crashes after you type and then click out of the box
> 
> If I don't do this then I hit a series of versions that I have to skip
> because at one point undo was broken in Presentation and then the bibisect
> fails. I really suspect they are the same issue despite having crashes in
> two different spots. If not - apologies
> 
> 
> a7e54955e9f49e8b59dfd8c4533785a680b1796c is the first bad commit
> commit a7e54955e9f49e8b59dfd8c4533785a680b1796c
> Author: Bjoern Michaelsen <bjoern.michaelsen@canonical.com>
> Date:   Wed Oct 16 11:07:50 2013 +0000
> 
>     source-hash-5da10275a7475efdbfd9de14ea58cf8f4c6c1582
>     
>     commit 5da10275a7475efdbfd9de14ea58cf8f4c6c1582
>     Author:     Stephan Bergmann <sbergman@redhat.com>
>     AuthorDate: Fri Mar 1 17:09:45 2013 +0100
>     Commit:     Stephan Bergmann <sbergman@redhat.com>
>     CommitDate: Fri Mar 1 17:18:29 2013 +0100
>     

i tried to revert the commit you are referencing to, but got: not known SHA1 error:

$ git log a7e54955e9f49e8b59dfd8c4533785a680b1796c
fatal: bad object a7e54955e9f49e8b59dfd8c4533785a680b1796c
Comment 10 Matthew Francis 2015-01-07 02:06:34 UTC
(In reply to DavidO from comment #9)

The previously mentioned commit is in a bibisect repository (a tool used by QA to quickly find the approximate location of a regression), not the main source tree, so you won't be able to revert it. I will reference the actual commit below.
Comment 11 Matthew Francis 2015-01-07 02:08:22 UTC
The behaviour seems to have changed as of the below commit.

Adding Cc: to dtardon@redhat.com. Could you possibly have a look at this? Thanks


commit 115054fef08998c56cba8f14472df1d15007f635
Author: David Tardon <dtardon@redhat.com>
Date:   Wed Feb 13 08:52:52 2013 +0100

    fdo#34548 don't crash on undoing text frame removal
    
    Change-Id: I48b95c6c0cbfb2f4c4b09cc90b254b96de40b3e9
Comment 12 Yousuf Philips (jay) (retired) 2015-01-28 13:16:37 UTC
@David: Could you possibly add the commit link to the bug report. Was it possible to backport this to 4.4 and 4.3?
Comment 13 Caolán McNamara 2015-02-12 13:55:32 UTC
*** Bug 67708 has been marked as a duplicate of this bug. ***
Comment 14 Matthew Francis 2015-03-31 03:41:51 UTC
This seems to have missed its commit comment:

    commit c0117fcb3dbd6c2a8d5e7679ee8d6fb29264ff6b
    Author:     David Tardon <dtardon@redhat.com>
    AuthorDate: Wed Jan 28 09:18:51 2015 +0100
    Commit:     David Tardon <dtardon@redhat.com>
    CommitDate: Thu Jan 29 22:25:11 2015 +0100
    
        tdf#78854 do not crash when undoing layout change
    
        It turns out that the ordinal number adjustment that was added for
        fdo#34548 is no longer necessary.
    
        Change-Id: I2c491a008500b6a269b6f05a2a72f5aa70edecb2
Comment 15 Matthew Francis 2015-03-31 03:44:41 UTC
*** Bug 89627 has been marked as a duplicate of this bug. ***
Comment 16 Commit Notification 2015-06-09 10:35:02 UTC
David Tardon committed a patch related to this issue.
It has been pushed to "libreoffice-4-4":

http://cgit.freedesktop.org/libreoffice/core/commit/?id=8fd1fc17fab7ec639e5a9de79db5122113da9ef9&h=libreoffice-4-4

tdf#78854 do not crash when undoing layout change

It will be available in 4.4.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 17 Robinson Tryon (qubit) 2015-12-17 08:06:25 UTC
Migrating Whiteboard tags to Keywords: (bibisected)
[NinjaEdit]