summaryrefslogtreecommitdiff
path: root/external/liblangtag/langtag-valencia.patch.0
blob: dc28043042e4cdc76254fb4b381e60611fa2035e (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
--- liblangtag/lt-tag.c
+++ liblangtag/lt-tag.c
@@ -2009,11 +2009,23 @@
 	if (ctag->region)
 		lt_string_append_printf(string, "_%s",
 					lt_region_get_tag(ctag->region));
-	if (ctag->script) {
+	if (ctag->script)
 		mod = lt_script_convert_to_modifier(ctag->script);
-		if (mod)
-			lt_string_append_printf(string, "@%s", mod);
+	if (!mod && ctag->variants)
+	{
+		lt_list_t* l;
+		for (l = ctag->variants; l != NULL; l = lt_list_next(l)) {
+			lt_variant_t *variant = lt_list_value(l);
+			const char *s = lt_variant_get_tag(variant);
+			if (lt_strcmp0(s, "valencia") == 0) {
+				mod = "valencia";
+				break;
+			}
+		}
 	}
+	if (mod)
+		lt_string_append_printf(string, "@%s", mod);
+
 	lt_tag_unref(ctag);
 
   bail: