Open
Bug 685740
Opened 13 years ago
Updated 2 years ago
2 requests for favicon.ico while getting 404 responses
Categories
(Firefox :: Tabbed Browser, defect)
Tracking
()
NEW
People
(Reporter: mayhemer, Unassigned)
References
Details
A common page, running locally on my testing server, no favicon.ico file in the root, server IIS 7.5.
I can see 4 requests in the log for GET /favicon.ico with following Accept header values:
1. Accept: image/png,image/*;q=0.8,*/*;q=0.5
2. Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8
3. Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8
4. Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8
Other common headers unmodified between requests.
All 3 responses are 404 Not Found with Cache-Control: private and the IIS "not found" error page text/html content.
Requests come from:
1.:
xul.dll!NewImageChannel(nsIChannel * * aResult=0x00339a84, nsIURI * aURI=0x04d36a80, nsIURI * aInitialDocumentURI=0x04f94280, nsIURI * aReferringURI=0x04f94280, nsILoadGroup * aLoadGroup=0x04f94dc8, const nsCString & aAcceptHeader={...}, unsigned int aLoadFlags=5120, nsIChannelPolicy * aPolicy=0x00000000) Line 525 + 0x22 bytes
xul.dll!imgLoader::LoadImage(nsIURI * aURI=0x04d36a80, nsIURI * aInitialDocumentURI=0x04f94280, nsIURI * aReferrerURI=0x04f94280, nsIPrincipal * aLoadingPrincipal=0x03816bb8, nsILoadGroup * aLoadGroup=0x04f94dc8, imgIDecoderObserver * aObserver=0x0667e0d0, nsISupports * aCX=0x050b6f28, unsigned int aLoadFlags=5120, nsISupports * aCacheKey=0x00000000, imgIRequest * aRequest=0x00000000, nsIChannelPolicy * aPolicy=0x00000000, imgIRequest * * _retval=0x06793dd8) Line 1692 + 0x42 bytes
xul.dll!nsContentUtils::LoadImage(nsIURI * aURI=0x04d36a80, nsIDocument * aLoadingDocument=0x050b6f28, nsIPrincipal * aLoadingPrincipal=0x03816bb8, nsIURI * aReferrer=0x04f94280, imgIDecoderObserver * aObserver=0x0667e0d0, int aLoadFlags=5120, imgIRequest * * aRequest=0x06793dd8) Line 2352 + 0x44 bytes
xul.dll!nsImageBoxFrame::UpdateImage() Line 266 + 0x6d bytes
xul.dll!nsImageBoxFrame::AttributeChanged(int aNameSpaceID=0, nsIAtom * aAttribute=0x0379e2e8, int aModType=2) Line 170
xul.dll!nsCSSFrameConstructor::AttributeChanged(mozilla::dom::Element * aElement=0x063dc9e8, int aNameSpaceID=0, nsIAtom * aAttribute=0x0379e2e8, int aModType=2) Line 8225
xul.dll!PresShell::AttributeChanged(nsIDocument * aDocument=0x050b6f28, mozilla::dom::Element * aElement=0x063dc9e8, int aNameSpaceID=0, nsIAtom * aAttribute=0x0379e2e8, int aModType=2) Line 5002
xul.dll!nsNodeUtils::AttributeChanged(mozilla::dom::Element * aElement=0x063dc9e8, int aNameSpaceID=0, nsIAtom * aAttribute=0x0379e2e8, int aModType=2) Line 136 + 0xd0 bytes
xul.dll!nsGenericElement::SetAttrAndNotify(int aNamespaceID=0, nsIAtom * aName=0x0379e2e8, nsIAtom * aPrefix=0x00000000, const nsAString_internal & aOldValue={...}, nsAttrValue & aParsedValue={...}, unsigned char aModType='', int aFireMutation=0, int aNotify=1, const nsAString_internal * aValueForAfterSetAttr=0x0033a088) Line 4640 + 0x19 bytes
xul.dll!nsGenericElement::SetAttr(int aNamespaceID=0, nsIAtom * aName=0x0379e2e8, nsIAtom * aPrefix=0x00000000, const nsAString_internal & aValue={...}, int aNotify=1) Line 4547 + 0x39 bytes
xul.dll!nsGenericElement::SetAttr(int aNameSpaceID=0, nsIAtom * aName=0x0379e2e8, const nsAString_internal & aValue={...}, int aNotify=1) Line 282
xul.dll!nsGenericElement::SetAttribute(const nsAString_internal & aName={...}, const nsAString_internal & aValue={...}) Line 2541 + 0x19 bytes
xul.dll!nsXULElement::SetAttribute(const nsAString_internal & name={...}, const nsAString_internal & value={...}) Line 540 + 0x14 bytes
xul.dll!nsIDOMElement_SetAttribute(JSContext * cx=0x04f987e8, unsigned int argc=2, jsval_layout * vp=0x04650318) Line 5708 + 0x23 bytes
0 PageProxySetIcon(aURL = "http://test.local.i7/favicon.ico") ["chrome://browser/content/browser.js":8384]
this = [object ChromeWindow @ 0x4ea01e0 (native @ 0x4e86b90)]
1 anonymous(aIconURL = "http://test.local.i7/favicon.ico") ["chrome://browser/content/browser.js":10014]
this = [object Object]
2 anonymous(p = [object Object], 0, [object Object]) ["chrome://browser/content/tabbrowser.xml":410]
this = [object ChromeWindow @ 0x4ea01e0 (native @ 0x4e86b90)]
3 _callProgressListeners(aCallTabsListeners = undefined, aCallGlobalListeners = undefined, aArguments = http://test.local.i7/favicon.ico, aMethod = "onLink
IconAvailable", aBrowser = [object XULElement @ 0x845fdf8 (native @ 0x84376e8)]) ["chrome://browser/content/tabbrowser.xml":407]
rv = true
this = [object XULElement @ 0x602edc0 (native @ 0x5da0cf8)]
4 setIcon(aURI = [xpconnect wrapped nsIURI @ 0x8675d68 (native @ 0x8675bb4)], aTab = [object XULElement @ 0x5cd7298 (native @ 0x5d00420)]) ["chrome://brows
er/content/tabbrowser.xml":698]
browser = [object XULElement @ 0x845fdf8 (native @ 0x84376e8)]
this = [object XULElement @ 0x602edc0 (native @ 0x5da0cf8)]
5 useDefaultIcon(aTab = [object XULElement @ 0x5cd7298 (native @ 0x5d00420)]) ["chrome://browser/content/tabbrowser.xml":752]
icon = "http://test.local.i7/favicon.ico"
docURIObject = [xpconnect wrapped nsIURI @ 0x86755b8 (native @ 0x882e3ec)]
browser = [object XULElement @ 0x845fdf8 (native @ 0x84376e8)]
this = [object XULElement @ 0x602edc0 (native @ 0x5da0cf8)]
6 anonymous(aStatus = 0, aStateFlags = 786448, aRequest = [xpconnect wrapped (nsISupports, nsIRequest, nsIChannel) @ 0x4b82e38 (native @ 0x4b81a70)], aWebP
rogress = [xpconnect wrapped (nsISupports, nsIDocShell, nsIInterfaceRequestor, nsIWebProgress, nsIWebNavigation, nsIDocShellHistory, nsIDocumentLoader) @ 0
x84fd8d0 (native @ 0x8437bc4)]) ["chrome://browser/content/tabbrowser.xml":556]
location = undefined
NS_ERROR_UNKNOWN_HOST = 2152398878
nsIChannel = nsIChannel
nsIWebProgressListener = nsIWebProgressListener
oldBlank = false
this = [object Object]
2.:
xul.dll!mozilla::places::AsyncFetchAndSetIconFromNetwork::Run() Line 602 + 0x35 bytes
3.:
0 _imageFromURI(callback = [function], uri = [xpconnect wrapped nsIURI @ 0x8b60978 (native @ 0x853d22c)]) ["resource://gre/modules/WindowsPreviewPerTab.jsm
":109]
channel = undefined
this = [object BackstagePass @ 0x8b378a8 (native @ 0x3adeafc)]
1 getFaviconAsImage(callback = [function], iconurl = "http://test.local.i7/favicon.ico") ["resource://gre/modules/WindowsPreviewPerTab.jsm":130]
this = [object BackstagePass @ 0x8b378a8 (native @ 0x3adeafc)]
2 anonymous(aIconURL = "http://test.local.i7/favicon.ico", aBrowser = [object XULElement @ 0x845fdf8 (native @ 0x84376e8)]) ["resource://gre/modules/Window
sPreviewPerTab.jsm":571]
self = [object Object]
this = [object Object]
3 anonymous(p = [object Object], 1, [object Object],[object Object]) ["chrome://browser/content/tabbrowser.xml":426]
this = [object ChromeWindow @ 0x4ea01e0 (native @ 0x4e86b90)]
4 _callProgressListeners(aCallTabsListeners = undefined, aCallGlobalListeners = undefined, aArguments = [object XULElement @ 0x845fdf8 (native @ 0x84376e8)
],http://test.local.i7/favicon.ico, aMethod = "onLinkIconAvailable", aBrowser = [object XULElement @ 0x845fdf8 (native @ 0x84376e8)]) ["chrome://browser/co
ntent/tabbrowser.xml":423]
rv = false
this = [object XULElement @ 0x602edc0 (native @ 0x5da0cf8)]
5 setIcon(aURI = [xpconnect wrapped nsIURI @ 0x8675d68 (native @ 0x8675bb4)], aTab = [object XULElement @ 0x5cd7298 (native @ 0x5d00420)]) ["chrome://brows
er/content/tabbrowser.xml":698]
browser = [object XULElement @ 0x845fdf8 (native @ 0x84376e8)]
this = [object XULElement @ 0x602edc0 (native @ 0x5da0cf8)]
6 useDefaultIcon(aTab = [object XULElement @ 0x5cd7298 (native @ 0x5d00420)]) ["chrome://browser/content/tabbrowser.xml":752]
icon = "http://test.local.i7/favicon.ico"
docURIObject = [xpconnect wrapped nsIURI @ 0x86755b8 (native @ 0x882e3ec)]
browser = [object XULElement @ 0x845fdf8 (native @ 0x84376e8)]
this = [object XULElement @ 0x602edc0 (native @ 0x5da0cf8)]
7 anonymous(aStatus = 0, aStateFlags = 786448, aRequest = [xpconnect wrapped (nsISupports, nsIRequest, nsIChannel) @ 0x4b82e38 (native @ 0x4b81a70)], aWebP
rogress = [xpconnect wrapped (nsISupports, nsIDocShell, nsIInterfaceRequestor, nsIWebProgress, nsIWebNavigation, nsIDocShellHistory, nsIDocumentLoader) @ 0
x84fd8d0 (native @ 0x8437bc4)]) ["chrome://browser/content/tabbrowser.xml":556]
location = undefined
NS_ERROR_UNKNOWN_HOST = 2152398878
nsIChannel = nsIChannel
nsIWebProgressListener = nsIWebProgressListener
oldBlank = false
this = [object Object]
And during debugging I have found another one..
4.:
xul.dll!NewImageChannel(nsIChannel * * aResult=0x002bac38, nsIURI * aURI=0x03af8030, nsIURI * aInitialDocumentURI=0x04e782d8, nsIURI * aReferringURI=0x04e782d8, nsILoadGroup * aLoadGroup=0x04e78e20, const nsCString & aAcceptHeader={...}, unsigned int aLoadFlags=5120, nsIChannelPolicy * aPolicy=0x00000000) Line 525 + 0x22 bytes
xul.dll!imgLoader::LoadImage(nsIURI * aURI=0x03af8030, nsIURI * aInitialDocumentURI=0x04e782d8, nsIURI * aReferrerURI=0x04e782d8, nsIPrincipal * aLoadingPrincipal=0x03aa63c0, nsILoadGroup * aLoadGroup=0x04e78e20, imgIDecoderObserver * aObserver=0x087b59e8, nsISupports * aCX=0x058cc968, unsigned int aLoadFlags=5120, nsISupports * aCacheKey=0x00000000, imgIRequest * aRequest=0x00000000, nsIChannelPolicy * aPolicy=0x00000000, imgIRequest * * _retval=0x08874710) Line 1692 + 0x42 bytes
xul.dll!nsContentUtils::LoadImage(nsIURI * aURI=0x03af8030, nsIDocument * aLoadingDocument=0x058cc968, nsIPrincipal * aLoadingPrincipal=0x03aa63c0, nsIURI * aReferrer=0x04e782d8, imgIDecoderObserver * aObserver=0x087b59e8, int aLoadFlags=5120, imgIRequest * * aRequest=0x08874710) Line 2352 + 0x44 bytes
xul.dll!nsImageBoxFrame::UpdateImage() Line 266 + 0x6d bytes
xul.dll!nsImageBoxFrame::Init(nsIContent * aContent=0x06004230, nsIFrame * aParent=0x08486d68, nsIFrame * aPrevInFlow=0x00000000) Line 234
xul.dll!nsCSSFrameConstructor::InitAndRestoreFrame(const nsFrameConstructorState & aState={...}, nsIContent * aContent=0x06004230, nsIFrame * aParentFrame=0x08486d68, nsIFrame * aPrevInFlow=0x00000000, nsIFrame * aNewFrame=0x088746b8, int aAllowCounters=1) Line 4499 + 0x1a bytes
xul.dll!nsCSSFrameConstructor::ConstructFrameFromItemInternal(nsCSSFrameConstructor::FrameConstructionItem & aItem={...}, nsFrameConstructorState & aState={...}, nsIFrame * aParentFrame=0x08486d68, nsFrameItems & aFrameItems={...}) Line 3716 + 0x1c bytes
xul.dll!nsCSSFrameConstructor::ConstructFramesFromItem(nsFrameConstructorState & aState={...}, nsCSSFrameConstructor::FrameConstructionItemList::Iterator & aIter={...}, nsIFrame * aParentFrame=0x08486d68, nsFrameItems & aFrameItems={...}) Line 5445 + 0x18 bytes
xul.dll!nsCSSFrameConstructor::ConstructFramesFromItemList(nsFrameConstructorState & aState={...}, nsCSSFrameConstructor::FrameConstructionItemList & aItems={...}, nsIFrame * aParentFrame=0x08486d68, nsFrameItems & aFrameItems={...}) Line 9456 + 0x18 bytes
xul.dll!nsCSSFrameConstructor::ContentRangeInserted(nsIContent * aContainer=0x060040a0, nsIContent * aStartChild=0x06004230, nsIContent * aEndChild=0x060042c8, nsILayoutHistoryState * aFrameState=0x05b48440, int aAllowLazyConstruction=0) Line 7147
xul.dll!nsCSSFrameConstructor::ContentInserted(nsIContent * aContainer=0x060040a0, nsIContent * aChild=0x06004230, nsILayoutHistoryState * aFrameState=0x05b48440, int aAllowLazyConstruction=0) Line 6768
xul.dll!nsCSSFrameConstructor::RecreateFramesForContent(nsIContent * aContent=0x06004230, int aAsyncInsert=0) Line 9101 + 0x23 bytes
xul.dll!nsCSSFrameConstructor::ProcessRestyledFrames(nsStyleChangeList & aChangeList={...}) Line 7967
xul.dll!nsCSSFrameConstructor::RestyleElement(mozilla::dom::Element * aElement=0x058f9ad0, nsIFrame * aPrimaryFrame=0x058dcff0, nsChangeHint aMinHint=0, mozilla::css::RestyleTracker & aRestyleTracker={...}, int aRestyleDescendants=1) Line 8053
xul.dll!mozilla::css::RestyleTracker::ProcessOneRestyle(mozilla::dom::Element * aElement=0x058f9ad0, nsRestyleHint aRestyleHint=eRestyle_Subtree, nsChangeHint aChangeHint=0) Line 157
xul.dll!mozilla::css::RestyleTracker::ProcessRestyles() Line 241
xul.dll!nsCSSFrameConstructor::ProcessPendingRestyles() Line 11625
xul.dll!PresShell::FlushPendingNotifications(mozFlushType aType=Flush_InterruptibleLayout) Line 4821
xul.dll!PresShell::WillPaint(int aWillSendDidPaint=1) Line 7645
xul.dll!nsViewManager::CallWillPaintOnObservers(int aWillSendDidPaint=1) Line 1582
xul.dll!nsViewManager::DispatchEvent(nsGUIEvent * aEvent=0x002bc048, nsIView * aView=0x058d9e40, nsEventStatus * aStatus=0x002bbd50) Line 879
xul.dll!AttachedHandleEvent(nsGUIEvent * aEvent=0x002bc048) Line 192
xul.dll!nsWindow::DispatchEvent(nsGUIEvent * event=0x002bc048, nsEventStatus & aStatus=nsEventStatus_eIgnore) Line 3577 + 0xc bytes
xul.dll!nsWindow::DispatchWindowEvent(nsGUIEvent * event=0x002bc048) Line 3604
xul.dll!nsWindow::OnPaint(HDC__ * aDC=0x00000000, unsigned int aNestingLevel=0) Line 250
I would suggest to coalesce the requests to a single one. All of these are happening in parallel, mostly. Maybe some special handling of cache entry for this request might be a solution. Anyway, doing 4 requests for the same thing seems to be crazy.
![]() |
||
Comment 1•13 years ago
|
||
Isn't the solution to cache error responses in the image cache? We have an existing bug on that...
![]() |
Reporter | |
Updated•8 years ago
|
Assignee: nobody → honzab.moz
Comment 2•8 years ago
|
||
1. is probably the tab icon
2. the mozilla::places load is to store the favicon in the favicons service cache, from there it will be reused for various UI pieces (history menu and views, bookmarks menu and views, newtab/AS, ...) and retained for 7 days before a new reload.
3. looks like Windows taskbar previews
The image cache should indeed serve the same image to all UI consumers, but some of these consumers are likely fetching the image url directly from the network and then the image cache doesn't help.
We could either pass an already loaded payload to the favicons service to save one load, or use the favicons service protocols (moz-anno:favicon: or page-icon:) more broadly (both for the tab and for Windows previews). The problem there is that the favicons service doesn't store icons in PB mode, so we would either need to create a temp store for PB mode, or make the above protocols fall-through to network when there's no locally cached icon, but that has security implications that go over my knowledge (I'd be happy to cooperate on figuring those out).
Also note it's likely in the future the favicons service will fetch more than a single icon per page, many pages are indeed providing multiple icons at different sizes, and we're working to support hi dpi and bigger favicons in the UI. So we could start fetching some more icons from each page (when they are not cached yet). I'm happy to hear suggestions on how we could make that less painful.
![]() |
Reporter | |
Updated•8 years ago
|
Priority: -- → P1
![]() |
Reporter | |
Comment 3•8 years ago
|
||
This has reduced to only 2 requests:
> xul.dll!mozilla::net::nsHttpChannel::AsyncOpen(0x28467f80, 0x00000000) Line 5777 C++
xul.dll!mozilla::net::nsHttpChannel::AsyncOpen2(0x28467f80) Line 5971 C++
xul.dll!imgLoader::LoadImage(0x28248c80, 0x228e2a00, 0x228e2a00, RP_Unset, 0x285af6a0, 0x22b26ec0, 0x1e253160, 0x24ed39c0, 0x1d78d000, 5120, 0x00000000, 41, {...}, 0x282a2178) Line 2246 C++
xul.dll!nsContentUtils::LoadImage(0x28248c80, 0x24ed39c0, 0x1d78d000, 0x285af6a0, 0x228e2a00, RP_Unset, 0x1e253160, 5120, {...}, 0x282a2178, 41) Line 3435 C++
xul.dll!nsImageBoxFrame::UpdateImage() Line 247 C++
xul.dll!nsImageBoxFrame::Init(0x24ed39c0, 0x2511d738, 0x00000000) Line 211 C++
xul.dll!nsCSSFrameConstructor::InitAndRestoreFrame({...}, 0x24ed39c0, 0x2511d738, 0x282a2120, true) Line 5012 C++
xul.dll!nsCSSFrameConstructor::ConstructFrameFromItemInternal({...}, {...}, 0x2511d738, {...}) Line 3932 C++
xul.dll!nsCSSFrameConstructor::ConstructFramesFromItem({...}, {...}, 0x2511d738, {...}) Line 6265 C++
xul.dll!nsCSSFrameConstructor::ConstructFramesFromItemList({...}, {...}, 0x2511d738, {...}) Line 10843 C++
xul.dll!nsCSSFrameConstructor::ContentRangeInserted(0x24ed3920, 0x24ed39c0, 0x24ed3a10, 0x2286e6c0, false, 0x00000000) Line 8253 C++
xul.dll!nsCSSFrameConstructor::ContentInserted(0x24ed3920, 0x24ed39c0, 0x2286e6c0, false) Line 7799 C++
xul.dll!nsCSSFrameConstructor::RecreateFramesForContent(0x24ed39c0, false, REMOVE_FOR_RECONSTRUCTION, 0x00000000) Line 9913 C++
xul.dll!nsCSSFrameConstructor::MaybeRecreateFramesForElement(0x24ed39c0) Line 9519 C++
xul.dll!mozilla::GeckoRestyleManager::RestyleElement(0x24ed39c0, 0x00000000, nsChangeHint_Empty, {...}, 3, {...}) Line 164 C++
xul.dll!mozilla::RestyleTracker::ProcessOneRestyle(0x24ed39c0, 3, nsChangeHint_Empty, {...}) Line 95 C++
xul.dll!mozilla::RestyleTracker::DoProcessRestyles() Line 264 C++
xul.dll!mozilla::GeckoRestyleManager::ProcessRestyles({...}) Line 392 C++
xul.dll!mozilla::GeckoRestyleManager::ProcessPendingRestyles() Line 506 C++
xul.dll!mozilla::RestyleManager::ProcessPendingRestyles() Line 45 C++
xul.dll!mozilla::PresShell::DoFlushPendingNotifications({...}) Line 4210 C++
xul.dll!nsIPresShell::FlushPendingNotifications({...}) Line 609 C++
xul.dll!nsRefreshDriver::Tick(1491747297906295, {...}) Line 1776 C++
xul.dll!mozilla::RefreshDriverTimer::TickDriver(0x1ea2b8c0, 1491747297906295, {...}) Line 330 C++
xul.dll!mozilla::RefreshDriverTimer::TickRefreshDrivers(1491747297906295, {...}, {...}) Line 299 C++
xul.dll!mozilla::RefreshDriverTimer::Tick(1491747297906295, {...}) Line 323 C++
xul.dll!mozilla::VsyncRefreshDriverTimer::RunRefreshDrivers({...}) Line 712 C++
xul.dll!mozilla::VsyncRefreshDriverTimer::RefreshDriverVsyncObserver::TickRefreshDriver({...}) Line 627 C++
xul.dll!mozilla::detail::RunnableMethodArguments<mozilla::TimeStamp>::applyImpl<mozilla::VsyncRefreshDriverTimer::RefreshDriverVsyncObserver,void (__thiscall mozilla::VsyncRefreshDriverTimer::RefreshDriverVsyncObserver::*)(mozilla::TimeStamp),StoreCopyPassByConstLRef<mozilla::TimeStamp>,0>(0x2232fa10, 0x10043389, {...}, {...}) Line 865 C++
xul.dll!mozilla::detail::RunnableMethodArguments<mozilla::TimeStamp>::apply<mozilla::VsyncRefreshDriverTimer::RefreshDriverVsyncObserver,void (__thiscall mozilla::VsyncRefreshDriverTimer::RefreshDriverVsyncObserver::*)(mozilla::TimeStamp)>(0x2232fa10, 0x10043389) Line 870 C++
xul.dll!mozilla::detail::RunnableMethodImpl<mozilla::VsyncRefreshDriverTimer::RefreshDriverVsyncObserver * const,void (__thiscall mozilla::VsyncRefreshDriverTimer::RefreshDriverVsyncObserver::*)(mozilla::TimeStamp),1,0,mozilla::TimeStamp>::Run() Line 901 C++
xul.dll!nsThread::ProcessNextEvent(false, 0x0077f4e1) Line 1270 C++
xul.dll!NS_ProcessNextEvent(0x0116b300, false) Line 389 C++
xul.dll!mozilla::ipc::MessagePump::Run(0x01125060) Line 96 C++
xul.dll!MessageLoop::RunInternal() Line 239 C++
xul.dll!MessageLoop::RunHandler() Line 232 C++
xul.dll!MessageLoop::Run() Line 212 C++
xul.dll!nsBaseAppShell::Run() Line 158 C++
xul.dll!nsAppShell::Run() Line 271 C++
xul.dll!nsAppStartup::Run() Line 283 C++
xul.dll!XREMain::XRE_mainRun() Line 4538 C++
xul.dll!XREMain::XRE_main(4, 0x01102040, {...}) Line 4718 C++
xul.dll!XRE_main(4, 0x01102040, {...}) Line 4811 C++
> xul.dll!mozilla::net::nsHttpChannel::AsyncOpen(0x228e1ed4, 0x00000000) Line 5777 C++
xul.dll!mozilla::net::nsHttpChannel::AsyncOpen2(0x228e1ed4) Line 5971 C++
xul.dll!mozilla::places::AsyncFetchAndSetIconForPage::FetchFromNetwork() Line 444 C++
xul.dll!mozilla::detail::RunnableMethodArguments<>::applyImpl<mozilla::places::AsyncFetchAndSetIconForPage,enum nsresult (__thiscall mozilla::places::AsyncFetchAndSetIconForPage::*)(void)>(0x228e1ec0, 0x100b9c19, {...}, {...}) Line 865 C++
xul.dll!mozilla::detail::RunnableMethodArguments<>::apply<mozilla::places::AsyncFetchAndSetIconForPage,enum nsresult (__thiscall mozilla::places::AsyncFetchAndSetIconForPage::*)(void)>(0x228e1ec0, 0x100b9c19) Line 870 C++
xul.dll!mozilla::detail::RunnableMethodImpl<mozilla::places::AsyncFetchAndSetIconForPage * const,enum nsresult (__thiscall mozilla::places::AsyncFetchAndSetIconForPage::*)(void),1,0>::Run() Line 901 C++
xul.dll!nsThread::ProcessNextEvent(false, 0x0077f4e1) Line 1270 C++
xul.dll!NS_ProcessNextEvent(0x0116b300, false) Line 389 C++
xul.dll!mozilla::ipc::MessagePump::Run(0x01125060) Line 96 C++
xul.dll!MessageLoop::RunInternal() Line 239 C++
xul.dll!MessageLoop::RunHandler() Line 232 C++
xul.dll!MessageLoop::Run() Line 212 C++
xul.dll!nsBaseAppShell::Run() Line 158 C++
xul.dll!nsAppShell::Run() Line 271 C++
xul.dll!nsAppStartup::Run() Line 283 C++
xul.dll!XREMain::XRE_mainRun() Line 4538 C++
xul.dll!XREMain::XRE_main(4, 0x01102040, {...}) Line 4718 C++
Both fortunately happen later during the page load process, so they no longer block paint, I believe (no tool to check, tho....) But still would be good to coalesce them. One option is to make the response more cacheable, at least 404.
I don't believe this blocks CDP anymore and bug 1247843 will use a different solution.
![]() |
Reporter | |
Comment 4•8 years ago
|
||
The first load apparently comes from here:
https://dxr.mozilla.org/mozilla-central/rev/2a3ecdb7d1ea814708021fee6735b3aedcf03e48/browser/base/content/tabbrowser.xml#971
Which according comment 2 seems to be windows taskbar preview. The priority of the channel is LOW, so it's not that bad.
![]() |
Reporter | |
Comment 5•8 years ago
|
||
I don't think this needs an urgent fix, releasing.
Assignee: honzab.moz → nobody
Component: General → Tabbed Browser
OS: Windows 7 → Windows
Mass-removing myself from cc; search for 12b9dfe4-ece3-40dc-8d23-60e179f64ac1 or any reasonable part thereof, to mass-delete these notifications (and sorry!)
Updated•2 years ago
|
Severity: normal → S3
You need to log in
before you can comment on or make changes to this bug.
Description
•