|
a/src/common/rclconfig.cpp |
|
b/src/common/rclconfig.cpp |
|
... |
|
... |
318 |
//
|
318 |
//
|
319 |
// For filenames, same thing except that we do not use the config file value
|
319 |
// For filenames, same thing except that we do not use the config file value
|
320 |
// (only the locale).
|
320 |
// (only the locale).
|
321 |
const string& RclConfig::getDefCharset(bool filename)
|
321 |
const string& RclConfig::getDefCharset(bool filename)
|
322 |
{
|
322 |
{
|
323 |
// This can't change once computed inside a process.
|
323 |
// This can't change once computed inside a process. It would be
|
|
|
324 |
// nicer to move this to a static class initializer to avoid
|
|
|
325 |
// possible threading issues but this doesn't work (tried) as
|
|
|
326 |
// things would not be ready. In practise we make sure that this
|
|
|
327 |
// is called from the main thread at once, by calling
|
|
|
328 |
// getDefCharset from recollinit
|
324 |
static string localecharset;
|
329 |
static string localecharset;
|
325 |
if (localecharset.empty()) {
|
330 |
if (localecharset.empty()) {
|
326 |
const char *cp;
|
331 |
const char *cp;
|
327 |
cp = nl_langinfo(CODESET);
|
332 |
cp = nl_langinfo(CODESET);
|
328 |
// We don't keep US-ASCII. It's better to use a superset
|
333 |
// We don't keep US-ASCII. It's better to use a superset
|