Bug 14992
| Summary: | Changing pop-up does not automatically reload page on Yahoo! Finance Message Boards | ||
|---|---|---|---|
| Product: | WebKit | Reporter: | David Kilzer (:ddkilzer) <ddkilzer> |
| Component: | Evangelism | Assignee: | Nobody <webkit-unassigned> |
| Status: | CLOSED FIXED | ||
| Severity: | Normal | Keywords: | InRadar, YahooBug |
| Priority: | P2 | ||
| Version: | 523.x (Safari 3) | ||
| Hardware: | Mac | ||
| OS: | OS X 10.4 | ||
| URL: | http://messages.finance.yahoo.com/mb/AAPL | ||
David Kilzer (:ddkilzer)
* SUMMARY
On the Yahoo! Finance message boards, selecting the minimum number of stars does not cause the page to reload.
* STEPS TO REPRODUCE
1. Launch Safari/WebKit.
2. Go to URL: http://messages.finance.yahoo.com/mb/AAPL
3. Change the "Only show topics rated at least:" pop-up to a different value.
* EXPECTED RESULTS
The page should reload with the new star level set.
* ACTUAL RESULTS
Nothing happens other than the pop-up changing. User must hit Enter to submit the form.
* REGRESSION
This is not a regression as Safari 2.0.4 has the same behavior.
* RADAR
<rdar://problem/5413205>
* NOTES
There are four errors printed in the JavaScript console on the page:
ReferenceError: Can't find variable: YAHOO
http://messages.finance.yahoo.com/mb/AAPL
Line: 1076
ReferenceError: Can't find variable: YAHOO
http://messages.finance.yahoo.com/mb/AAPL
Line: 1077
TypeError: Undefined value
http://messages.finance.yahoo.com/mb/AAPL
Line: 1099
TypeError: Undefined value
http://messages.finance.yahoo.com/mb/AAPL
Line: 1103
| Attachments | ||
|---|---|---|
| Add attachment proposed patch, testcase, etc. |
David Kilzer (:ddkilzer)
This is an evangelism issue. When the page is requested with a Safari/WebKit user agent, a critical JavaScript file is left out of the page source between the </body> and </html> tags:
<script type="text/javascript" src="http://us.js2.yimg.com/us.js.yimg.com/i/us/fi/yfs/js/yahoo_event_dom_2.2.0.js"></script>
The missing script causes the JavaScript errors during page load, and prevents the pop-up from working properly.
I can NOT reproduce this by changing the user agent within Safari's Debug menu, but it's easy to confirm using curl:
$ curl -A "Mozilla/5.0 (Macintosh; U; PPC Mac OS X; en) AppleWebKit/523.2+ (KHTML, like Gecko) Version/3.0.3 Safari/522.12.1" http://messages.finance.yahoo.com/mb/AAPL >curl-Safari-AAPL.html
$ curl -A "Mozilla/5.0 (Macintosh; U; PPC Mac OS X Mach-O; en-US; rv:1.8.1.6) Gecko/20070725 Firefox/2.0.0.6" http://messages.finance.yahoo.com/mb/AAPL >curl-Firefox-AAPL.html
$ curl -A "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1; .NET CLR 1.1.4322)" http://messages.finance.yahoo.com/mb/AAPL >curl-MSIE6-AAPL.html
David Kilzer (:ddkilzer)
Note that loading the page downloaded by curl with the Firefox user agent loads with no JavaScript errors in Safari and that this fixes the behavior of the broken pop-up menu.
David Kilzer (:ddkilzer)
Yahoo has now fixed this issue. The current page now correctly loads the required script (http://us.js2.yimg.com/us.js.yimg.com/i/us/fi/yfs/js/yahoo_event_dom_2.2.2.js) with Safari 2 and 3, and the pop-up menu behaves as expected.