Revision: 6307
Author: ek.kato
Date: Tue Apr 6 21:00:03 2010
Log: * uim/intl.c
- (intl_textdomain) : Avoid crash when --disable-nls.
- (intl_bindtextdomain) : Ditto.
* test/test-intl.scm (test-gettext) : Support --disable-nls.
* test/i18n/test-language.scm : Ditto.
http://code.google.com/p/uim/source/detail?r=6307
Modified:
/trunk/test/i18n/test-language.scm
/trunk/test/test-intl.scm
/trunk/uim/intl.c
=======================================
--- /trunk/test/i18n/test-language.scm Sun Apr 4 20:35:54 2010
+++ /trunk/test/i18n/test-language.scm Tue Apr 6 21:00:03 2010
@@ -53,11 +53,11 @@
(uim-test-with-environment-variables
'(("LC_ALL" . "ja_JP.UTF-8"))
uim-test-setup)
- (assert-uim-equal "日本語"
+ (assert-uim-equal (if (provided? "nls") "日本語" "Japanese")
'(_ (lang-code->lang-name "ja")))
- (assert-uim-equal "英語"
+ (assert-uim-equal (if (provided? "nls") "英語" "English")
'(_ (lang-code->lang-name "en")))
- (assert-uim-equal "中国語"
+ (assert-uim-equal (if (provided? "nls") "中国語" "Chinese")
'(_ (lang-code->lang-name "zh")))
#f)
=======================================
--- /trunk/test/test-intl.scm Sun Apr 4 20:35:54 2010
+++ /trunk/test/test-intl.scm Tue Apr 6 21:00:03 2010
@@ -98,11 +98,11 @@
(define (test-gettext)
(assert-uim-equal msgid `(gettext ,msgid))
(assert-uim-equal locale-dir `(bindtextdomain ,domain ,locale-dir))
- (assert-uim-equal locale-dir `(bindtextdomain ,domain #f))
- (assert-uim-equal msgstr `(dgettext ,domain ,msgid))
+ (assert-uim-equal (if (provided? "nls") locale-dir "")
`(bindtextdomain ,domain #f))
+ (assert-uim-equal (if (provided? "nls") msgstr msgid)
`(dgettext ,domain ,msgid))
(assert-uim-equal domain `(textdomain ,domain))
- (assert-uim-equal domain `(textdomain #f))
- (assert-uim-equal msgstr `(gettext ,msgid))
+ (assert-uim-equal (if (provided? "nls") domain "") `(textdomain #f))
+ (assert-uim-equal (if (provided? "nls") msgstr msgid) `(gettext ,msgid))
#f)
(provide "test/test-intl")
=======================================
--- /trunk/uim/intl.c Sun Apr 4 20:35:54 2010
+++ /trunk/uim/intl.c Tue Apr 6 21:00:03 2010
@@ -64,7 +64,11 @@
const char *new_domain;
if (FALSEP(domainname)) {
+#if ENABLE_NLS
new_domain = textdomain(NULL);
+#else
+ new_domain = "";
+#endif
} else {
new_domain = textdomain(REFER_C_STR(domainname));
}
@@ -80,7 +84,11 @@
domain = REFER_C_STR(domainname);
if (FALSEP(dirname)) {
+#if ENABLE_NLS
new_dir = bindtextdomain(domain, NULL);
+#else
+ new_dir = "";
+#endif
} else {
new_dir = bindtextdomain(domain, REFER_C_STR(dirname));
}
--
To unsubscribe, reply using "remove me" as the subject.