modified patch v0.1 from Bug 664147 - can't build pass.