Use GDateTime instead of gmtime()
This gets rid of all the complications with non-thread-safe and otherwise broken (32 bit time_t
on certain platforms) POSIX APIs. The additional heap allocation for the GDateTime
doesn't seem relevant in all these cases.
clockoverlay
and dwriteclockoverlay
(CC @seungha.yang) would be other candidates to switch but g_date_time_format()
only implements a subset of strftime()
and is locale independent, so this would be a behaviour change.
The registry/pluginloader also uses a time_t
for the mtime but that seems fine as that's the type how we get the mtime.