In particular the SpriteCache class can call this function with both iterators pointing to the same item (when trying to move an item to the start of thr MRU list, and it is already the first item).