Closed Bug 712805 Opened 14 years ago Closed 14 years ago

nk.pl does not work in Firefox 9

Categories

(Tech Evangelism Graveyard :: Polish, defect)

defect
Not set
critical

Tracking

(Not tracked)

RESOLVED FIXED

People

(Reporter: zbraniecki, Unassigned)

References

()

Details

One of the top 10 websites in Poland - nk.pl - does not work in Firefox 9. It works fine until you log in and then displays a blank page. Already has been picked by press: http://technologie.gazeta.pl/internet/1,104530,10856849,Nasza_Klasa_nie_dziala_na_Firefoksie_9.html
Severity: normal → critical
ok, seems that the bug is in the nk.pl code, not in Firefox 9, according to someone who debugged it: http://forum.pcformat.pl/Firefox-9-czasami-wczytuje-nk-pl-a-czasami-biala-pusta-strona-Co-robic-t?pid=2603412#pid2603412 translation: " the blank page on Fx9 is the result of code in http://0.s-nk.pl/script/packs/base:d06f Currently, the code is: Code: delete Element; and then Code: var Element = new Native({ name: "Element", legacy: window.Element, ... They create a new variable Element with param |legacy: window.Element| and in function |var Native = function (l) {| they're trying to get the value of l.legacy.prototype which is not available anymore because in |new Native({| the assigned value is a refernece to an |window.Element| which has been de-referenced in |delete Element;|. In order to make nk.pl work in Fx9 you just need to comment out the |delete Element;| line. I tested it with charles proxy (debugged http). I did send the info to the website admin." ==================================================================== So if it's not a bug in Fx9, then this bug is evang., not technical. I'll try to reach out to nk.pl tomorrow in order to see where they are on this. Two things we can try to learn from this: 1) What happened that we didn't catch this earlier? I'm pretty sure that the bug was visible for weeks on Beta/Aurora/Nightly and we do have a significant sample of users on those channels in Poland. 2) Did we make a conscious change in our JS engine that made this code work differently in Fx9 than in Fx8? If so, is it documented?
Site uses MooTools Core 1.2.4 and MooTools More 1.2.4.4. The script that pcformat forum member talks contains the MooTools lib.
Why would anyone want to try to |delete Element|?
Assignee: nobody → polish
Component: General → Polish
Product: Firefox → Tech Evangelism
QA Contact: general → polish
I can now confirm that removing the |delete Element;| line makes the site work.
Can someone find a regression range ? This still seems to work with other browsers and they either get different code or we are doing something different.
Yes, I'm taking care of the regression range.
http://1.s-nk.pl/script/packs/head:7138 contains "navigator.taintEnabled" for browser detection
Blocks: 679971
taintEnabled removal is in that regression range pushlog.
and this taintEnabled browser detection makes nk.pl think Firefox 9 is Webkit 525.
> http://1.s-nk.pl/script/packs/head:7138 Is this script from MooTools?
Spoofing taintEnabled by e.g. adding: navigator.taintEnabled = true; to nk.pl code makes it work again in Firefox 9. So indeed, taintEnabled is what it relies on.
(In reply to j.j. from comment #11) > > http://1.s-nk.pl/script/packs/head:7138 > Is this script from MooTools? No, this defines an "nk" object and looks like nk.pl's own code.
MooTools are innocent here. The combination of taintEnabled-based browser detection, the "delete Element" stuff nk.pl added to the file MooTools are concatenated with and Webkit codepaths in their code is the reason for why it fails.
Has anybody tried to contact them? (Marek, Zbigniew?) If not, I'll sent them an e-mail later this morning using my mozilla.com address.
The pcformat forum user contacted them with his findings, fwiw. I think it'd be still a good idea to debug the codepaths we're getting into by being mistakenly identified as Webkit. Unfortunately, I won't be able to look deeper into this until before this evening CET (day job + Christmas preparations).
Marek. Are you able to find a contact e-mail on their site? So that I can send an email from my mozilla.com address.
E-mail sent (also via their online contact form). I give the link to this bug in it.
(In reply to Marek Stępień :marcoos from comment #16) > I think it'd be still a good idea to debug the codepaths we're getting into > by being mistakenly identified as Webkit. Why? Changing the browser detection to not rely on "taintEnabled()" in http://1.s-nk.pl/script/packs/head:7138 should not be hard. Anything else is secondary now.
Our friends at LewisPR who represent Mozilla in Poland on the public relations site, reached out to NK. NK guys say they have the fix ready, they're testing it now and it should be live later today.
Can we get QA team to look at their data from beta/aurora/nightly channels and see why this has not popped up earlier? It sounds like we should be able to catch such a bug much, much earlier (nk.pl is on the level of facebook.com in Poland in terms of users).
Maybe the taintEnabled-based detection wasn't there for too long? That's just a guess, though.
No, I think I saw blank nk.pl on nightly like a month or two ago so it seems that we should be getting bug reports on that from our test users for quite a some time. I'm wondering if we were.
so, it's the third top site according to input.mozilla.com for Fx9 - http://input.mozilla.com/en-US/sites?product=firefox&version=9.0a2 . If we could get the numbers per region/locale then the nk.pl would stand out clearly (all reports from one country).
nk.pl seems to be working now. They apparently removed |delete Element|, but still use taintEnabled to detect browsers, so Firefox 9 is still treated as a Webkit browser.
After a few minutes of clicking through some nk.pl pages I don't see anything obviously breaking, but the fact that we're still being treated as Webkit might not be perfect and something less obvious might still be broken there.
yeah, marking as fxd for now. Thanks everyone for help :)
Status: NEW → RESOLVED
Closed: 14 years ago
Resolution: --- → FIXED
Hello, (In reply to Marek Stępień :marcoos from comment #27) > nk.pl seems to be working now. They apparently removed |delete Element|, but > still use taintEnabled to detect browsers, so Firefox 9 is still treated as > a Webkit browser. Yes, we've fixed this problem today. We will deal with the rest of the issues shortly Thanks for your commitment and analysis!
Marek, please read the above comments regarding using taintEnabled for browser sniffing. It's still wrong and you treat Firefox 9 as a Webkit browser.
Status: RESOLVED → UNCONFIRMED
Ever confirmed: false
Resolution: FIXED → ---
Status: UNCONFIRMED → RESOLVED
Closed: 14 years ago14 years ago
Resolution: --- → FIXED
Marek, thanks for contacting us here. As marcoos pointed out, your code for browser detection is still affected by the change from bug 679971. I'm not sure if it's because of MooTools version that you use or is it your custom code, but might be worth fixing as you're at it :)
(In reply to Zbigniew Braniecki [:gandalf] from comment #24) > No, I think I saw blank nk.pl on nightly like a month or two ago so it seems > that we should be getting bug reports on that from our test users for quite > a some time. I'm wondering if we were. Bug 681692
Product: Tech Evangelism → Tech Evangelism Graveyard
You need to log in before you can comment on or make changes to this bug.