Forward port of issue #21743 to 2.3.x.