Merge from emacs-23; up to 2010-06-11T14:39:54Z!cyd@stupidchicken.com.