Bug 1009569 - Promise then() must be called on a clean stack. r=bz