Forward port of issue #21312 to 2.2.7.