Forward port of issue #21392 to 2.3.1.