Overall, I have been very happy with Vista on my new laptop. It has been much more stable than my old Windows XP-based laptop. (And no, Microsoft didn’t pay me to say that.) However, I have run across one rather nasty problem with XULRunner-based apps (or at least Firefox and Thunderbird).
Yesterday, I had to reboot my computer after installing a program. All seemed normal at first as I launched the programs that I start manually at boot (Mozilla Firefox, Mozilla Thunderbird, FeedDemon, Winamp, and Pidgin). After a couple of minutes, I noticed that Firefox had not started, even though the rest of the programs had been running for almost a minute. Normally, Firefox would start up at just about the same time as the other programs. I clicked the Firefox icon again since I figured that I had missed when I clicked before or perhaps the click had not registered with Windows for some reason or another. I waited a couple of minutes, but still nothing had happened.
I opened up Process Explorer and looked at the task list to see if maybe the program had loaded, but just not showed its window yet. I quickly found firefox.exe in the list. I then noticed that it was on the list again. Normally, Firefox prevents multiple processes of itself from being opened at the same time. I looked at their memory usage and noticed that one had normal memory usage for a new window (~35MB) and the other seemed to be stuck at about 5MB, which is the amount of memory used by Firefox when it first opens before it starts loading anything.
I figured that I would stop both firefox.exe processes and start a new one and that would be it. I closed the 5MB Firefox process without issue. I then told Process Explorer to end the other Firefox process. I looked at the process list again and noticed that firefox.exe was still there, seemingly untouched. I tried many more times to kill the Firefox process, all unsuccessful, eventually being forced to restart the computer.
After restarting the computer, I opened up my normal set of applications and was happy to see that Firefox started normally. I then noticed that Thunderbird had failed to start. A quick look at Process Explorer revealed to me that Thunderbird was having the same problem as Firefox was having. It appeared to be time to Google for the answer.
I eventually ran across a solution on the mozillaZine forums posted by nik.tech. It ends up that the problem lies in Vista’s new networking stack. To solve the problem, I just needed to reset the stack. To do this, I had to run three commands in an elevated command prompt:
netsh winsock reset catalog netsh int ip reset reset.log netsh int ipv6 reset reset.log
According to nik.tech, this issue should be solved in Vista SP1, even though it might not yet be fixed in Vista SP1 RC1. (While the problem is fixed, the fix currently causes Firefox to blue screen randomly while surfing the net.) I hope this is true or that Mozilla is able to work around this issue in Firefox 3.