After I upgraded to Mac OS X 10.6.2, I had to step out for an appointment. When I returned to my Mac, its screens were black, other than the dreaded spinning pizza of death. I realized the screen saver had crashed, but had to shut the Mac down forcibly since no other method I tried would give me control back.
I quickly isolated the problem to the Slide Show screen saver that’s bundled with Mac OS X (see “Mac OS X 10.6.2 Addresses Myriad Bugs and Security Issues,” 9 November 2009). It’s used to display a slide show of pictures, either from a folder or from iPhoto. In the past, it has handled very large numbers of images with aplomb, which is necessary, since many thousands of images are necessary to prevent image-based screen savers from becoming boring.
After upgrading to 10.6.2, however, the Slide Show screen saver (tested via the preview in the Desktop & Screen Saver preference pane) took minutes to scan folders that it previously could scan in seconds. And with too many photos, the Slide Show screen saver would just hang, requiring a force quit of System Preferences. Folders containing a relatively small number of images worked fine. With no free time to investigate further, I just made sure the Slide Show screen saver wouldn’t be used.
Kudos to Ernst Mulder, who also experienced this and figured out a workaround that he posted on Apple’s Support Discussions forum (and thanks to TidBITS reader Judson Dunn for the pointer!). Ernst believes that the new version of Slide Show does a file-by-file scan of the available images (presumably for randomizing) instead of using a Spotlight search. As such, rebuilding the Spotlight index, reinstalling 10.6.2 using the Combo updater, and testing from a clean user account made no difference.
Then Ernst figured out that he could work around the problem by replacing a key component of the Slide Show screen saver package with one from 10.6.1. I’ve replicated his suggestion, and it does appear to work, though of course you need access to a Mac running 10.6.1 to be able to perform the fix. The file you need to replace is deeply nested, and you’ll need to authenticate in order to copy it into the new location. It is:
/System/Library/Frameworks/ScreenSaver.framework/Versions/A/Resources/Pictures Folder.saver/Contents/MacOS/Pictures Folder
Note that to look inside “Pictures Folder.saver” you must Control-click the file and choose Show Package Contents from the contextual menu that appears; then you can navigate the rest of the way down to the necessary “Pictures Folder” file. It’s probably worth making a backup of that file in 10.6.2 before replacing it with the file from 10.6.1, just in case.