Forward port of issue #20996 to 2.2.7.