Closed Bug 805696 Opened 7 years ago Closed 7 years ago

Youtube user icon is black till mouse over it

Categories

(Core :: Layout, defect)

18 Branch
x86_64
Windows 7
defect
Not set

Tracking

()

VERIFIED FIXED
mozilla19
Tracking Status
firefox18 + verified
firefox19 + verified

People

(Reporter: alice0775, Assigned: mattwoodrow)

References

Details

(Keywords: regression)

Attachments

(4 files)

Attached image screen shot
Build Identifier:
http://hg.mozilla.org/mozilla-central/rev/5c82f5a5e90d
Mozilla/5.0 (Windows NT 6.1; WOW64; rv:19.0) Gecko/19.0 Firefox/19.0 ID:20121025030620
and
http://hg.mozilla.org/releases/mozilla-aurora/rev/fd8361463029
Mozilla/5.0 (Windows NT 6.1; WOW64; rv:18.0) Gecko/18.0 Firefox/18.0 ID:20121025042010

Reproducible: always

Steps to reproduce:
 1. Open http://www.youtube.com/watch?v=l6YRxhBvwlE&feature=related
 2. Scroll down

Actual results:
 User icon is black till mouse over it

Expected results:
 User icon should visible properly

Reression window(m-c)
Good:
http://hg.mozilla.org/mozilla-central/rev/b274e8e3479f
Mozilla/5.0 (Windows NT 6.1; WOW64; rv:18.0) Gecko/18.0 Firefox/18.0 ID:20120928160219
Bad:
http://hg.mozilla.org/mozilla-central/rev/b62b229a4d41
Mozilla/5.0 (Windows NT 6.1; WOW64; rv:18.0) Gecko/18.0 Firefox/18.0 ID:20120928161018
Pushlog:
http://hg.mozilla.org/mozilla-central/pushloghtml?fromchange=b274e8e3479f&tochange=b62b229a4d41


Reression window(m-i)
Good:
http://hg.mozilla.org/integration/mozilla-inbound/rev/9f476b4ac1e1
Mozilla/5.0 (Windows NT 6.1; WOW64; rv:18.0) Gecko/18.0 Firefox/18.0 ID:20120928040137
Bad:
http://hg.mozilla.org/integration/mozilla-inbound/rev/6b58397ad735
Mozilla/5.0 (Windows NT 6.1; WOW64; rv:18.0) Gecko/18.0 Firefox/18.0 ID:20120928042236
Pushlog:
http://hg.mozilla.org/integration/mozilla-inbound/pushloghtml?fromchange=9f476b4ac1e1&tochange=6b58397ad735

Suspected: Bug 539356
I'll add a similar bug. I hope this is the same issue.

STR:
1. Open youtube startpage
-> channel icons are not drawn completely (until mouse over)
Hey Matt, can you please give this a look ?
Assignee: nobody → matt.woodrow
We don't invalidate the images when they load because 'IsPendingLoad' is true.

Callstack looks like this:

#0  nsImageFrame::FrameChanged (this=0x13e83fda0, aRequest=0x119c32270, aContainer=0x13f5c8240) at /Users/mattwoodrow/src/mozilla-inbound/layout/generic/nsImageFrame.cpp:709
#1  0x0000000101856403 in nsImageFrame::OnDataAvailable (this=0x13e83fda0, aRequest=0x119c32270, aRect=0x13f867034) at /Users/mattwoodrow/src/mozilla-inbound/layout/generic/nsImageFrame.cpp:599
#2  0x00000001018560b8 in nsImageFrame::Notify (this=0x13e83fda0, aRequest=0x119c32270, aType=2, aData=0x13f867034) at /Users/mattwoodrow/src/mozilla-inbound/layout/generic/nsImageFrame.cpp:535
#3  0x000000010185c8b1 in nsImageListener::Notify (this=0x125d74300, aRequest=0x119c32270, aType=2, aData=0x13f867034) at /Users/mattwoodrow/src/mozilla-inbound/layout/generic/nsImageFrame.cpp:2020
#4  0x0000000101c131e0 in nsImageLoadingContent::Notify (this=0x13d7be6d8, aRequest=0x119c32270, aType=2, aData=0x13f867034) at /Users/mattwoodrow/src/mozilla-inbound/content/base/src/nsImageLoadingContent.cpp:147
#5  0x0000000101626c40 in imgRequestProxy::OnFrameUpdate (this=0x119c32270, rect=0x13f867034) at /Users/mattwoodrow/src/mozilla-inbound/image/src/imgRequestProxy.cpp:629
#6  0x000000010162e112 in imgStatusTracker::SendDataAvailable (this=0x13d226100, aProxy=0x119c32270, aRect=0x13f867034) at /Users/mattwoodrow/src/mozilla-inbound/image/src/imgStatusTracker.cpp:538
#7  0x000000010162e04d in imgStatusTrackerObserver::OnDataAvailable (this=0x125dd5dc0, rect=0x13f867034) at /Users/mattwoodrow/src/mozilla-inbound/image/src/imgStatusTracker.cpp:113
#8  0x00000001015e3fdf in mozilla::image::Decoder::FlushInvalidations (this=0x13f867000) at /Users/mattwoodrow/src/mozilla-inbound/image/src/Decoder.cpp:168
#9  0x00000001015e3d6c in mozilla::image::Decoder::PostFrameStop (this=0x13f867000) at /Users/mattwoodrow/src/mozilla-inbound/image/src/Decoder.cpp:234

Where aRequest is the mPendingRequest from nsImageLoadingContext (frame 4).

Joe/jdm: Any ideas why this would be? I don't know the image loading code at all.
A pending load occurs when there is some content loaded/loading already, and some content is told to being another load (ie. by setting the src attribute to something else). We don't want to replace the first content with the second until the load completes, hence it is pending and we wouldn't want to be invalidating at all.
That makes sense, thanks. At what point should we be invalidating then?
We would invalidate for the current request. Any pending request becomes current once the load completes.
I think requesting reflow would have invalidated this frame previously, it doesn't any more.
Attachment #676018 - Flags: review?(joe)
Attachment #676018 - Flags: review?(joe) → review+
https://hg.mozilla.org/mozilla-central/rev/0b9b824c3e3a
Status: NEW → RESOLVED
Closed: 7 years ago
Resolution: --- → FIXED
Target Milestone: --- → mozilla19
Comment on attachment 676018 [details] [diff] [review]
Always invalidate when we change image

[Approval Request Comment]
Bug caused by (feature/regressing bug #): Bug 539356
User impact if declined: Images occasionally not displayed.
Testing completed (on m-c, etc.): Been on m-c for a week.
Risk to taking this patch (and alternatives if risky): Very low risk, just repaints images for often.
String or UUID changes made by this patch: None
Attachment #676018 - Flags: approval-mozilla-aurora?
Attachment #676018 - Flags: approval-mozilla-aurora? → approval-mozilla-aurora+
(In reply to Alice0775 White from comment #0)
> Created attachment 675391 [details]
> screen shot
> 
> Build Identifier:
> http://hg.mozilla.org/mozilla-central/rev/5c82f5a5e90d
> Mozilla/5.0 (Windows NT 6.1; WOW64; rv:19.0) Gecko/19.0 Firefox/19.0
> ID:20121025030620
> and
> http://hg.mozilla.org/releases/mozilla-aurora/rev/fd8361463029
> Mozilla/5.0 (Windows NT 6.1; WOW64; rv:18.0) Gecko/18.0 Firefox/18.0
> ID:20121025042010
> 
> Reproducible: always
> 
> Steps to reproduce:
>  1. Open http://www.youtube.com/watch?v=l6YRxhBvwlE&feature=related
>  2. Scroll down
> 
> Actual results:
>  User icon is black till mouse over it
> 
> Expected results:
>  User icon should visible properly
> 
> Reression window(m-c)
> Good:
> http://hg.mozilla.org/mozilla-central/rev/b274e8e3479f
> Mozilla/5.0 (Windows NT 6.1; WOW64; rv:18.0) Gecko/18.0 Firefox/18.0
> ID:20120928160219
> Bad:
> http://hg.mozilla.org/mozilla-central/rev/b62b229a4d41
> Mozilla/5.0 (Windows NT 6.1; WOW64; rv:18.0) Gecko/18.0 Firefox/18.0
> ID:20120928161018
> Pushlog:
> http://hg.mozilla.org/mozilla-central/
> pushloghtml?fromchange=b274e8e3479f&tochange=b62b229a4d41
> 
> 
> Reression window(m-i)
> Good:
> http://hg.mozilla.org/integration/mozilla-inbound/rev/9f476b4ac1e1
> Mozilla/5.0 (Windows NT 6.1; WOW64; rv:18.0) Gecko/18.0 Firefox/18.0
> ID:20120928040137
> Bad:
> http://hg.mozilla.org/integration/mozilla-inbound/rev/6b58397ad735
> Mozilla/5.0 (Windows NT 6.1; WOW64; rv:18.0) Gecko/18.0 Firefox/18.0
> ID:20120928042236
> Pushlog:
> http://hg.mozilla.org/integration/mozilla-inbound/
> pushloghtml?fromchange=9f476b4ac1e1&tochange=6b58397ad735
> 
> Suspected: Bug 539356

Alice, this should be resolved now on Aurora, can you please help confirm it is fixed for you ? Thanks for your help !
Attached image Screen Shot
I verified this issue on:
Mozilla/5.0 (Windows NT 6.1; WOW64; rv:19.0) Gecko/19.0 Firefox/19.0(20121025030620)
Mozilla/5.0 (Windows NT 6.1; WOW64; rv:18.0) Gecko/20100101 Firefox/18.0(20121128060531)
Mozilla/5.0 (Windows NT 6.1; WOW64; rv:20.0) Gecko/20121205 Firefox/20(20121205030759),

but as the attachment shows, the icons are not displayed, they are missing. In plus in Google Chrome they are missing too, only in Opera they are displayed. I don't know exactly what is expected so please someone who knows post a reply.
Status: RESOLVED → VERIFIED
You need to log in before you can comment on or make changes to this bug.