https://bugs.winehq.org/show_bug.cgi?id=56717
--- Comment #2 from Nikolay Sivov bunglehead@gmail.com --- According to my testing, returned collections are not automatically updated when fonts are installed or removed. Instead next call to GetSystemFontCollection() returns a new instance.
What we can do is to get rid of detach-on-release thing in collection_Release(), keep created collections as factory members, and check for last write time of the Fonts registry key that we use to fill the paths list. This should give close enough behavior.
Later to implement expiration events, we can add change notification handler for the same registry key, and signal all created system collections events (could be done lazily, only need to create events when GetExpirationEvent() is called).