SOURCES: poldek-both_langs.patch (NEW) - show Polish descriptions in the pl...
witekfl
witekfl at pld-linux.org
Tue Dec 9 21:59:51 CET 2008
Author: witekfl Date: Tue Dec 9 20:59:51 2008 GMT
Module: SOURCES Tag: HEAD
---- Log message:
- show Polish descriptions in the pl_PL locale.
---- Files affected:
SOURCES:
poldek-both_langs.patch (NONE -> 1.1) (NEW)
---- Diffs:
================================================================
Index: SOURCES/poldek-both_langs.patch
diff -u /dev/null SOURCES/poldek-both_langs.patch:1.1
--- /dev/null Tue Dec 9 21:59:51 2008
+++ SOURCES/poldek-both_langs.patch Tue Dec 9 21:59:45 2008
@@ -0,0 +1,60 @@
+--- poldek-0.30-cvs20080820.23/misc.c.old 2008-12-09 21:38:51.000000000 +0100
++++ poldek-0.30-cvs20080820.23/misc.c 2008-12-09 21:38:54.000000000 +0100
+@@ -646,6 +646,14 @@ static char *cut_country_code (const cha
+ return newlang;
+ }
+
++
++static inline void n_array_push_check_dup(tn_array *langs, char *value)
++{
++ if (n_array_bsearch(langs, value) == NULL)
++ n_array_push(langs, n_strdup(value));
++
++}
++
+ /*
+ * lang_match_avlangs:
+ *
+@@ -656,24 +664,36 @@ static char *cut_country_code (const cha
+ static inline void lang_match_avlangs(tn_array *avlangs, tn_array *r_langs,
+ const char *lang, int *has_C)
+ {
++ char lang_utf8[32];
+ char *cut = NULL;
+
+ /* first try */
+ if (n_array_bsearch(avlangs, lang)) {
+- if (strcmp(lang, "C") == 0)
++ if (strcmp(lang, "C") == 0) {
+ *has_C = 1;
+-
+- n_array_push(r_langs, n_strdup(lang));
++ } else {
++ n_snprintf(lang_utf8, sizeof(lang_utf8), "%s.UTF-8", lang);
++ if (n_array_bsearch(avlangs, lang_utf8)) {
++ n_array_push_check_dup(r_langs, lang_utf8);
++ }
++ }
++ n_array_push_check_dup(r_langs, lang);
+ }
+
+ /* second try, without country code */
+ if ((cut = cut_country_code(lang))) {
+ if (n_array_bsearch(avlangs, cut)) {
+- if (strcmp(cut, "C") == 0)
++ if (strcmp(cut, "C") == 0) {
+ *has_C = 1;
+-
+- n_array_push(r_langs, cut);
++ } else {
++ n_snprintf(lang_utf8, sizeof(lang_utf8), "%s.UTF-8", cut);
++ if (n_array_bsearch(avlangs, lang_utf8)) {
++ n_array_push_check_dup(r_langs, lang_utf8);
++ }
++ }
++ n_array_push_check_dup(r_langs, cut);
+ }
++ free(cut);
+ }
+ }
+
================================================================
More information about the pld-cvs-commit
mailing list