• Greg Spencer's avatar
    Fix KeySet<T> (and LogicalKeySet, PhysicalKeySet) hashCode calculation (#38936) · 055c5489
    Greg Spencer authored
    This fixes the hashCode calculation for KeySet<T> so that it doesn't depend on the insertion order of the keys in the set.
    
    The fix involves switching from Set<T> to HashSet<T> internally, so that the iteration order is stable around the hash values of the inserted keys, and not the insertion order. This matters when hashList is called in KeySet<T>.hashCode to build the hash value of the contents of the internal set.
    
    Fixes #38919
    055c5489
shortcuts_test.dart 9.69 KB