Closed Bug 634132 Opened 9 years ago Closed 9 years ago

The page flickers/flashes black when scrolling the page while a flash video (on BBC, Engadget, and perhaps other sites) is playing

Categories

(Core :: Plug-ins, defect)

x86
macOS
defect
Not set

Tracking

()

VERIFIED FIXED
Tracking Status
blocking2.0 --- final+

People

(Reporter: ehsan, Assigned: mattwoodrow)

References

()

Details

(Keywords: regression, Whiteboard: [hardblocker][has patch][can land])

Attachments

(2 files)

STR:

1. Load the page.
2. Play the video.
3. Scroll.
This happens on Persian and English BBC.  I guess it's safe to assume that it happens on all langauges at bbc.com.

<http://www.bbc.co.uk/news/world-middle-east-12447225>
blocking2.0: --- → ?
Is this still a problem after the neutering of bug 591687?
Joe said he was seeing this on Engadget on Mac; perhaps a more general summary is required?
(In reply to comment #2)
> Is this still a problem after the neutering of bug 591687?

If you mean bug 633826, then yes.  I'm running today's nightly which includes that patch.

(In reply to comment #3)
> Joe said he was seeing this on Engadget on Mac; perhaps a more general summary
> is required?

Done.
Summary: The page flickers when scrolling the page while a BBC flash video is playing → The page flickers when scrolling the page while a flash video (on BBC, Engadget, and perhaps other sites) is playing
What version of Flash? I don't see any issues with Flash 10.2 on Gecko/20110215
10.1.102.64
blocking2.0: ? → -
(In reply to comment #6)
> 10.1.102.64

I'm using 10.2.152.26.

Given that Joe is seeing this on an older version of Flash, could this be something which we've recently broken on our side?
Just updated to the 2011-02-14 nightly (I'm behind at the moment) and started seeing this on YouTube. The screen only flickers when the Flash content is visible. Once you scroll past it, it has no effect.

I appear to be using version 10.1.102.64 of Flash, as well. (Mac OS X 10.6.6, 64-bit)
Regression range: <http://hg.mozilla.org/mozilla-central/pushloghtml?fromchange=51702867d932&tochange=26421a3b68f3>

Which tells me that this is a regression from bug 633826.
Blocks: 633826
I can reproduce this while playing the video on http://dogs.icanhascheezburger.com/2011/02/21/funny-dog-videos-pug-plays-with-pigeon-friend - since comment 6, I've upgraded to 10.2.152.26.

I'm going to renominate this just because it seems to be fairly widespread. I'm willing to accept blocking-, but this bug isn't rare.
blocking2.0: - → ?
Summary: The page flickers when scrolling the page while a flash video (on BBC, Engadget, and perhaps other sites) is playing → The page flickers/flashes black when scrolling the page while a flash video (on BBC, Engadget, and perhaps other sites) is playing
Good god, that's awful - does a local backout of bug 633826 resolve this? Josh, can you take a look?
Here's some WebM of me reproducing the issue:

http://people.mozilla.org/~beltzner/flash-scroll.webm

I've found that it's not 100% reproducible, but:
 - I can reproduce with the mousewheel and the trackpad
 - if I can't reproduce the first time, reloading the page helps (maybe related to an ad they are serving?)
 - changing smoothscrolling has no effect

And here's my GFX info:

Adapter Description0x22600,0x20400
Vendor ID0000
Device ID0000
Adapter RAM
Adapter Drivers
Driver Version
Driver Date
Direct2D Enabled false
DirectWrite Enabled false
WebGL Renderer NVIDIA Corporation -- NVIDIA GeForce 9400M OpenGL Engine -- 2.1 NVIDIA-1.6.26
GPU Accelerated Windows 1/1 OpenGL
When playing Joe Drew's video, I can't see any flicker, but scrolling on the page while playing the video result in a stuttering scroll movement.
So this is Mac only, GL acceleration only?
Assignee: nobody → matt.woodrow+bugzilla
Visibly bad behaviour on popular sites --> blocking.
blocking2.0: ? → final+
Whiteboard: [hardblocker]
This is definitely accelerated-only. Can't comment on whether it's Mac-only.
I wasn't able to reproduce on one of the Win 7 lab machines using Mozilla/5.0 (Windows NT 6.1; WOW64; rv:2.0b12pre) Gecko/20110222 Firefox/4.0b12pre using Flash Version: 10.1.102.64 or Version: 10.2.152.26.
Bug 633826 was essentially reverted when bug 591687 was completed.

Can anyone reproduce this in the latest nightlies? I can't repro on BBC or icanhascheezburger.com with a 32bit local build.

Flash: 10.2.152.26
As mentioned in comment #13, I can't reproduce the flickering video, but the scroll movement is very stuttering. Not the BBC video. I've used the video mentioned in comment #10.

I've reproduce this with the latest nightly (4.0b12 (22-02-2011)), on a Mac OS X 10.6.6 (MacBook Pro early 2010).
Flash 10.2.152.26.
Looks like this only occurs in debug builds.

Regression range is:

http://hg.mozilla.org/mozilla-central/pushloghtml?fromchange=9698ac3f1c61&tochange=51702867d932
Attached patch FixSplinter Review
Looks like drawing the sending the draw event to the plugin was changing the current GL context. Because it wasn't being changed through our architecture, MOZ_GL_DEBUG wasn't catching it.

Wasn't showing up in debug builds because the DEBUG_GL_ERROR_CHECK(gl()); call includes a MakeCurrent.

The only thing I'm not sure about is how this actually changed with my patch.
Attachment #514433 - Flags: review?(joe)
Whiteboard: [hardblocker] → [hardblocker][has patch]
Actually, I see it. MacIOSurfaceImageOGL::SetData changes the current context to the global shared context. In debug mode (with MOZ_GL_DEBUG) we would abort instantly when using the wrong context, but DEBUG_GL_ERROR_CHECK fixes the situation before it's used incorrectly.

Maybe we should remove all the DEBUG_GL_ERROR_CHECK code since it's been superseded and is now actually reducing the effectiveness of our (bjacob's) GL debug layer?
I agree that we should remove DEBUG_GL_ERROR_CHECK and GLDebugPrintError.

If we want this feature, something similar is provided by MOZ_GL_DEBUG anyway. If one wants to trace GL errors, one can either use MOZ_GL_DEBUG_ABORT_ON_ERROR or just MOZ_GL_DEBUG with a breakpoint set in AfterGLCall().
Comment on attachment 514433 [details] [diff] [review]
Fix

Add a comment to say that the callback can reset the current GL context and check this mofo in
Attachment #514433 - Flags: review?(joe) → review+
Whiteboard: [hardblocker][has patch] → [hardblocker][has patch][can land]
Landed as http://hg.mozilla.org/mozilla-central/rev/1d56b96c92a5
Status: NEW → RESOLVED
Closed: 9 years ago
Resolution: --- → FIXED
Verified with Mozilla/5.0 (Macintosh; Intel Mac OS X 10.6; rv:2.0) Gecko/20100101 Firefox/4.0 

Flash Version: 10.2.152.26
Status: RESOLVED → VERIFIED
I've been experiencing this for the last couple weeks on Windows 8.1 - not sure if something regressed or it's a new bug causing the same outcome.
You need to log in before you can comment on or make changes to this bug.