Skip to content
  • LRN's avatar
    W32 - don't use gettext & gcov during gettext init · 75fa8c2a
    LRN authored
    Non-representable characters during UTF16->locale conversion
    will cause gcov code to return an error, for which it will try
    to use gettext, so that the error message is localized.
    
    If such call is made while gettext is being initialized
    (there's a g_once_init_enter up the stack), the thread will hang forever.
    
    To solve this, use W32 API to do the UTF16->locale conversion
    and don't use gettext when it returns an error.
    
    Also optimize g_win32_locale_filename_from_utf8() a bit,
    as we need more UTF16 and less UTF8 now.
    
    https://bugzilla.gnome.org/show_bug.cgi?id=784579
    75fa8c2a