I bet 99.9% of browser freezes are caused by Flash.
I wonder how much money and development time, that could've been spent doing cool stuff, is used up by companies trying to workaround and minimise the impact of Adobe's bugs in Flash and Reader? 
I know that I personally spent several days over the last couple of weeks just to get Adobe's PDF preview handler to work properly under x64, and actually do things like tab-cycling (not like it's one of the five or so things that are explicitly part of the preview handler API contract... oh wait it is but Adobe can't read API docs!), oh and unimportant things like, you know, actually painting their goddamn window after it scrolls.
I guess it became a fun puzzle game, trying to work out how to trick their PoS code into behaving properly, and I got to write my first keyboard hook*, but I kinda wish Adobe had done their job properly in the first place so that I could have spent my time doing something new instead of cleaning up a massive-but-useless company's mess.
(*Whose bright idea was it for the Windows hook API to not pass the full MSG structure to hooks and, in particular, not pass any information about which window the incoming message was sent to? That's on top of it having no user-data argument... You just hook a thread (which could be pumping messages for 50 windows for all you know; it's not my source, else I wouldn't need to hook it) and then your function, running in a completely foreign process, just gets sent the lParam and wParam arguments, essentially. From those alone, it seems, you have to somehow determine the context yourself. Crazy. Unless I missed something when using the API for the first time... OTOH I was kinda amazed that it did work in the end and I could intercept those tab keys. Now I look forward to the joy of certain stupid anti-virus tools calling my program a keylogger because it dares to intercept the tab keys sent to a child window that happens to be owned by a separate process.
I put in a config option so people can disable the hooks, just in case.)