The bug
The clearCustomName() and hasDisplayName() methods in the ItemStack class are inconsistent with getDisplayName() as they ignore the LocName NBT Tag used for custom translated displaynames.
The clearCustomName() and hasDisplayName() methods in the ItemStack class are inconsistent with getDisplayName() as they ignore the LocName NBT Tag used for custom translated displaynames.
hasDisplayName()only checkingNameis what makesLocName-named items not render in italic (which is needed for e.g. villager treasure maps). I'm pretty sure that, as such, this is intended.