Closed
Bug 437651
Opened 16 years ago
Closed 10 years ago
moneycentral.msn.com - Doesn't display MSN Money stock quote data in Gecko 1.9 browsers (Firefox 3, Camino 2)
Categories
(Web Compatibility :: Desktop, defect)
Web Compatibility
Desktop
Tracking
(Not tracked)
RESOLVED
WORKSFORME
People
(Reporter: robarnold, Unassigned)
References
()
Details
(Keywords: regression)
1. I go to http://moneycentral.msn.com/investor/home.asp#
2. I look at the "Quote watchlist" panel. Already there is a difference between Firefox and IE: IE has 3 prepopulated entries.
3. I enter a stock symbol into the text field (Ex: ADBE, MSFT, JAVA, GOOG) and click Add.
4. The button disables itself and the text field clears. In my error console I see an exception was thrown: NS_ERROR_NOT_AVAILABLE at http://shared.live.com/~Live.GadgetFramework/~11.5.2008/AtlasCompat.js on line 62.
What I expected:
the symbol I entered should have appeared under "My Watchlist" along with some ui bits in the same row.
Comment 1•16 years ago
|
||
I can confirm this on OSX. I tried FF2 and got the expected results (including the prepopulated entries). I used FF3 and got the problem Rob had. Also, spoofing the user agent for FF2 results in the same issue with the same error.
OS: Windows Vista → All
Updated•16 years ago
|
Keywords: regression
Comment 2•16 years ago
|
||
So... I'm trying to follow the steps in comment 0.
1) Load http://moneycentral.msn.com/investor/home.asp#
2) Look for "Quote Watchlist" and click that link.
3) From the resulting screen, select the "view" option (not the "demo" option).
But now I don't see a button labeled "Add"...
In fact, the only textfield I ever see for entering stock symbols is the one next to the "Get Quote" button.
(Using Minefield from a few weeks back on Linux).
I suppose they might be browser-sniffing in a particularly stupid way (e.g. looking for Firefox) and serving different content... Whoever can actually reproduce this should breakpoint in nsXMLHttpRequest::GetStatus (in both Firefox 3 and Firefox 2) and see what the callstacks look like and why it throws in 3 but not 2.
Reporter | ||
Comment 3•16 years ago
|
||
Step 2 is wrong: don't click the link. The problem occurs on the page I linked to.
Comment 4•16 years ago
|
||
The page you linked to doesn't have any buttons labeled "Add" or anything with "Quote watchlist" in it other than that link.
Reporter | ||
Comment 5•16 years ago
|
||
After talking on IRC with Boris, it seems this site is sniffing the user agent for Firefox, so users of Minefield need to spoof their user agent in order to reproduce.
Comment 6•16 years ago
|
||
Brief summary: In Firefox 3, we fire an onreadystatechange handler that tries to get the status. Sadly, we're in readystate _1_, so of course it throws. I can't tell where the code lives, because trying to dump the JS stack asserts and dies in the JS engine. Sad.
I don't get any attempt at all to get the status in Firefox 2.
So really, there are two paths forward:
1) Try to dig into the site and understand why it's running different code in
the two cases.
2) Try nightly builds (with UA spoofed to Firefox 2, say), and find a
regression range.
Updated•16 years ago
|
Product: Firefox → Core
QA Contact: general → general
Comment 7•16 years ago
|
||
with a ff2 ua on linux, 2006-05-05-04 works, 2006-05-06-04 doesn't. Note that the default watch list appears in these older builds.
Comment 8•16 years ago
|
||
the default watch list appears in the 2007-06-17-04 build but does not in the 2007-06-17-04 build.
Comment 9•16 years ago
|
||
Bob, those last two build ids are identical...
Comment 10•16 years ago
|
||
oops. make that 2007-06-18-04.
Comment 11•16 years ago
|
||
So the regression range in comment 7 is http://bonsai.mozilla.org/cvsquery.cgi?treeid=default&module=MozillaTinderboxAll&branch=HEAD&branchtype=match&dir=&file=&filetype=match&who=&whotype=match&sortby=Date&hours=2&date=explicit&mindate=2006-05-05+04&maxdate=2006-05-06+04&cvsroot=%2Fcvsroot
I would guess the issue is bug 198595 and bug 312213 somehow.
The regression range in comment 8 and comment 10 is http://bonsai.mozilla.org/cvsquery.cgi?treeid=default&module=MozillaTinderboxAll&branch=HEAD&branchtype=match&dir=&file=&filetype=match&who=&whotype=match&sortby=Date&hours=2&date=explicit&mindate=2007-06-17+04&maxdate=2007-06-18+04&cvsroot=%2Fcvsroot
I'm not sure what the deal there is (and the fact that changing the UA string in current builds makes it appear makes me think that it's just broken UA sniffing).
Comment 12•16 years ago
|
||
Ah, I see what happened here. The relevant code is in http://shared.live.com/~Live.GadgetFramework/~11.5.2008/liveframework.js on line 2118 and lines 2140 through 2150. Line 2118:
xml.onreadystatechange = doCallback;
Lines 2140 through 2150:
function doCallback(p_blnForce)
{
if (xml && (p_blnForce || 4==xml.readyState))
{
xml.onreadystatechange = Function.emptyFunction;
if (o.timer)
clearTimeout(o.timer);
Finished(xml,o);
xml = o = null;
}
}
Basically, this code overloads the onreadystatechange handler to do other cleanup (sometimes explicitly calling it with a |true| argument). This used to work because in Firefox 2 this handler never gets an argument when called from our code. But in Firefox 3 onreadystatechange is an EventListener, which means it gets the Event object passed to the method. Thus in Firefox 3 the conditional in doCallback always has p_blInForce testing true, so we call Finished() even though we're just starting the request, and then things start accessing .status, etc, and die.
The behavior here changed in bug 198595, but we do want the new behavior, and it's what the W3C XHR spec will require. So this is evangelism. Just testing the type of the argument to make sure it's not an Event should be enough. Or factoring the body of that function out so that the readystate event handler calls it with false. Or any other change along those lines.
Assignee: nobody → english-us
Component: General → English US
Product: Core → Tech Evangelism
QA Contact: general → english-us
Version: Trunk → unspecified
Updated•16 years ago
|
Hardware: PC → All
Summary: Firefox 3 Release Candidate 2 doesn't display MSN Money stock quote data → moneycentral.msn.com - Doesn't display MSN Money stock quote data in Gecko 1.9 browsers (Firefox 3, Camino 2)
Comment 13•10 years ago
|
||
> The page you requested can't be found
I guess the page is now
http://investing.money.msn.com/stock-market-quotes
The default watchlist seems to be working.
Assignee: english-us → nobody
Status: NEW → RESOLVED
Closed: 10 years ago
Component: English US → Desktop
Resolution: --- → WORKSFORME
Assignee | ||
Updated•6 years ago
|
Product: Tech Evangelism → Web Compatibility
You need to log in
before you can comment on or make changes to this bug.
Description
•