Bug 94222 - Black/White rendering artifacts on slideshow transitions
Summary: Black/White rendering artifacts on slideshow transitions
Status: VERIFIED FIXED
Alias: None
Product: LibreOffice
Classification: Unclassified
Component: graphics stack (show other bugs)
Version:
(earliest affected)
5.1.0.0.alpha0+ Master
Hardware: Other All
: medium normal
Assignee: Not Assigned
URL:
Whiteboard: target:5.1.0
Keywords: bisected, regression
: 94864 94875 (view as bug list)
Depends on:
Blocks:
 
Reported: 2015-09-15 03:24 UTC by Luke
Modified: 2016-10-25 19:17 UTC (History)
7 users (show)

See Also:
Crash report or crash signature:


Attachments
Example slide show (797.59 KB, application/vnd.oasis.opendocument.presentation)
2015-09-15 03:24 UTC, Luke
Details

Note You need to log in before you can comment on or make changes to this bug.
Description Luke 2015-09-15 03:24:00 UTC
Created attachment 118720 [details]
Example slide show

Steps to reproduce.
1. Open the attachment in Impress 4.3
2. Start slide show
3. Open the attachment in Impress 5.1
4. Start slide show

With hardware acceleration black boxes show up around the transitions. With it disabled, white boxes show up. In 4.3 renders the slideshow correctly.
Comment 1 Luke 2015-09-17 01:58:42 UTC
Adding Michael, since he's been very active in this area recently.
Comment 2 Luke 2015-09-17 02:43:53 UTC
I was able to reproduce this with both Linux and Windows 64bit builds. With the builds I had on hand, I was able to narrow the regression window down to a week.

First Bad commit-
Build ID: 5191fcb11688ef8f4ec312293e57e151762c6952
2015-08-29 22:35:44 (GMT)

Last Good commit-
Build ID: f2f97ec5bf4f2808544bef5eb583ed4d424acfa9
015-08-22 19:10:46 (GMT)
Comment 3 Michael Meeks 2015-09-17 08:40:04 UTC
git log --oneline f2f97ec5bf4f2808544bef5eb583ed4d424acfa9..5191fcb11688ef8f4ec312293e57e151762c6952 -- vcl | nl

Has 67 commits in the range. And quite a lot changed here.

Then again - I am assuming you're not using OpenGL acceleration - so that narrows it further.

Can you confirm you don't have "use OpenGL" or "force OpenGL" enabled ? =) that will help narrow this down a lot.

Thanks !
Comment 4 Luke 2015-09-17 09:36:06 UTC
Michael,
"use OpenGL" and "force OpenGL" are both disabled/unchecked. Many devs working in this area. Should I take you off the CC list?
Comment 5 Michael Meeks 2015-09-17 15:21:41 UTC
So - it could well still be related =) if you can bisect it further down to a single commit - that would be awesome - then we can find someone to authoritatively blame =)
Comment 6 Luke 2015-09-19 05:18:41 UTC
I git bisected this down to:

commit ead5bc3cfb07a4e96e367e7904dc674ee5f5ccd6
Author: Daniel Robertson <danlrobertson89@gmail.com>
Date:   Fri Aug 21 21:51:09 2015 -0400

slideshow: replace for_each with range-based loop
Replace ::std::for_each for a more readable range-based for loop in cases in which the function object to be applied by for_each is more readable as the body of a for loop.


Daniel,
Can you please take a look at this? There's got to be an issue with the pattern or copy/pasting. It's doing a lot more than making the code more readable:)
Comment 7 Michael Meeks 2015-09-19 09:25:13 UTC
Nice work; thanks Luke ! =)
Comment 8 Michael Meeks 2015-10-08 10:51:53 UTC
Daniel - any movement here ? Thorsten ?
Comment 9 Daniel L Robertson 2015-10-08 13:34:59 UTC
Thanks Luke for bisecting this!

> Daniel - any movement here ? Thorsten ?

I've spoken to Luke and Kendy over email. Kendy stated he would revert the commit in the master to close the bug quickly. I will "re-write" ead5bc to be more like 391f18. In addition, after reviewing ead5bc, I'm all over the place. I have changes that are actually addressing https://bugs.documentfoundation.org/show_bug.cgi?id=93243 and I have other random changes in there that are unrelated to the commit subject. I'll split ead5bc into several smaller semantically correct :-) patches.
Comment 10 Commit Notification 2015-10-08 13:37:40 UTC
Jan Holesovsky committed a patch related to this issue.
It has been pushed to "master":

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

tdf#94222: Revert "slideshow: replace for_each with range-based loop"

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 11 Jan Holesovsky 2015-10-08 13:49:31 UTC
Luke, Daniel: Thank you both!  The patch is now reverted, please check it really helped.
Comment 12 Luke 2015-10-08 23:02:54 UTC
*** Bug 94864 has been marked as a duplicate of this bug. ***
Comment 13 Luke 2015-10-08 23:05:03 UTC
Verified fixed in Build ID: 7e48533c21a015d19910373d5c7fd9feaa416622

Thanks Jan!
Comment 14 Regina Henschel 2015-10-09 17:45:44 UTC
*** Bug 94875 has been marked as a duplicate of this bug. ***
Comment 15 Jean-Baptiste Faure 2016-04-24 16:04:41 UTC
Version set from description.

Best regards. JBF