X-Git-Url: https://git.dlugolecki.net.pl/?a=blobdiff_plain;f=utf8%2Futf8-locale.c;h=9ede577d17cc6c78caf46cbfad4210e04522fec6;hb=dbe61389396a4fb8ee50f6a5bd5fe4219ed43290;hp=115c66ee7312e66bec78e797abaa4f2cc95bc9e2;hpb=fb42f455ed7341c3de5e3ac2103d7929461f14d9;p=gedcom-parse.git diff --git a/utf8/utf8-locale.c b/utf8/utf8-locale.c index 115c66e..9ede577 100644 --- a/utf8/utf8-locale.c +++ b/utf8/utf8-locale.c @@ -16,11 +16,6 @@ static convert_t locale_conv = NULL; -void convert_set_unknown(const char* unknown) -{ - conversion_set_unknown(locale_conv, unknown); -} - void close_conversion_contexts() { cleanup_utf8_conversion(locale_conv); @@ -29,7 +24,7 @@ void close_conversion_contexts() int open_conversion_contexts() { assert (locale_conv == NULL); - locale_conv = initialize_utf8_conversion(locale_charset()); + locale_conv = initialize_utf8_conversion(locale_charset(), 0); if (locale_conv) { atexit(close_conversion_contexts); @@ -40,6 +35,13 @@ int open_conversion_contexts() } } +void convert_set_unknown(const char* unknown) +{ + if (!locale_conv) + open_conversion_contexts(); + conversion_set_unknown(locale_conv, unknown); +} + char* convert_utf8_to_locale(const char* input, int *conv_fails) { if (!locale_conv)