about:memory and JS console broken on inbound tip in unpackaged build

VERIFIED FIXED in Firefox 13

Status

()

Core
General
VERIFIED FIXED
5 years ago
5 years ago

People

(Reporter: mbrubeck, Unassigned)

Tracking

({regression})

15 Branch
mozilla15
regression
Points:
---
Dependency tree / graph

Firefox Tracking Flags

(firefox13+ fixed, firefox14+ fixed, firefox15 fixed, firefox-esr1013+ fixed)

Details

(Whiteboard: [qa-])

Attachments

(1 attachment, 2 obsolete attachments)

(Reporter)

Description

5 years ago
Not sure where to file this, sorry.

In a local Linux build from inbound, yesterday evening, njn noticed that about:memory would not load in a local (unpackaged) build, and I was able to reproduce this.  Instead of "about:memory", the urlbar shows a file: URI with the location of aboutMemory.xhtml in the srcdir.  The JS console will not load either (it shows an empty window with no console messages).

Bisecting led me to this possible regression range, though njn found that clobbering might alter the results.  (I bisected without clobbering.)  CPG has also been suggested as the culprit.
https://hg.mozilla.org/integration/mozilla-inbound/pushloghtml?fromchange=086e419f370a&tochange=26738df8a4e0

There was some possibly relevant logging from my debug build:

JavaScript error: , line 0: nothing active on context (repeated many times)

Security Error: Content at file:///home/mbrubeck/src/mozilla/beta/browser/themes/gnomestripe/searchbar.css may not load or link to chrome://mozapps/skin/places/defaultFavicon.png
Component: General → about:memory
Product: Core → Toolkit
QA Contact: general → about.memory
> CPG has also been suggested as the culprit.

I suggested that when I assumed about:memory was broken differently than it is.  :)  This doesn't immediately sound like CPG to me.
I noticed a similar error with:

TEST_PATH=js/xpconnect/tests make mochitest-chrome

I doubt that this is CPG-related, because the above is my standard smoketest, which I ran many times with my CPG patches before pushing them. Also, CPG isn't in that regression window.
(FWIW, I'm pretty baffled that chrome tests are broken for me locally but not on tinderbox. Maybe it's the way that I'm running them?)
I think this is https://hg.mozilla.org/integration/mozilla-inbound/rev/60613f18435b

Comment 5

5 years ago
(In reply to Kyle Huey [:khuey] (khuey@mozilla.com) from comment #4)
> I think this is  http://hg.mozilla.org/integration/mozilla-inbound/rev/60613f18435b

Indeed it is.

What's happening is that (in a symlink or unpackaged omnijar build) many chrome files are actually symlinks back to the source tree.

Part of the patch updates channels that point to symlinks to point them at their destination.

Unfortuantely this also ends up clobbering the original chrome: URL in the case that it resolves to a file: URL that is a symlink.
The right way to do this is probably to clear the LOAD_REPLACE flag on the underlying channel right around http://hg.mozilla.org/mozilla-central/annotate/db1f131884de/chrome/src/nsChromeProtocolHandler.cpp#l215
Blocks: 670514
Assignee: nobody → netzen
Created attachment 621120 [details] [diff] [review]
This seems to fix it.

Per bz's suggestion this seems to fix both about:memory and the error console. Brian, can you push this through try etc and get this landed?
Attachment #621120 - Flags: review?(bzbarsky)
Comment on attachment 621120 [details] [diff] [review]
This seems to fix it.

Please move that code to after the comment.

And on a side note, -U8, please!
Attachment #621120 - Flags: review?(bzbarsky) → review+
> Per bz's suggestion this seems to fix both about:memory and the error console. 
> Brian, can you push this through try etc and get this landed?

I did the same locally, but yup I'll see your patch to landing.
Assignee: netzen → jst
Created attachment 621126 [details] [diff] [review]
Patch v2.

Implemented bz nits on behalf of jst, pushed to try.
Attachment #621120 - Attachment is obsolete: true
Attachment #621126 - Flags: review+
Comment on attachment 621126 [details] [diff] [review]
Patch v2.

Just to be clear, the -U8 nit was not about the patch per se, but about jst's hg config.  ;)
understood, I meant about moving the comment.  The auto -U8 came for free from my beautifully configured hgrc ;)
-U8 hgrc bug fixed locally :)
Thanks for filing this, mbrubeck.


(In reply to Bobby Holley (:bholley) from comment #3)
> (FWIW, I'm pretty baffled that chrome tests are broken for me locally but
> not on tinderbox. Maybe it's the way that I'm running them?)

That is worrying to me.  I guess that tinderbox builds are not "a symlink or unpackaged omnijar build"?
Nope, tinderbox builds are packaged.
Seems like a comment is in order? Seems non-obvious why LOAD_REPLACE is being stripped out here.
Assignee: jst → nobody
Component: about:memory → General
OS: Linux → All
Product: Toolkit → Core
QA Contact: about.memory → general
Hardware: x86_64 → All
Created attachment 621195 [details] [diff] [review]
Pavtch v3.

Added its own comment, will land tonight when try results finish.
Actually, I believe the original comment clearly described what's going on.  For someone who knows how the principal of a load and the URI of a document is determined, at least.  For someone who doesn't know that this whole part of the code is complete mumbo-jumbo without _way_ better comments than what's there right now.
Are you OK if I land patch v2?
Yeah, go for it.
Attachment #621195 - Attachment is obsolete: true
http://hg.mozilla.org/mozilla-central/rev/0a48e6561534
Status: NEW → RESOLVED
Last Resolved: 5 years ago
Resolution: --- → FIXED
Target Milestone: --- → mozilla15
Blocks: 751911
status-firefox15: --- → fixed
tracking-firefox-esr10: --- → 13+
tracking-firefox13: --- → +
tracking-firefox14: --- → +
Fixed for Aurora in changeset:
http://hg.mozilla.org/releases/mozilla-aurora/rev/cf5c4540fe22
See Bug 670514
status-firefox14: --- → fixed
No longer blocks: 670514
Blocks: 670514
(In reply to Brian R. Bondy [:bbondy] from comment #22)
> Fixed for Aurora in changeset:
> http://hg.mozilla.org/releases/mozilla-aurora/rev/cf5c4540fe22
> See Bug 670514

I believe the same goes for beta now.
status-firefox13: --- → fixed
Yup thanks for marking.
See Bug 670514
http://hg.mozilla.org/releases/mozilla-beta/rev/7a2c1909e205
http://hg.mozilla.org/releases/mozilla-esr10/rev/8ef222645a1a
status-firefox-esr10: --- → fixed
Matt, could you please verify this is now fixed in Firefox 13, 14, 15, and latest-mozilla-esr10? or provide QA with steps to reproduce this in those builds?
Whiteboard: [qa+]
(Reporter)

Comment 27

5 years ago
This bug does not affect the builds produced by mozilla; it only affects builds on developers' machines. I can mark this verified on trunk but I don't have time to test it on all the branches. (I'm on vacation this week.)
Status: RESOLVED → VERIFIED
(In reply to Matt Brubeck (:mbrubeck) [back on 5/21] from comment #27)
> This bug does not affect the builds produced by mozilla; it only affects
> builds on developers' machines. I can mark this verified on trunk but I
> don't have time to test it on all the branches.

I can confirm it's fine on trunk (mbrubeck and I were the first to notice the bustage).  I don't think it's relevant to other branches because the bug that caused it (bug 670514) landed during the FF15 dev cycle.
Okay, thanks Matt and Nicholas. I'm marking this [qa-] based on your comments. Please change the whiteboard tag to [qa+] if something changes and there is something QA needs to do to verify this fix.
Whiteboard: [qa+] → [qa-]
You need to log in before you can comment on or make changes to this bug.