diff options
author | Andrew Bartlett <abartlet@samba.org> | 2011-06-22 10:40:26 +1000 |
---|---|---|
committer | Andrew Bartlett <abartlet@samba.org> | 2011-06-23 13:47:27 +0200 |
commit | 4d2c56c4b1a4f846b44f24c6f73e1b95fdf3a9bb (patch) | |
tree | 9bb31b76650a6cbe558bfa2d357396220fc94abc | |
parent | fb3d5ade9d3f935a69834aaee0046a54dbf38ca1 (diff) | |
download | samba-4d2c56c4b1a4f846b44f24c6f73e1b95fdf3a9bb.tar.gz samba-4d2c56c4b1a4f846b44f24c6f73e1b95fdf3a9bb.tar.bz2 samba-4d2c56c4b1a4f846b44f24c6f73e1b95fdf3a9bb.zip |
s3-net: Bind our gettext results to 'unix charset'
This ensures that the translations and any embedded strings are in the
same charset. It won't be the one from the user's locale (we no
longer auto-detect that), but it will be self-consistent.
Thanks to Steve Langasek for pointing this function out!
Andrew Bartlett
-rw-r--r-- | source3/configure.in | 2 | ||||
-rw-r--r-- | source3/utils/net.c | 10 | ||||
-rw-r--r-- | source3/wscript | 2 |
3 files changed, 12 insertions, 2 deletions
diff --git a/source3/configure.in b/source3/configure.in index d0f841f017..814c7356d2 100644 --- a/source3/configure.in +++ b/source3/configure.in @@ -1100,7 +1100,7 @@ AC_CHECK_HEADERS(sys/mman.h) # setbuffer, shmget, shm_open are needed for smbtorture AC_CHECK_FUNCS(shmget shm_open) AC_CHECK_FUNCS(gettext dgettext) -AC_CHECK_FUNCS(bindtextdomain textdomain) +AC_CHECK_FUNCS(bindtextdomain textdomain bind_textdomain_codeset) AC_CHECK_FUNCS(strupr) # Find a method of generating a stack trace diff --git a/source3/utils/net.c b/source3/utils/net.c index 0d79d6e6d2..95b937444e 100644 --- a/source3/utils/net.c +++ b/source3/utils/net.c @@ -880,6 +880,16 @@ static struct functable net_func[] = { lp_load(get_dyn_CONFIGFILE(), true, false, false, true); +#if defined(HAVE_BIND_TEXTDOMAIN_CODESET) + /* Bind our gettext results to 'unix charset' + + This ensures that the translations and any embedded strings are in the + same charset. It won't be the one from the user's locale (we no + longer auto-detect that), but it will be self-consistent. + */ + bind_textdomain_codeset(MODULE_NAME, lp_unix_charset()); +#endif + argv_new = (const char **)poptGetArgs(pc); argc_new = argc; diff --git a/source3/wscript b/source3/wscript index a3a14f0607..d88faa2104 100644 --- a/source3/wscript +++ b/source3/wscript @@ -138,7 +138,7 @@ def configure(conf): conf.CHECK_FUNCS('memalign posix_memalign hstrerror') conf.CHECK_FUNCS('shmget') conf.CHECK_FUNCS_IN('shm_open', 'rt', checklibc=True) - conf.CHECK_FUNCS('gettext dgettext bindtextdomain textdomain') + conf.CHECK_FUNCS('gettext dgettext bindtextdomain textdomain bind_textdomain_codeset') #FIXME: for some reason this one still fails conf.CHECK_FUNCS_IN('yp_get_default_domain', 'nsl') conf.CHECK_FUNCS_IN('dn_expand _dn_expand __dn_expand', 'resolv') |