Closed Bug 1403963 Opened 7 years ago Closed 7 years ago

Favicons disappearing in tabs

Categories

(Firefox :: Tabbed Browser, defect, P2)

57 Branch
defect

Tracking

()

RESOLVED WORKSFORME

People

(Reporter: marian.domanik, Unassigned)

References

(Depends on 1 open bug)

Details

(Keywords: regression, regressionwindow-wanted)

Attachments

(1 file)

Attached image favicon_missing2.png
User Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:57.0) Gecko/20100101 Firefox/57.0
Build ID: 20170925150345

Steps to reproduce:

Open a website in a new tab. I don't know how to reproduce, mostly it happend on Twitter and Facebook website but maybe once a day. I really can't pinpoint the event which triggers it.


Actual results:

The tab doesn't show website's favicon - see attachment


Expected results:

The tab should show website's favicon.
Status: UNCONFIRMED → RESOLVED
Closed: 7 years ago
Resolution: --- → DUPLICATE
I've just made a fresh install of 57b5 on a Linux machine and see exactly the same problem. Twitter favicon is not there in the tab, just like in the attached screenshot.
I'm reopening since there's still something wrong, this is unlikely the same as bug 1401777, since that bug means the icon is NEVER load. Here looks like an intermittent problem.

Do you have an antivirus with some kind of network traffic filter?
When you don't see the icon, what happens if you hover the tab, or the other tabs, or switch tabs by clicking on them, does it appear? since these ico files, I suspect some relation with bug 1401122, but I can't be sure.
Status: RESOLVED → REOPENED
Ever confirmed: true
Flags: needinfo?(marian.domanik)
Resolution: DUPLICATE → ---
See Also: → 1405253
Component: Untriaged → Tabbed Browser
No antivirus or traffic filter. Hovering, clicking, switching tabs by clicking/ctrl+tab or even refreshing the page doesn't do anything. No errors in JS console. I couldn't reproduce it yesterday but today it suddenly stops working again. There's nothing in the tab, just a blank space.

I also inspected the tab element:

><tab xmlns="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul" label="(1) Twitter" onerror="this.removeAttribute('image');" class="tabbrowser-tab" context="tabContextMenu" linkedpanel="panel-3-296" fadein="true" iconLoadingPrincipal="ZT4OTT7kRfqycpfCC8AeuAAAAAAAAAAAwAAAAAAAAEYB3pRy0IA0EdOTmQAQS6D9QJIHOlRteE8wkTq4cYEyCMYAAAAC/////wAAAbsBAAAAFGh0dHBzOi8vdHdpdHRlci5jb20vAAAAAAAAAAUAAAAIAAAACwAAAAj/////AAAACP////8AAAAIAAAACwAAABMAAAABAAAAEwAAAAEAAAATAAAAAQAAABQAAAAAAAAAFP////8AAAAA/////wAAABP/////AAAAE/////8BAAAAAAAAAAAAAAAA" image="https://abs.twimg.com/favicons/favicon.ico" labeldirection="ltr" style="" beforeselected="true"/>



And the favicon element:

><xul:image xmlns:xul="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul" xbl:inherits="src=image,loadingprincipal=iconLoadingPrincipal,fadein,pinned,selected=visuallyselected,busy,crashed,sharing" xmlns:xbl="http://www.mozilla.org/xbl" anonid="tab-icon-image" class="tab-icon-image" validate="never" role="presentation" fadein="true" loadingprincipal="ZT4OTT7kRfqycpfCC8AeuAAAAAAAAAAAwAAAAAAAAEYB3pRy0IA0EdOTmQAQS6D9QJIHOlRteE8wkTq4cYEyCMYAAAAC/////wAAAbsBAAAAFGh0dHBzOi8vdHdpdHRlci5jb20vAAAAAAAAAAUAAAAIAAAACwAAAAj/////AAAACP////8AAAAIAAAACwAAABMAAAABAAAAEwAAAAEAAAATAAAAAQAAABQAAAAAAAAAFP////8AAAAA/////wAAABP/////AAAAE/////8BAAAAAAAAAAAAAAAA" src="https://abs.twimg.com/favicons/favicon.ico"/>

Directly loading the .ico files opens it correctly in Firefox but it's simply not visible in the tab.
Flags: needinfo?(marian.domanik)
Ok, so the image attribute is set correctly, that is what bug 1401777 fixed.
I'm not sure why the image is not shown yet :( Could still be something at a layout level.

Could you please try clearing your cache from about:preferences#privacy, and try to reload twitter?
I think Gijs recently hit a case where the cache contained a 0-bytes icon and that caused the icon to not show.
maybe you could have a look in about:cache for the ico file, and check what's its reported data size.
Flags: needinfo?(marian.domanik)
In the disk cache, the favicon was 481 bytes in size, created today, fetched 3 times. I cleared the cache, opened Twitter, no favicon, CTRL+F5, still no favicon.

Not sure if it's related, but the favicon in the cache was saved from when I opened the https://abs.twimg.com/favicons/favicon.ico directly in browser.

After I cleared the cache and opened Twitter, the favicon wasn't place inside cache. It's not there anymore even after opening Twitter few times. But maybe it's not supposed to be.
Flags: needinfo?(marian.domanik)
So I managed to reproduce on 3 different machines, 2x Windows 10 and Ubuntu. Altho I use the same extensions on all three and have sync enabled but only for bookmarks and history, so they don't share the same settings.

When I open Firefox and open Twitter, the favicon is there. Some time passes, let's say 1-2 hours, I open Twitter again and the favicon is missing. Same behavior on all three systems. Restarting Firefox helps, however I can always see a slight delay between when the page is loaded and when the favicon shows, about 1 second, but my guess is it's not related. I don't know what to look for during the period between the favicon showing and when it stops showing. Only restart helps.

This problem started right after one upgrade (I don't remember which one) when I was using 57 nightly but since then I have brand new profiles on all machines. Disabling extensions doesn't help. The only interesting tab for me is onerror="this.removeAttribute('image');" but I don't know what error to look for.
(In reply to marian.domanik@gmail.com from comment #8)
> The only interesting tab for me
> is onerror="this.removeAttribute('image');" but I don't know what error to
> look for.

It would indeed be interesting to know if that handler is invoked and the event details.
Using the Browser toolbox you could probably register your own handler on the twitter tab when the icon is shown, and check back when it's not shown anymore if it was invoked and what's the details.
I admit I don't know much about the conditions causing that event in tabs, that code predates e10s and as such it could be acting wrongly, I'll ask around.
(In reply to marian.domanik@gmail.com from comment #8)
> So I managed to reproduce on 3 different machines, 2x Windows 10 and Ubuntu.
> Altho I use the same extensions on all three and have sync enabled but only
> for bookmarks and history, so they don't share the same settings.
> 
> When I open Firefox and open Twitter, the favicon is there. Some time
> passes, let's say 1-2 hours, I open Twitter again and the favicon is
> missing. Same behavior on all three systems. Restarting Firefox helps,
> however I can always see a slight delay between when the page is loaded and
> when the favicon shows, about 1 second, but my guess is it's not related. I
> don't know what to look for during the period between the favicon showing
> and when it stops showing. Only restart helps.
> 
> This problem started right after one upgrade (I don't remember which one)
> when I was using 57 nightly but since then I have brand new profiles on all
> machines. Disabling extensions doesn't help. The only interesting tab for me
> is onerror="this.removeAttribute('image');" but I don't know what error to
> look for.

Just to confirm, at the point where the favicon is gone, is the "image" attribute also gone from the tab element? Your comment sort of implies this, but it's not explicit, so I'd like to be really sure. :-)
Flags: needinfo?(marian.domanik)
No, the image attribute is not gone. See https://bugzilla.mozilla.org/show_bug.cgi?id=1403963#c4 - this was inspected when the favicon was NOT visible.
Flags: needinfo?(marian.domanik)
we can exclude onerror, first because the image attribute didn't go away, second because, from discussion with Gijs, that will be invoked if the favicon load failed. This though means the favicon load didn't fail.
There are some Try builds here that are solving another bug with icons, I don't know if there's any relation, but it may be interesting to try them and see if they help with the problem:
https://bugzilla.mozilla.org/show_bug.cgi?id=1401122#c23 (direct link 
https://treeherder.mozilla.org/#/jobs?repo=try&revision=ade5a8bf5f8ca53a4f59086334a7c8d5f7a09dae)
Just click on the B and look for the target.zip file. you can create a link to the .exe and add --no-remote --profilemanager to the link, so you can test these on a separate profile. These are nightly based, I think.
Thanks, since I don't exactly know what causes it, I'll have to use this build for a day or two to find out if it's fixed.
Priority: -- → P2
a Network problem has been fixed in Nightly and Firefox 57b8 (bug 1401538), please check if you can still reproduce on one of those.
Flags: needinfo?(marian.domanik)
Sorry I was abroad for few weeks with no computer. On 57b11 I can't reproduce it anymore for now, but I'm using Firefox for only one day for now so I'm not 100% certain.
Flags: needinfo?(marian.domanik)
OK, I'm resolving for now, but feel free to reopen the bug if you should see it again.
Status: REOPENED → RESOLVED
Closed: 7 years ago7 years ago
Resolution: --- → WORKSFORME
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: