Forward port of issue #21880 to 2.4.x.