- renamed *.po message files to *.msg
authorAndrew Tridgell <tridge@samba.org>
Mon, 15 Oct 2001 08:10:07 +0000 (08:10 +0000)
committerAndrew Tridgell <tridge@samba.org>
Mon, 15 Oct 2001 08:10:07 +0000 (08:10 +0000)
- fixed minor bug in lang_tdb.c

the msg files are still in a po/ directory, but unfortunately that is
not easy to fix given the terrible handling of directories in CVS.

source/intl/lang_tdb.c
source/po/en.msg [moved from source/po/en.po with 100% similarity]
source/po/ja.msg [moved from source/po/ja.po with 100% similarity]
source/po/pl.msg [moved from source/po/pl.po with 100% similarity]
source/po/tr.msg [moved from source/po/tr.po with 100% similarity]
source/po/zh_CN.msg [moved from source/po/zh_CN.po with 100% similarity]

index 8d514c5e7d47627e4f4a20fc9ebcf4084da6623a..38bdcdd132c530d19bdfd879d6ca0b84322362e7 100644 (file)
@@ -27,15 +27,15 @@ static TDB_CONTEXT *tdb;
 static char *current_lang;
 
 
-/* load a po file into the tdb */
-static BOOL load_po(const char *po_file)
+/* load a msg file into the tdb */
+static BOOL load_msg(const char *msg_file)
 {
        char **lines;
        int num_lines, i;
        char *msgid, *msgstr;
        TDB_DATA key, data;
 
-       lines = file_lines_load(po_file, &num_lines);
+       lines = file_lines_load(msg_file, &num_lines);
 
        if (!lines) {
                return False;
@@ -45,12 +45,14 @@ static BOOL load_po(const char *po_file)
 
        /* wipe the db */
        tdb_traverse(tdb, (tdb_traverse_func) tdb_delete, NULL);
+
+       msgid = NULL;
        
        for (i=0;i<num_lines;i++) {
                if (strncmp(lines[i], "msgid \"", 7) == 0) {
                        msgid = lines[i] + 7;
                }
-               if (strncmp(lines[i], "msgstr \"", 8) == 0) {
+               if (msgid && strncmp(lines[i], "msgstr \"", 8) == 0) {
                        msgstr = lines[i] + 8;
                        trim_string(msgid, NULL, "\"");
                        trim_string(msgstr, NULL, "\"");
@@ -62,6 +64,7 @@ static BOOL load_po(const char *po_file)
                        data.dptr = msgstr;
                        data.dsize = strlen(msgstr)+1;
                        tdb_store(tdb, key, data, 0);
+                       msgid = NULL;
                }
        }
 
@@ -93,7 +96,7 @@ static char *get_lang(void)
 BOOL lang_tdb_init(const char *lang)
 {
        char *path = NULL;
-       char *po_path = NULL;
+       char *msg_path = NULL;
        struct stat st;
        static int initialised;
        time_t loadtime;
@@ -119,10 +122,10 @@ BOOL lang_tdb_init(const char *lang)
        /* if no lang then we don't translate */
        if (!lang) return True;
 
-       asprintf(&po_path, "%s.po", lib_path(lang));
-       if (stat(po_path, &st) != 0) {
-               /* the po file isn't available */
-               free(po_path);
+       asprintf(&msg_path, "%s.msg", lib_path(lang));
+       if (stat(msg_path, &st) != 0) {
+               /* the msg file isn't available */
+               free(msg_path);
                return False;
        }
        
@@ -133,7 +136,7 @@ BOOL lang_tdb_init(const char *lang)
        if (!tdb) {
                tdb = tdb_open_log(path, 0, TDB_DEFAULT, O_RDONLY, 0);
                free(path);
-               free(po_path);
+               free(msg_path);
                if (!tdb) return False;
                current_lang = strdup(lang);
                return True;
@@ -144,10 +147,10 @@ BOOL lang_tdb_init(const char *lang)
        loadtime = tdb_fetch_int(tdb, "/LOADTIME/");
 
        if (loadtime == -1 || loadtime < st.st_mtime) {
-               load_po(po_path);
+               load_msg(msg_path);
                tdb_store_int(tdb, "/LOADTIME/", (int)time(NULL));
        }
-       free(po_path);
+       free(msg_path);
 
        current_lang = strdup(lang);
 
similarity index 100%
rename from source/po/en.po
rename to source/po/en.msg
similarity index 100%
rename from source/po/ja.po
rename to source/po/ja.msg
similarity index 100%
rename from source/po/pl.po
rename to source/po/pl.msg
similarity index 100%
rename from source/po/tr.po
rename to source/po/tr.msg
similarity index 100%
rename from source/po/zh_CN.po
rename to source/po/zh_CN.msg