(why didn't this commit come from upstream?)