We currently have 3 places (that I know of) that need favicons for tabs/pages: 1) browser tabs 2) places (history/bookmarks) 3) windows per-tab previews All of this code is a bit messy, because right now (3) depends on (2) and doesn't work for private windows (because the places code doesn't store favicons in its DB for private windows, for all the obvious privacy reasons), (1) does manual security checks and then loads the image directly from chrome code (ew), and (1) and (2) make independent requests, leading to duplicate requests in some cases. I'd like us to consolidate the fetching code in a JS module, perhaps even on the content process side to make requests as part of the load group of the content window, and to hand out blob URIs to consumers that want the image data. This would also make it easier to do something sensible for image documents which currently have other "interesting" bugs (cf. bug 583351).
a year ago