[Git][wine/wine][master] 4 commits: scrrun/tests: Add tests for Empty dictionary keys.
Alexandre Julliard pushed to branch master at wine / wine Commits: 2006f601 by Francis De Brabandere at 2026-06-02T10:33:14+02:00 scrrun/tests: Add tests for Empty dictionary keys. An Empty key matches the zero/default value of the other key's type: any numeric zero or the empty string, but not a non-zero number, a non-empty string, or Null. - - - - - 4f822c81 by Francis De Brabandere at 2026-06-02T10:33:16+02:00 scrrun/dictionary: Match Empty keys against zero-valued and empty-string keys. An uninitialized VBScript variable is Empty, so scripts can end up using Empty as a dictionary key alongside a numeric 0 or "". Native treats those as the same key; Wine kept Empty distinct from every other type. Match an Empty key against any numeric zero or the empty string, while keeping it distinct from Null and from non-zero/non-empty keys. - - - - - 0456d46f by Francis De Brabandere at 2026-06-02T10:33:18+02:00 scrrun/tests: Add tests for Boolean dictionary keys. A Boolean key hashes by its numeric value and matches the equal numeric value across types (True is -1, False is 0); False is the zero/default value, so it matches an Empty key. A script can use a comparison result (a Boolean) as the key to Exists and Remove, which must not fail. - - - - - e426bd4e by Francis De Brabandere at 2026-06-02T10:33:20+02:00 scrrun/dictionary: Match native key semantics for Boolean keys. Boolean keys were rejected outright by the hash function, returning E_NOTIMPL, so Exists and Remove failed for them. An uninitialized or comparison-result VBScript value can be a Boolean, so a script can end up using one as a dictionary key. Hash it by its numeric value like the other numeric types, so True and False match the equal numeric value across types (and False matches an Empty key). - - - - - 2 changed files: - dlls/scrrun/dictionary.c - dlls/scrrun/tests/dictionary.c View it on GitLab: https://gitlab.winehq.org/wine/wine/-/compare/9bf5764a7a100f44fdf3cb11bcdf17... -- View it on GitLab: https://gitlab.winehq.org/wine/wine/-/compare/9bf5764a7a100f44fdf3cb11bcdf17... You're receiving this email because of your account on gitlab.winehq.org. Manage all notifications: https://gitlab.winehq.org/-/profile/notifications | Help: https://gitlab.winehq.org/help
participants (1)
-
Alexandre Julliard (@julliard)