19 December 2010 - 11:33Tracking Down Flash Crashes

Over the last many months, flash has been crashing for me on any page with flash video when I browse away. This means flash crashes when clicking a link or typing in the location bar. Or probably worst when a site that has a flash intro it crashes when loading the main content of the site.

This seems to only affect the Flash Player 10 plugin on OS X, but it was still a bit tricky finding out what crash reports are related to this particular issue.

– There are many versions of the flash plugin

If a bug is reported with a crash signature like [@ FlashPlayer-10.6@0x4b4b39 ], watching the number of crashes for that signature go down may initially seem like something was fixed, but actually users are upgrading their version of flash and crashing at a different address. Additionally, it’s harder to see the actual number of crashes for this issue at a glance as the reports are spread across many entries.

– FlashPlayer-10.6 plugin version is missing

Adding to the issue of there being many versions, for some reason the version information for FlashPlayer-10.6 shows up in reports as 0.0.0.0. Fortunately there’s an additional debug identifier that is consistently reported for the same version of the plugin.

Below is a listing of some recent versions and debug ids:

10.2.151.49nov 303CDC6F1339C791580EC31A451724F0110
10.1.102.64nov 47F846A865E18B6E54DA2E5B46E7CF5B20
10.1.85.3sep 20392E898E2D7BCE8B02FFCE2287F7DF570
10.1.82.76aug 105295F1D9A734E9FDD5350646BF2615A40
10.1.53.64jun 1028AEE5D0CE3E55DB5AE5787143EC0F960

I gathered these by looking through Adobe’s security bulletins to find the date and version of the new release. With the release date, I could then search for crash reports from before the release and see which reports disappeared. Then from the reports that did disappear, I can record the debug identifier to be for the new version.

– Crash reports not being submitted

Another issue that has recently been fixed was that most people running into these plugin crashes had no option to send a crash report. This was because Firefox by default runs in 64-bit mode and was unable to create a report for 32-bit plugin crashes. This means the frequency of the crashes were massively under-reported and the sparse crash data made it harder to find relevant reports.

– Improving crash-stats triaging

For this particular case, I can think of a couple features that could have made tracking down flash crashes more efficient.

Because the crash signature kept changing from version to version, I had to inspect many crashes to see if the whole stack is similar to other stacks. For one set of crashes, I was looking for AnswerNPP_Destroy in frame #8 to identify the family of crashes. Being able to search in part of the stack could also make it easier for various component teams find relevant reports.

For another set of crashes, the crash reason was always EXC_BAD_ACCESS at address 0x44c. So in addition to being able to filter by crash signature, being able to search by reason and address could have avoided needing to click through many crash signature reports.

There’s a number of bugs filed for these flash crashes like bug 590955, bug 572134, and bug 617469. I’m still not sure if it’s an issue with OOPP or a bug in the plugin, so it’s hard to say if flash will stop crashing by a new Firefox beta release or a plugin update. But just as a heads up, getting the latest Flash Player 10.2(.151.49) beta or Firefox 4 beta8 won’t fix these crashes.

12 Comments | Tags: Development, Mozilla

12 November 2010 - 18:39Swipe Up for Top; Swipe Right for Tabs

Now that Firefox 4 Beta 7 [mozilla.com] is out, some people trying it out on their Macs are giving frowny faces to some behavior changes [input.mozilla.com]. (But others are 🙂 to find an easy way to view all their tabs.)

In particular, doing a 3-finger swipe upwards no longer brings you to the top of the page. Some people have pointed to about:config to change the preferences to switch back to the old behavior. But if that sounds too complex, you can just install an add-on to do the dirty work for you. Just click the following install link, and you’re ready to swipe! No need to restart.

Install Swipe Top [addons.mozilla.org]: Swipe up to scroll to the top of the page (and down to the end).

I’ve also made another related add-on that changes the default behavior of swiping right and left, so instead of going forwards and backwards in the current tab’s history, it’ll switch tabs.

Install Swipe Tabs [addons.mozilla.org]: Swipe right to switch to the next tab (and left to the previous).

For both these add-ons, you can install them and try them immediately without restarting Firefox. If you want to get to the original Panorama and navigation behavior, just hold the “command” key while swiping. Or you can just disable or uninstall the add-on to get the original behavior as well without restarting.

If you’re interested in how I wrote the add-ons, you can check out the source for Swipe Top [github.com] and Swipe Tabs [github.com].

2 Comments | Tags: Add-on, Mozilla

30 September 2010 - 15:29Instant Preview of Location Bar Suggestions

I’ve received a number of requests for getting Instant-like Search, so I’ve packaged it up for people to download. Part of the reason why I didn’t release earlier is that this restartless add-on requires the upcoming Firefox 4 Beta 7, so I was hoping to make it available when the beta was ready.

If you’re already on the bleeding edge running a Firefox nightly build [nightly.mozilla.org], you can install Instant Preview.

With this add-on, Firefox will start loading pages highlighted in the location bar suggestions in place of the current tab. This means you can type a letter and press Down to start viewing that page. From there you can press Return to make the preview turn into a persistent tab. Alternatively, you can press Esc to get rid of the preview if you just needed to glance at the page. So if you do end up selecting the page, it might already be done loading and ready for you to use! 🙂

This works even better if you install Speak Words, so that when you type a single letter, not only will the rest of the word get filled in, it’ll automatically highlight the first entry resulting in the page being loaded immediately. For now you’ll need to install both these restartless add-ons separately, but I’m working on a way to simplify this so you just need to install one to automatically get these new features.

Don’t forget to check out my Video Preview of Instant-like Search and install it!

23 Comments | Tags: Add-on, AwesomeBar, Labs, Mozilla, Search

23 September 2010 - 7:00Video Preview of Instant-like Search

Here’s a preview of an instant-like search add-on that I just hacked together in a few minutes. 🙂

Video formats: webm, ogv, mov

Transcript:

Let’s say I want to go to Planet Mozilla, so I start typing out “planet”, and before I even finish typing it out, the page has loaded over the current tab. This could be useful to take a quick peek at a page like xkcd, and then hit <esc> to return to where I left off.

Combining this with smart bookmark keywords, I can type “g” followed by some word, and it’s almost like Google Instant search. But this works for other search engines like Bing.. or even Wikipedia. As long as the site returns the page fast enough, it already feels pretty good.

16 Comments | Tags: Add-on, AwesomeBar, Google, Labs, Mozilla, Search