Forward port of issue #21877 to 2.4.x.