Merged from upstream v1.2.28