Cherrypick again.  Add test.