I'm using Windows 8 Developer Preview. Nightly builds 20111012 and later just won't start. The process appears in the Task Manager for a few seconds, then disappears, but application window never shows up. Launching Nightly with Shift button doesn't help. Last working Nightly build was 20111011.

Created attachment 567368[details][diff][review]
Patch (v1)
It seems like Windows 8's LdrLoadDll has been changed to accept more values inside the filePath argument. The cause of the crash is that we're passed a value of 1 with that function the first time when we're trying to load user32.dll, and then we pass that to SearchPathW which causes a crash.
This isn't technically a regression from bug 677797 in the sense that on Windows 8, we would still crash without that patch if we're trying to load a DLL which has some of its versions blacklisted. Therefore I think we need to take this patch (well, it's equivalent which would apply on Aurora and Beta) on those branches as well.

Comment on attachment 567368[details][diff][review]
Patch (v1)
IsBadStringPtr is almost never the value we want to be using. I suggest instead, if we don't actually have documentation or understanding of the problem, to use the check
(intptr_t(filePath) < 1024))

I tested to see if this bug is verified fixed and got the following result for Mozilla Central:
Verified Fixed - Mozilla/5.0 (Windows NT 6.2; rv:10.0a1) Gecko/20111019 Firefox/10.0a1
-> I tested on the Windows 8 Developer Preview
-> The Nightly build before the landing of the patch doesn't load as noted in the Description
-> The first Nightly build (19 October) after the landing of the patch loads as expected
> Created attachment 567369[details][diff][review] [diff] [details] [review]
> Patch for aurora and beta
Are these patches landed yet? If not, the status of this bug will be changed to verified when testing on this branches is done, as well.

(In reply to Kyle Huey [:khuey] (khuey@mozilla.com) from comment #19)
> Why do we need this on Aurora and Beta? Windows 8 isn't a supported
> platform for Gecko 8 or 9.
To get more testing from the users of these branches on windows 8 ?

(In reply to Kyle Huey [:khuey] (khuey@mozilla.com) from comment #19)
> Why do we need this on Aurora and Beta? Windows 8 isn't a supported
> platform for Gecko 8 or 9.
Technically it's not a supported platform for Gecko 10 either! But without this, if there's a DLL on a Windows 8 system which we blacklist, we'll just crash. I think that if we can do something safe to fix that problem (which is what this patch does), we should take it. But I'll leave it to drivers in order to make a decision about this.

---------------------------------[ Triage Comment ]---------------------------------
Windows 8 is pre-release and isn't supported by any shipping version of Firefox, therefore we will not track it explicitly.
Of course, the bug is already fixed but if for some reason it becomes unfixed we don't need visibility because of our lack of support (and I bet Asa and Robert Strong's team are all over this).

Note

You need to
log in
before you can comment on or make changes to this bug.