Forward port of issue #18329 to 2.2.7.