Skip to content

[th/prgname] use atomic pointers for g_prgname/g_application_name and add g_set_prgname_once()

Thomas Haller requested to merge th/prgname into main

No need for a GMutex for accessing the pointers g_prgname/g_application_name.

Also, some internal code (g_option_context_parse()/g_application_run()) will initialize g_set_prgname(), if it's not set yet. That check was racy and fix it by adding g_set_prgname_once().

Optimally, g_set_prgname_once() would be internal only, but then it could be used by g_application_run(). Hence it's public API.

Merge request reports