Bugs & Fixes: Unexpected hassles with OS X 10.6.3's unexpected quits
In addition to the bug fixes and security updates in the just-released Mac OS X 10.6.3 update, Apple cites a new feature affecting unexpected quit dialogs: “Mac OS X 10.6.3 can automatically collect diagnostic and usage information from your Mac and send it to Apple for analysis.”
Prior versions of Mac OS X could already collect diagnostic information after a crash. What is new is that Mac OS X 10.6.3 includes the anonymous “collection of usage information (for example, data about how you use Apple and third-party software, hardware, and services).” Unfortunately, in making this addition, Apple also managed to partially break how the relevant dialogs work.
I’m not sure what it is with Apple and unexpected quit dialogs. It would seem to be a relatively simple matter to make these dialogs easy to navigate and work as expected. Apparently, it’s not. Apple has added confusion and a bug to a feature that has a long history of being less than crystal clear (as I previously covered in a Mac Observer article).
Unexpected quit dialog confusion
After an unexpected quit, a dialog typically appears with three options: Ignore, Reopen and Report (shown below).
Click Report, and yet another dialog pops up, with another trio of options: Show Details, Don’t Send, and Send to Apple (shown below).
Click Send to Apple, and a sheet drops down from which you can select to Agree or Disagree to send the relevant diagnostic and usage information to Apple (shown below).
Whatever choice you make, you can also enable or disable a “Don’t ask me again” checkbox. It is enabled by default. It is this checkbox option that is the focus of our concern. If you leave it enabled, the next time an unexpected quit occurs and you click Send to Apple, the Agree/Disagree sheet no longer drops down (exactly as implied by “Don’t ask me again”).
But suppose you now change your mind; perhaps you want to shift from Agree to Disagree. How can you do this if the sheet needed to make the change no longer drops down?
The answer is to launch Console and select the Preferences menu item. In the window that opens (shown on the right), there will be a checkbox to “Automatically send anonymous and diagnostic usage data to Apple.” If you disable this option, the Agree/Disagree sheet should reappear the next time you have an unexpected quit.
At least that’s the way it’s supposed to work. The problem is, at least for me, the option remained grayed out and unmodifiable. This meant there was no way I could get the Agree/Disagree sheet to drop down again—and thus no way to change my prior choice.
Note: In Mac OS X 10.6.2, Console’s Preferences instead offers a Reset button for Diagnostic Reporting. This button provides the same basic function as the “Automatically send…” checkbox item in 10.6.3. I never had any problem getting Reset to work as intended.
The “SubmitDiagInfo” plist work-around
One solution is to disable the “Don’t ask me again” checkbox each time. However, after a bit of detective work, I found a work-around that succeeds even if you selected “Don’t ask me again.”
There is a .plist file that determines both whether the Console checkbox is enabled and whether the Agree/Disagree sheet drops down. It’s called com.apple.SubmitDiagInfo.###,plist (where ### represents a long string of hexcode unique to your computer). You’ll find the .plist file in the Library/Preferences/ByHost folder of your Home directory. If you delete this file, the Agree/Disagree sheet will reappear the next time an unexpected quit occurs.
While this allows you to change your prior selection, it is not a permanent fix. The checkbox in Console’s Preferences will likely still be grayed out should you later change your mind again. However, with more detective work, I figured out exactly what seems to be go wrong.
If you open the .plist file in Property List Editor, you’ll find two similar Boolean properties: AutoSubmit and AutoSubmitV2. (The latter is a new property in 10.6.3.)
AutoSubmit appears to determine whether or not the Console checkbox option can be modified when appropriate. AutoSubmitV2 appears to determine whether or not the Agree/Disagree sheet drops down. Ideally, the values for these two properties should match. Unfortunately, this is not always the case. What can happen, for example, is that AutoSubmitV2 is enabled but AutoSubmit is not. This will lead to the above described situation where the sheet does not drop down but the Console option to bring it back is not selectable.
The bottom line is that there was no way I could both enable “Don’t ask me again” and prevent the symptom from returning. For now, if you find yourself in this same boat, your only choices are either to use the .plist file work-around or hope for a fix in Mac OS X 10.6.4.
The dialogs’ user interface
Even ignoring this bug, the unexpected quit dialogs’ user interface could use some tweaking.
For example, you can choose Ignore from the first dialog. If so, no data are sent to Apple. So far, so good.
If you instead select Report, you can click Don’t Send from the second dialog that appears. This too means that no data are sent to Apple (although if you really knew you didn’t want to send, why bother to select Report instead of Ignore?).
If you persist and choose Send to Apple, you get the option to Disagree (which, for a third time, means that your data will not be sent to Apple, even though you just selected to send the data).
This all seems a bit redundant and confusing. Couldn’t it be simplified—perhaps by offering an initial choice of the three options listed in the relevant Apple support article: Automatic Reporting, No Reporting and Ask Each Time?