an infinite loop in rev 47154. This patch also adds a test to prevent the regression. Will backport to 2.4 and head later.