Hello community,

here is the log from the commit of package liblangtag for openSUSE:Factory 
checked in at 2014-05-13 20:45:53
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/liblangtag (Old)
 and      /work/SRC/openSUSE:Factory/.liblangtag.new (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "liblangtag"

Changes:
--------
--- /work/SRC/openSUSE:Factory/liblangtag/liblangtag.changes    2013-09-26 
07:08:43.000000000 +0200
+++ /work/SRC/openSUSE:Factory/.liblangtag.new/liblangtag.changes       
2014-05-13 20:45:54.000000000 +0200
@@ -1,0 +2,6 @@
+Mon May 12 13:01:53 UTC 2014 - [email protected]
+
+- Version bump to 0.5.3:
+  * Various small fixes detailed in NEWS file
+
+-------------------------------------------------------------------

Old:
----
  liblangtag-0.5.2.tar.bz2

New:
----
  liblangtag-0.5.3.tar.bz2

++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Other differences:
------------------
++++++ liblangtag.spec ++++++
--- /var/tmp/diff_new_pack.JEcT6B/_old  2014-05-13 20:45:54.000000000 +0200
+++ /var/tmp/diff_new_pack.JEcT6B/_new  2014-05-13 20:45:54.000000000 +0200
@@ -1,7 +1,7 @@
 #
 # spec file for package liblangtag
 #
-# Copyright (c) 2013 SUSE LINUX Products GmbH, Nuernberg, Germany.
+# Copyright (c) 2014 SUSE LINUX Products GmbH, Nuernberg, Germany.
 #
 # All modifications and additions to the file contributed by third parties
 # remain the property of their copyright owners, unless otherwise agreed
@@ -19,7 +19,7 @@
 %define libname liblangtag1
 
 Name:           liblangtag
-Version:        0.5.2
+Version:        0.5.3
 Release:        0
 Summary:        An interface library to access tags for identifying languages
 License:        LGPL-3.0+ or MPL-2.0

++++++ liblangtag-0.5.2.tar.bz2 -> liblangtag-0.5.3.tar.bz2 ++++++
++++ 2163 lines of diff (skipped)
++++    retrying with extended exclude list
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude 
config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 
--exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh 
old/liblangtag-0.5.2/NEWS new/liblangtag-0.5.3/NEWS
--- old/liblangtag-0.5.2/NEWS   2013-08-28 11:36:54.000000000 +0200
+++ new/liblangtag-0.5.3/NEWS   2014-04-09 10:59:21.000000000 +0200
@@ -1,3 +1,18 @@
+0.5.2 -> 0.5.3
+=================
+Akira TAGOH (7):
+      add a script to prepare a release
+      Fix non-literal format string issues (fixed issue#5)
+      Fix typo
+      Update autotools macro
+      Merged in erAck/liblangtag/0.5.x (pull request #7)
+      Fix autoconf warning, warning: AC_COMPILE_IFELSE was called before 
AC_USE_SYSTEM_EXTENSIONS
+      separately canonicalize into the canonical form and the extlang form
+
+Eike Rathke (2):
+      Merged tagoh/liblangtag/0.5.x into 0.5.x
+      resolves #6, include last record in language-subtag-registry.xml
+
 0.5.1 -> 0.5.2
 =================
 Akira TAGOH (6):
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude 
config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 
--exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh 
old/liblangtag-0.5.2/configure.ac new/liblangtag-0.5.3/configure.ac
--- old/liblangtag-0.5.2/configure.ac   2013-08-28 11:36:54.000000000 +0200
+++ new/liblangtag-0.5.3/configure.ac   2014-04-09 11:05:39.000000000 +0200
@@ -1,6 +1,6 @@
 dnl Process this file with autoconf to produce a configure script.
 AC_PREREQ(2.62)
-AC_INIT([liblangtag], 0.5.2, [http://github.com/tagoh/liblangtag/issues])
+AC_INIT([liblangtag], 0.5.3, [http://github.com/tagoh/liblangtag/issues])
 
 . `dirname $0`/requires
 
@@ -20,7 +20,6 @@
 AC_USE_SYSTEM_EXTENSIONS
 AC_PROG_CC
 AM_PROG_AR
-AC_PROG_LIBTOOL
 
 GNOME_COMPILE_WARNINGS
 
@@ -28,6 +27,9 @@
 GNOME_DEBUG_CHECK
 GNOME_MAINTAINER_MODE_DEFINES
 
+LT_PREREQ([2.2])
+LT_INIT([disable-static win32-dll])
+
 dnl ======================================================================
 dnl Libraries versioning
 dnl ======================================================================
@@ -49,9 +51,9 @@
 dnl
 
 dnl for liblangtag.la
-LT_CURRENT=3
+LT_CURRENT=4
 LT_REVISION=0
-LT_AGE=2
+LT_AGE=3
 
 AC_SUBST(LT_CURRENT)
 AC_SUBST(LT_REVISION)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude 
config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 
--exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh 
old/liblangtag-0.5.2/data/language-subtag-registry.xml 
new/liblangtag-0.5.3/data/language-subtag-registry.xml
--- old/liblangtag-0.5.2/data/language-subtag-registry.xml      2013-08-28 
11:37:42.000000000 +0200
+++ new/liblangtag-0.5.3/data/language-subtag-registry.xml      2014-04-09 
11:05:54.000000000 +0200
@@ -49485,4 +49485,11 @@
     <deprecated>2009-07-29</deprecated>
     <preferred-value>wuu</preferred-value>
   </redundant>
+  <redundant>
+    <tag>zh-yue</tag>
+    <description>Cantonese</description>
+    <added>1999-12-18</added>
+    <deprecated>2009-07-29</deprecated>
+    <preferred-value>yue</preferred-value>
+  </redundant>
 </registry>
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude 
config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 
--exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh 
old/liblangtag-0.5.2/data/reg2xml.c new/liblangtag-0.5.3/data/reg2xml.c
--- old/liblangtag-0.5.2/data/reg2xml.c 2013-05-10 04:51:40.000000000 +0200
+++ new/liblangtag-0.5.3/data/reg2xml.c 2014-04-07 08:34:42.000000000 +0200
@@ -48,6 +48,7 @@
        FILE *fp;
        char buffer[1024], *range = NULL, *begin = NULL, *end = NULL;
        lt_bool_t in_entry = FALSE;
+       lt_bool_t file_end = FALSE;
        xmlNodePtr ent = NULL;
 
        if ((fp = fopen(filename, "rb")) == NULL) {
@@ -56,10 +57,13 @@
        }
        while (1) {
                fgets(buffer, 1024, fp);
-               if (feof(fp))
-                       break;
+               if (feof(fp)) {
+            if (!in_entry)
+                break;
+            file_end = TRUE;
+        }
                _drop_crlf(buffer);
-               if (lt_strcmp0(buffer, "%%") == 0) {
+               if (lt_strcmp0(buffer, "%%") == 0 || file_end) {
                        if (in_entry) {
                                if (ent) {
                                        if (range) {
@@ -102,7 +106,7 @@
                                ent = NULL;
                                range = NULL;
                        }
-                       in_entry = TRUE;
+                       in_entry = !file_end;
                } else {
                        if (!in_entry) {
                                /* ignore it */
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude 
config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 
--exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh 
old/liblangtag-0.5.2/docs/html/annotation-glossary.html 
new/liblangtag-0.5.3/docs/html/annotation-glossary.html
--- old/liblangtag-0.5.2/docs/html/annotation-glossary.html     2013-08-28 
11:37:42.000000000 +0200
+++ new/liblangtag-0.5.3/docs/html/annotation-glossary.html     2014-04-09 
11:09:09.000000000 +0200
@@ -20,9 +20,7 @@
 <td> </td>
 </tr>
 <tr><td colspan="5" class="shortcuts">
-<a class="shortcut" href="#glsS">S</a>
-                      | 
-                   <a class="shortcut" href="#glsA">A</a>
+<a class="shortcut" href="#glsA">A</a>
                       | 
                    <a class="shortcut" href="#glsS">S</a>
                       | 
@@ -32,13 +30,12 @@
 <div class="glossary">
 <div class="titlepage"><div><div><h1 class="title">
 <a name="annotation-glossary"></a>Annotation Glossary</h1></div></div></div>
-<a name="glsS"></a><h3 class="title">S</h3>
-<dt><span class="glossterm"><a 
name="annotation-glossterm-scope%20async"></a>scope async</span></dt>
-<dd class="glossdef"><p>The callback is valid until first called.</p></dd>
 <a name="glsA"></a><h3 class="title">A</h3>
 <dt><span class="glossterm"><a 
name="annotation-glossterm-allow-none"></a>allow-none</span></dt>
 <dd class="glossdef"><p>NULL is ok, both for passing and for 
returning.</p></dd>
 <a name="glsS"></a><h3 class="title">S</h3>
+<dt><span class="glossterm"><a 
name="annotation-glossterm-scope%20async"></a>scope async</span></dt>
+<dd class="glossdef"><p>The callback is valid until first called.</p></dd>
 <dt><span class="glossterm"><a 
name="annotation-glossterm-scope%20call"></a>scope call</span></dt>
 <dd class="glossdef"><p>The callback is valid only during the call to the 
method.</p></dd>
 <a name="glsT"></a><h3 class="title">T</h3>
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude 
config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 
--exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh 
old/liblangtag-0.5.2/docs/html/api-index-full.html 
new/liblangtag-0.5.3/docs/html/api-index-full.html
--- old/liblangtag-0.5.2/docs/html/api-index-full.html  2013-08-28 
11:37:42.000000000 +0200
+++ new/liblangtag-0.5.3/docs/html/api-index-full.html  2014-04-09 
11:09:09.000000000 +0200
@@ -433,11 +433,11 @@
 </dt>
 <dd></dd>
 <dt>
-<a class="link" href="liblangtag-Iterator.html#lt-iter-init" 
title="lt_iter_init ()">lt_iter_init</a>, function in <a class="link" 
href="liblangtag-Iterator.html" title="Iterator">Iterator</a>
+<a class="link" href="liblangtag-Iterator.html#LT-ITER-INIT:CAPS" 
title="LT_ITER_INIT()">LT_ITER_INIT</a>, macro in <a class="link" 
href="liblangtag-Iterator.html" title="Iterator">Iterator</a>
 </dt>
 <dd></dd>
 <dt>
-<a class="link" href="liblangtag-Iterator.html#LT-ITER-INIT:CAPS" 
title="LT_ITER_INIT()">LT_ITER_INIT</a>, macro in <a class="link" 
href="liblangtag-Iterator.html" title="Iterator">Iterator</a>
+<a class="link" href="liblangtag-Iterator.html#lt-iter-init" 
title="lt_iter_init ()">lt_iter_init</a>, function in <a class="link" 
href="liblangtag-Iterator.html" title="Iterator">Iterator</a>
 </dt>
 <dd></dd>
 <dt>
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude 
config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 
--exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh 
old/liblangtag-0.5.2/docs/html/index.html 
new/liblangtag-0.5.3/docs/html/index.html
--- old/liblangtag-0.5.2/docs/html/index.html   2013-08-28 11:37:42.000000000 
+0200
+++ new/liblangtag-0.5.3/docs/html/index.html   2014-04-09 11:09:09.000000000 
+0200
@@ -15,7 +15,7 @@
 <div>
 <div><table class="navigation" id="top" width="100%" cellpadding="2" 
cellspacing="0"><tr><th valign="middle"><p class="title">liblangtag 
Documentation</p></th></tr></table></div>
 <div><p class="releaseinfo">
-      for liblangtag 0.4.0
+      for liblangtag 0.5.3
 .
 
     </p></div>
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude 
config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 
--exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh 
old/liblangtag-0.5.2/docs/html/index.sgml 
new/liblangtag-0.5.3/docs/html/index.sgml
--- old/liblangtag-0.5.2/docs/html/index.sgml   2013-08-28 11:37:42.000000000 
+0200
+++ new/liblangtag-0.5.3/docs/html/index.sgml   2014-04-09 11:09:09.000000000 
+0200
@@ -353,8 +353,8 @@
 <ANCHOR id="lt-string-truncate" 
href="liblangtag/liblangtag-Strings.html#lt-string-truncate">
 <ANCHOR id="lt-string-unref" 
href="liblangtag/liblangtag-Strings.html#lt-string-unref">
 <ANCHOR id="lt-string-value" 
href="liblangtag/liblangtag-Strings.html#lt-string-value">
-<ANCHOR id="annotation-glossterm-scope async" 
href="liblangtag/annotation-glossary.html#annotation-glossterm-scope async">
 <ANCHOR id="annotation-glossterm-allow-none" 
href="liblangtag/annotation-glossary.html#annotation-glossterm-allow-none">
+<ANCHOR id="annotation-glossterm-scope async" 
href="liblangtag/annotation-glossary.html#annotation-glossterm-scope async">
 <ANCHOR id="annotation-glossterm-scope call" 
href="liblangtag/annotation-glossary.html#annotation-glossterm-scope call">
 <ANCHOR id="annotation-glossterm-transfer full" 
href="liblangtag/annotation-glossary.html#annotation-glossterm-transfer full">
 <ANCHOR id="annotation-glossterm-transfer none" 
href="liblangtag/annotation-glossary.html#annotation-glossterm-transfer none">
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude 
config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 
--exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh 
old/liblangtag-0.5.2/docs/html/liblangtag-Container---Tag.html 
new/liblangtag-0.5.3/docs/html/liblangtag-Container---Tag.html
--- old/liblangtag-0.5.2/docs/html/liblangtag-Container---Tag.html      
2013-08-28 11:37:42.000000000 +0200
+++ new/liblangtag-0.5.3/docs/html/liblangtag-Container---Tag.html      
2014-04-09 11:09:09.000000000 +0200
@@ -73,7 +73,7 @@
                                                          <em 
class="parameter"><code><a class="link" href="liblangtag-Error.html#lt-error-t" 
title="lt_error_t"><span class="type">lt_error_t</span></a> 
**error</code></em>);
 <a class="link" href="liblangtag-Container---Tag.html#lt-tag-t" 
title="lt_tag_t"><span class="returnvalue">lt_tag_t</span></a> *          <a 
class="link" href="liblangtag-Container---Tag.html#lt-tag-ref" 
title="lt_tag_ref ()">lt_tag_ref</a>                          (<em 
class="parameter"><code><a class="link" 
href="liblangtag-Container---Tag.html#lt-tag-t" title="lt_tag_t"><span 
class="type">lt_tag_t</span></a> *tag</code></em>);
                     <a class="link" 
href="liblangtag-Container---Tag.html#lt-tag-t" title="lt_tag_t">lt_tag_t</a>;
-<a class="link" href="liblangtag-Container---Tag.html#lt-tag-t" 
title="lt_tag_t"><span class="returnvalue">lt_tag_t</span></a> *          <a 
class="link" href="liblangtag-Container---Tag.html#lt-tag-transform" 
title="lt_tag_transform ()">lt_tag_transform</a>                    (<em 
class="parameter"><code><a class="link" 
href="liblangtag-Container---Tag.html#lt-tag-t" title="lt_tag_t"><span 
class="type">lt_tag_t</span></a> *tag</code></em>,
+<span class="returnvalue">char</span> *              <a class="link" 
href="liblangtag-Container---Tag.html#lt-tag-transform" title="lt_tag_transform 
()">lt_tag_transform</a>                    (<em class="parameter"><code><a 
class="link" href="liblangtag-Container---Tag.html#lt-tag-t" 
title="lt_tag_t"><span class="type">lt_tag_t</span></a> *tag</code></em>,
                                                          <em 
class="parameter"><code><a class="link" href="liblangtag-Error.html#lt-error-t" 
title="lt_error_t"><span class="type">lt_error_t</span></a> 
**error</code></em>);
 <a class="link" href="liblangtag-Miscellaneous-Macros.html#lt-bool-t" 
title="lt_bool_t"><span class="returnvalue">lt_bool_t</span></a>           <a 
class="link" href="liblangtag-Container---Tag.html#lt-tag-truncate" 
title="lt_tag_truncate ()">lt_tag_truncate</a>                     (<em 
class="parameter"><code><a class="link" 
href="liblangtag-Container---Tag.html#lt-tag-t" title="lt_tag_t"><span 
class="type">lt_tag_t</span></a> *tag</code></em>,
                                                          <em 
class="parameter"><code><a class="link" href="liblangtag-Error.html#lt-error-t" 
title="lt_error_t"><span class="type">lt_error_t</span></a> 
**error</code></em>);
@@ -489,8 +489,7 @@
 </tr>
 <tr>
 <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> 
:</span></p></td>
-<td>a language tag string. the returned value is owned by the library.
-it must not be freed.</td>
+<td>a language tag string.</td>
 </tr>
 </tbody>
 </table></div>
@@ -723,7 +722,7 @@
 <hr>
 <div class="refsect2">
 <a name="lt-tag-transform"></a><h3>lt_tag_transform ()</h3>
-<pre class="programlisting"><a class="link" 
href="liblangtag-Container---Tag.html#lt-tag-t" title="lt_tag_t"><span 
class="returnvalue">lt_tag_t</span></a> *          lt_tag_transform             
       (<em class="parameter"><code><a class="link" 
href="liblangtag-Container---Tag.html#lt-tag-t" title="lt_tag_t"><span 
class="type">lt_tag_t</span></a> *tag</code></em>,
+<pre class="programlisting"><span class="returnvalue">char</span> *            
  lt_tag_transform                    (<em class="parameter"><code><a 
class="link" href="liblangtag-Container---Tag.html#lt-tag-t" 
title="lt_tag_t"><span class="type">lt_tag_t</span></a> *tag</code></em>,
                                                          <em 
class="parameter"><code><a class="link" href="liblangtag-Error.html#lt-error-t" 
title="lt_error_t"><span class="type">lt_error_t</span></a> 
**error</code></em>);</pre>
 <p>
 Transform <em class="parameter"><code>tag</code></em> according to the 
likelySubtags database provided by CLDR.
@@ -745,8 +744,7 @@
 </tr>
 <tr>
 <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> 
:</span></p></td>
-<td>a <a class="link" href="liblangtag-Container---Tag.html#lt-tag-t" 
title="lt_tag_t"><span class="type">lt_tag_t</span></a> which contains 
transformed language tag. <span class="annotation">[<acronym title="Free data 
after the code is done."><span class="acronym">transfer 
full</span></acronym>]</span>
-</td>
+<td>a string.</td>
 </tr>
 </tbody>
 </table></div>
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude 
config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 
--exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh 
old/liblangtag-0.5.2/docs/version.xml new/liblangtag-0.5.3/docs/version.xml
--- old/liblangtag-0.5.2/docs/version.xml       2013-08-28 11:37:41.000000000 
+0200
+++ new/liblangtag-0.5.3/docs/version.xml       2014-04-09 11:05:49.000000000 
+0200
@@ -1 +1 @@
-0.5.2
+0.5.3
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude 
config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 
--exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh 
old/liblangtag-0.5.2/liblangtag/lt-messages.h 
new/liblangtag-0.5.3/liblangtag/lt-messages.h
--- old/liblangtag-0.5.2/liblangtag/lt-messages.h       2013-04-22 
10:06:57.000000000 +0200
+++ new/liblangtag-0.5.3/liblangtag/lt-messages.h       2014-01-16 
07:23:17.000000000 +0100
@@ -73,7 +73,7 @@
                                                 lt_message_flags_t     flags,
                                                  lt_message_category_t  
category,
                                                  const char            *format,
-                                                 va_list                args);
+                                                 va_list                args) 
LT_GNUC_PRINTF(4, 0);
 void              lt_return_if_fail_warning     (const char            
*pretty_function,
                                                 const char            
*expression);
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude 
config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 
--exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh 
old/liblangtag-0.5.2/liblangtag/lt-stdint.h 
new/liblangtag-0.5.3/liblangtag/lt-stdint.h
--- old/liblangtag-0.5.2/liblangtag/lt-stdint.h 2013-08-28 11:37:41.000000000 
+0200
+++ new/liblangtag-0.5.3/liblangtag/lt-stdint.h 2014-04-09 11:00:23.000000000 
+0200
@@ -1,8 +1,8 @@
 #ifndef _LIBLANGTAG_LIBLANGTAG_LT_STDINT_H
 #define _LIBLANGTAG_LIBLANGTAG_LT_STDINT_H 1
 #ifndef _GENERATED_STDINT_H
-#define _GENERATED_STDINT_H "liblangtag 0.5.2"
-/* generated using gnu compiler gcc (GCC) 4.8.1 20130603 (Red Hat 4.8.1-1) */
+#define _GENERATED_STDINT_H "liblangtag 0.5.3"
+/* generated using gnu compiler gcc (GCC) 4.8.2 20131212 (Red Hat 4.8.2-7) */
 #define _STDINT_HAVE_STDINT_H 1
 #include <stdint.h>
 #endif
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude 
config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 
--exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh 
old/liblangtag-0.5.2/liblangtag/lt-tag.c 
new/liblangtag-0.5.3/liblangtag/lt-tag.c
--- old/liblangtag-0.5.2/liblangtag/lt-tag.c    2013-08-27 12:56:13.000000000 
+0200
+++ new/liblangtag-0.5.3/liblangtag/lt-tag.c    2014-04-07 10:31:55.000000000 
+0200
@@ -1226,6 +1226,158 @@
        return tag;
 }
 
+static char *
+_lt_tag_canonicalize(lt_tag_t    *tag,
+                    lt_bool_t    extlang_form,
+                    lt_error_t **error)
+{
+       char *retval = NULL;
+       lt_string_t *string = NULL;
+       lt_error_t *err = NULL;
+       lt_list_t *l;
+       lt_redundant_db_t *rdb = NULL;
+       lt_redundant_t *r = NULL;
+       lt_tag_t *ctag = NULL;
+
+       lt_return_val_if_fail (tag != NULL, NULL);
+
+       string = lt_string_new(NULL);
+       if (tag->grandfathered) {
+               lt_string_append(string, 
lt_grandfathered_get_better_tag(tag->grandfathered));
+               goto bail1;
+       }
+
+       ctag = lt_tag_copy(tag);
+       rdb = lt_db_get_redundant();
+       while (1) {
+               const char *tag_string = lt_tag_get_string(ctag);
+
+               if (tag_string == NULL || tag_string[0] == 0)
+                       break;
+               r = lt_redundant_db_lookup(rdb, tag_string);
+               if (r) {
+                       const char *preferred = 
lt_redundant_get_preferred_tag(r);
+
+                       if (preferred) {
+                               lt_tag_t *rtag = lt_tag_new();
+                               lt_tag_t *ntag = lt_tag_new();
+
+                               if (!lt_tag_parse(rtag, 
lt_redundant_get_tag(r), &err)) {
+                                       lt_tag_unref(rtag);
+                                       lt_tag_unref(ntag);
+                                       goto bail1;
+                               }
+                               if (!lt_tag_parse(ntag, preferred, &err)) {
+                                       lt_tag_unref(rtag);
+                                       lt_tag_unref(ntag);
+                                       goto bail1;
+                               }
+                               _lt_tag_subtract(tag, rtag);
+                               _lt_tag_replace(tag, ntag);
+                               lt_tag_unref(rtag);
+                               lt_tag_unref(ntag);
+                       }
+                       break;
+               } else {
+                       if (!lt_tag_truncate(ctag, &err))
+                               goto bail1;
+               }
+       }
+
+       if (tag->language) {
+               size_t len;
+               lt_extlang_db_t *edb = lt_db_get_extlang();
+               lt_extlang_t *e;
+
+               if (extlang_form) {
+                       /* If the language tag starts with a primary language 
subtag
+                        * that is also an extlang subtag, then the language 
tag is
+                        * prepended with the extlang's 'Prefix'.
+                        */
+                       e = lt_extlang_db_lookup(edb, 
lt_lang_get_better_tag(tag->language));
+                       if (e) {
+                               const char *prefix = lt_extlang_get_prefix(e);
+
+                               if (prefix)
+                                       lt_string_append_printf(string, "%s-", 
prefix);
+                               lt_extlang_unref(e);
+                       }
+                       lt_extlang_db_unref(edb);
+               }
+
+               lt_string_append(string, lt_lang_get_better_tag(tag->language));
+               if (tag->extlang) {
+                       const char *preferred = 
lt_extlang_get_preferred_tag(tag->extlang);
+
+                       if (preferred) {
+                               lt_string_clear(string);
+                               lt_string_append(string, preferred);
+                       } else {
+                               lt_string_append_printf(string, "-%s",
+                                                       
lt_extlang_get_tag(tag->extlang));
+                       }
+               }
+               if (tag->script) {
+                       const char *script = lt_script_get_tag(tag->script);
+                       const char *suppress = 
lt_lang_get_suppress_script(tag->language);
+
+                       if (!suppress ||
+                           lt_strcasecmp(suppress, script))
+                               lt_string_append_printf(string, "-%s", script);
+               }
+               if (tag->region) {
+                       lt_string_append_printf(string, "-%s", 
lt_region_get_better_tag(tag->region));
+               }
+               len = lt_string_length(string);
+               for (l = tag->variants; l != NULL; l = lt_list_next(l)) {
+                       lt_variant_t *variant = lt_list_value(l);
+                       const char *better = lt_variant_get_better_tag(variant);
+                       const char *s = lt_variant_get_tag(variant);
+
+                       if (better && lt_strcasecmp(s, better) != 0) {
+                               /* ignore all of variants prior to this one */
+                               lt_string_truncate(string, len);
+                       }
+                       lt_string_append_printf(string, "-%s", better ? better 
: s);
+               }
+               if (tag->extension) {
+                       char *s = 
lt_extension_get_canonicalized_tag(tag->extension);
+
+                       lt_string_append_printf(string, "-%s", s);
+                       free(s);
+               }
+       }
+       if (tag->privateuse && lt_string_length(tag->privateuse) > 0) {
+               lt_string_append_printf(string, "%s%s",
+                                       lt_string_length(string) > 0 ? "-" : "",
+                                       lt_string_value(tag->privateuse));
+       }
+       if (lt_string_length(string) == 0) {
+               lt_error_set(&err, LT_ERR_NO_TAG,
+                            "No tag to convert.");
+       }
+  bail1:
+       if (ctag)
+               lt_tag_unref(ctag);
+       if (rdb)
+               lt_redundant_db_unref(rdb);
+       if (r)
+               lt_redundant_unref(r);
+       retval = lt_string_free(string, FALSE);
+       if (lt_error_is_set(err, LT_ERR_ANY)) {
+               if (error)
+                       *error = lt_error_ref(err);
+               else
+                       lt_error_print(err, LT_ERR_ANY);
+               lt_error_unref(err);
+               if (retval)
+                       free(retval);
+               retval = NULL;
+       }
+
+       return retval;
+}
+
 /*< protected >*/
 lt_tag_state_t
 lt_tag_parse_wildcard(lt_tag_t    *tag,
@@ -1576,149 +1728,24 @@
 lt_tag_canonicalize(lt_tag_t    *tag,
                    lt_error_t **error)
 {
-       char *retval = NULL;
-       lt_string_t *string = NULL;
-       lt_error_t *err = NULL;
-       lt_list_t *l;
-       lt_redundant_db_t *rdb = NULL;
-       lt_redundant_t *r = NULL;
-       lt_tag_t *ctag = NULL;
-
-       lt_return_val_if_fail (tag != NULL, NULL);
-
-       string = lt_string_new(NULL);
-       if (tag->grandfathered) {
-               lt_string_append(string, 
lt_grandfathered_get_better_tag(tag->grandfathered));
-               goto bail1;
-       }
-
-       ctag = lt_tag_copy(tag);
-       rdb = lt_db_get_redundant();
-       while (1) {
-               const char *tag_string = lt_tag_get_string(ctag);
-
-               if (tag_string == NULL || tag_string[0] == 0)
-                       break;
-               r = lt_redundant_db_lookup(rdb, tag_string);
-               if (r) {
-                       const char *preferred = 
lt_redundant_get_preferred_tag(r);
-
-                       if (preferred) {
-                               lt_tag_t *rtag = lt_tag_new();
-                               lt_tag_t *ntag = lt_tag_new();
-
-                               if (!lt_tag_parse(rtag, 
lt_redundant_get_tag(r), &err)) {
-                                       lt_tag_unref(rtag);
-                                       lt_tag_unref(ntag);
-                                       goto bail1;
-                               }
-                               if (!lt_tag_parse(ntag, preferred, &err)) {
-                                       lt_tag_unref(rtag);
-                                       lt_tag_unref(ntag);
-                                       goto bail1;
-                               }
-                               _lt_tag_subtract(tag, rtag);
-                               _lt_tag_replace(tag, ntag);
-                               lt_tag_unref(rtag);
-                               lt_tag_unref(ntag);
-                       }
-                       break;
-               } else {
-                       if (!lt_tag_truncate(ctag, &err))
-                               goto bail1;
-               }
-       }
-
-       if (tag->language) {
-               size_t len;
-               lt_extlang_db_t *edb = lt_db_get_extlang();
-               lt_extlang_t *e;
-
-               /* If the language tag starts with a primary language subtag
-                * that is also an extlang subtag, then the language tag is
-                * prepended with the extlang's 'Prefix'.
-                */
-               e = lt_extlang_db_lookup(edb, 
lt_lang_get_better_tag(tag->language));
-               if (e) {
-                       const char *prefix = lt_extlang_get_prefix(e);
-
-                       if (prefix)
-                               lt_string_append_printf(string, "%s-", prefix);
-                       lt_extlang_unref(e);
-               }
-               lt_extlang_db_unref(edb);
-
-               lt_string_append(string, lt_lang_get_better_tag(tag->language));
-               if (tag->extlang) {
-                       const char *preferred = 
lt_extlang_get_preferred_tag(tag->extlang);
-
-                       if (preferred) {
-                               lt_string_clear(string);
-                               lt_string_append(string, preferred);
-                       } else {
-                               lt_string_append_printf(string, "-%s",
-                                                       
lt_extlang_get_tag(tag->extlang));
-                       }
-               }
-               if (tag->script) {
-                       const char *script = lt_script_get_tag(tag->script);
-                       const char *suppress = 
lt_lang_get_suppress_script(tag->language);
-
-                       if (!suppress ||
-                           lt_strcasecmp(suppress, script))
-                               lt_string_append_printf(string, "-%s", script);
-               }
-               if (tag->region) {
-                       lt_string_append_printf(string, "-%s", 
lt_region_get_better_tag(tag->region));
-               }
-               len = lt_string_length(string);
-               for (l = tag->variants; l != NULL; l = lt_list_next(l)) {
-                       lt_variant_t *variant = lt_list_value(l);
-                       const char *better = lt_variant_get_better_tag(variant);
-                       const char *s = lt_variant_get_tag(variant);
-
-                       if (better && lt_strcasecmp(s, better) != 0) {
-                               /* ignore all of variants prior to this one */
-                               lt_string_truncate(string, len);
-                       }
-                       lt_string_append_printf(string, "-%s", better ? better 
: s);
-               }
-               if (tag->extension) {
-                       char *s = 
lt_extension_get_canonicalized_tag(tag->extension);
-
-                       lt_string_append_printf(string, "-%s", s);
-                       free(s);
-               }
-       }
-       if (tag->privateuse && lt_string_length(tag->privateuse) > 0) {
-               lt_string_append_printf(string, "%s%s",
-                                       lt_string_length(string) > 0 ? "-" : "",
-                                       lt_string_value(tag->privateuse));
-       }
-       if (lt_string_length(string) == 0) {
-               lt_error_set(&err, LT_ERR_NO_TAG,
-                            "No tag to convert.");
-       }
-  bail1:
-       if (ctag)
-               lt_tag_unref(ctag);
-       if (rdb)
-               lt_redundant_db_unref(rdb);
-       if (r)
-               lt_redundant_unref(r);
-       retval = lt_string_free(string, FALSE);
-       if (lt_error_is_set(err, LT_ERR_ANY)) {
-               if (error)
-                       *error = lt_error_ref(err);
-               else
-                       lt_error_print(err, LT_ERR_ANY);
-               lt_error_unref(err);
-               if (retval)
-                       free(retval);
-               retval = NULL;
-       }
+       return _lt_tag_canonicalize(tag, FALSE, error);
+}
 
-       return retval;
+/**
+ * lt_tag_canonicalize_in_extlang_form:
+ * @tag: a #lt_tag_t.
+ * @error: (allow-none): a #lt_error_t or %NULL.
+ *
+ * Canonicalize the language tag in the extlang form
+ * according to various information of subtags.
+ *
+ * Returns: a language tag string.
+ */
+char *
+lt_tag_canonicalize_in_extlang_form(lt_tag_t    *tag,
+                                   lt_error_t **error)
+{
+       return _lt_tag_canonicalize(tag, TRUE, error);
 }
 
 /**
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude 
config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 
--exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh 
old/liblangtag-0.5.2/liblangtag/lt-tag.h 
new/liblangtag-0.5.3/liblangtag/lt-tag.h
--- old/liblangtag-0.5.2/liblangtag/lt-tag.h    2013-08-27 12:56:13.000000000 
+0200
+++ new/liblangtag-0.5.3/liblangtag/lt-tag.h    2014-04-07 10:32:33.000000000 
+0200
@@ -38,46 +38,48 @@
 typedef struct _lt_tag_t       lt_tag_t;
 
 
-lt_tag_t                 *lt_tag_new                       (void);
-lt_tag_t                 *lt_tag_ref                       (lt_tag_t        
*tag);
-void                      lt_tag_unref                     (lt_tag_t        
*tag);
-lt_bool_t                 lt_tag_parse                     (lt_tag_t        
*tag,
-                                                            const char      
*tag_string,
-                                                            lt_error_t     
**error);
-lt_bool_t                 lt_tag_parse_with_extra_token    (lt_tag_t        
*tag,
-                                                            const char      
*tag_string,
-                                                            lt_error_t     
**error);
-void                      lt_tag_clear                     (lt_tag_t        
*tag);
-lt_tag_t                 *lt_tag_copy                      (const lt_tag_t  
*tag);
-lt_bool_t                 lt_tag_truncate                  (lt_tag_t        
*tag,
-                                                            lt_error_t     
**error);
-const char               *lt_tag_get_string                (lt_tag_t        
*tag);
-char                     *lt_tag_canonicalize              (lt_tag_t        
*tag,
-                                                            lt_error_t     
**error);
-char                     *lt_tag_convert_to_locale         (lt_tag_t        
*tag,
-                                                            lt_error_t     
**error);
-lt_tag_t                 *lt_tag_convert_from_locale       (lt_error_t     
**error);
-lt_tag_t                 *lt_tag_convert_from_locale_string(const char      
*locale,
-                                                            lt_error_t     
**error);
-void                      lt_tag_dump                      (const lt_tag_t  
*tag);
-lt_bool_t                 lt_tag_compare                   (const lt_tag_t  
*v1,
-                                                            const lt_tag_t  
*v2);
-lt_bool_t                 lt_tag_match                     (const lt_tag_t  
*v1,
-                                                            const char      
*v2,
-                                                            lt_error_t     
**error);
-char                     *lt_tag_lookup                    (const lt_tag_t  
*tag,
-                                                            const char      
*pattern,
-                                                            lt_error_t     
**error);
-char                     *lt_tag_transform                 (lt_tag_t        
*tag,
-                                                            lt_error_t     
**error);
-const lt_lang_t          *lt_tag_get_language              (const lt_tag_t  
*tag);
-const lt_extlang_t       *lt_tag_get_extlang               (const lt_tag_t  
*tag);
-const lt_script_t        *lt_tag_get_script                (const lt_tag_t  
*tag);
-const lt_region_t        *lt_tag_get_region                (const lt_tag_t  
*tag);
-const lt_list_t          *lt_tag_get_variants              (const lt_tag_t  
*tag);
-const lt_extension_t     *lt_tag_get_extension             (const lt_tag_t  
*tag);
-const lt_string_t        *lt_tag_get_privateuse            (const lt_tag_t  
*tag);
-const lt_grandfathered_t *lt_tag_get_grandfathered         (const lt_tag_t  
*tag);
+lt_tag_t                 *lt_tag_new                         (void);
+lt_tag_t                 *lt_tag_ref                         (lt_tag_t       
*tag);
+void                      lt_tag_unref                       (lt_tag_t       
*tag);
+lt_bool_t                 lt_tag_parse                       (lt_tag_t       
*tag,
+                                                              const char     
*tag_string,
+                                                              lt_error_t     
**error);
+lt_bool_t                 lt_tag_parse_with_extra_token      (lt_tag_t       
*tag,
+                                                              const char     
*tag_string,
+                                                              lt_error_t     
**error);
+void                      lt_tag_clear                       (lt_tag_t       
*tag);
+lt_tag_t                 *lt_tag_copy                        (const lt_tag_t 
*tag);
+lt_bool_t                 lt_tag_truncate                    (lt_tag_t       
*tag,
+                                                              lt_error_t     
**error);
+const char               *lt_tag_get_string                  (lt_tag_t       
*tag);
+char                     *lt_tag_canonicalize                (lt_tag_t       
*tag,
+                                                              lt_error_t     
**error);
+char                     *lt_tag_canonicalize_in_extlang_form(lt_tag_t       
*tag,
+                                                              lt_error_t     
**error);
+char                     *lt_tag_convert_to_locale           (lt_tag_t       
*tag,
+                                                              lt_error_t     
**error);
+lt_tag_t                 *lt_tag_convert_from_locale         (lt_error_t     
**error);
+lt_tag_t                 *lt_tag_convert_from_locale_string  (const char     
*locale,
+                                                              lt_error_t     
**error);
+void                      lt_tag_dump                        (const lt_tag_t 
*tag);
+lt_bool_t                 lt_tag_compare                     (const lt_tag_t 
*v1,
+                                                              const lt_tag_t 
*v2);
+lt_bool_t                 lt_tag_match                       (const lt_tag_t 
*v1,
+                                                              const char     
*v2,
+                                                              lt_error_t     
**error);
+char                     *lt_tag_lookup                      (const lt_tag_t 
*tag,
+                                                              const char     
*pattern,
+                                                              lt_error_t     
**error);
+char                     *lt_tag_transform                   (lt_tag_t       
*tag,
+                                                              lt_error_t     
**error);
+const lt_lang_t          *lt_tag_get_language                (const lt_tag_t 
*tag);
+const lt_extlang_t       *lt_tag_get_extlang                 (const lt_tag_t 
*tag);
+const lt_script_t        *lt_tag_get_script                  (const lt_tag_t 
*tag);
+const lt_region_t        *lt_tag_get_region                  (const lt_tag_t 
*tag);
+const lt_list_t          *lt_tag_get_variants                (const lt_tag_t 
*tag);
+const lt_extension_t     *lt_tag_get_extension               (const lt_tag_t 
*tag);
+const lt_string_t        *lt_tag_get_privateuse              (const lt_tag_t 
*tag);
+const lt_grandfathered_t *lt_tag_get_grandfathered           (const lt_tag_t 
*tag);
 
 LT_END_DECLS
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude 
config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 
--exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh 
old/liblangtag-0.5.2/liblangtag/lt-utils.h 
new/liblangtag-0.5.3/liblangtag/lt-utils.h
--- old/liblangtag-0.5.2/liblangtag/lt-utils.h  2013-04-22 10:06:57.000000000 
+0200
+++ new/liblangtag-0.5.3/liblangtag/lt-utils.h  2014-01-16 07:23:17.000000000 
+0100
@@ -36,7 +36,7 @@
 char *lt_strdup_printf (const char *format,
                        ...) LT_GNUC_PRINTF (1, 2);
 char *lt_strdup_vprintf(const char *format,
-                        va_list     args);
+                        va_list     args) LT_GNUC_PRINTF (1, 0);
 char *lt_strndup       (const char *s,
                        size_t      n);
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude 
config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 
--exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh 
old/liblangtag-0.5.2/liblangtag/lt-xml.c 
new/liblangtag-0.5.3/liblangtag/lt-xml.c
--- old/liblangtag-0.5.2/liblangtag/lt-xml.c    2013-05-10 04:49:06.000000000 
+0200
+++ new/liblangtag-0.5.3/liblangtag/lt-xml.c    2014-01-16 07:23:17.000000000 
+0100
@@ -197,7 +197,7 @@
                lt_string_append_filename(regfile,
                                          BUILDDIR, "data", "common", 
"supplemental",
                                          filename, NULL);
-               lt_info(lt_string_value(regfile));
+               lt_info("%s", lt_string_value(regfile));
                if (stat(lt_string_value(regfile), &st) == -1) {
                        lt_string_clear(regfile);
                        lt_string_append_filename(regfile,
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude 
config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 
--exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh 
old/liblangtag-0.5.2/liblangtag-gobject/lt-tag.gir.h 
new/liblangtag-0.5.3/liblangtag-gobject/lt-tag.gir.h
--- old/liblangtag-0.5.2/liblangtag-gobject/lt-tag.gir.h        2013-08-28 
11:37:49.000000000 +0200
+++ new/liblangtag-0.5.3/liblangtag-gobject/lt-tag.gir.h        2014-04-09 
11:06:06.000000000 +0200
@@ -39,46 +39,48 @@
 typedef struct _LtTag  LtTag;
 
 
-LtTag                 *lt_tag_new                       (void);
-LtTag                 *lt_tag_ref                       (LtTag        *tag);
-void                      lt_tag_unref                     (LtTag        *tag);
-LtBool                 lt_tag_parse                     (LtTag        *tag,
-                                                            const char      
*tag_string,
-                                                            LtError     
**error);
-LtBool                 lt_tag_parse_with_extra_token    (LtTag        *tag,
-                                                            const char      
*tag_string,
-                                                            LtError     
**error);
-void                      lt_tag_clear                     (LtTag        *tag);
-LtTag                 *lt_tag_copy                      (const LtTag  *tag);
-LtBool                 lt_tag_truncate                  (LtTag        *tag,
-                                                            LtError     
**error);
-const char               *lt_tag_get_string                (LtTag        *tag);
-char                     *lt_tag_canonicalize              (LtTag        *tag,
-                                                            LtError     
**error);
-char                     *lt_tag_convert_to_locale         (LtTag        *tag,
-                                                            LtError     
**error);
-LtTag                 *lt_tag_convert_from_locale       (LtError     **error);
-LtTag                 *lt_tag_convert_from_locale_string(const char      
*locale,
-                                                            LtError     
**error);
-void                      lt_tag_dump                      (const LtTag  *tag);
-LtBool                 lt_tag_compare                   (const LtTag  *v1,
-                                                            const LtTag  *v2);
-LtBool                 lt_tag_match                     (const LtTag  *v1,
-                                                            const char      
*v2,
-                                                            LtError     
**error);
-char                     *lt_tag_lookup                    (const LtTag  *tag,
-                                                            const char      
*pattern,
-                                                            LtError     
**error);
-char                     *lt_tag_transform                 (LtTag        *tag,
-                                                            LtError     
**error);
-const LtLang          *lt_tag_get_language              (const LtTag  *tag);
-const LtExtlang       *lt_tag_get_extlang               (const LtTag  *tag);
-const LtScript        *lt_tag_get_script                (const LtTag  *tag);
-const LtRegion        *lt_tag_get_region                (const LtTag  *tag);
-const LtList          *lt_tag_get_variants              (const LtTag  *tag);
-const LtExtension     *lt_tag_get_extension             (const LtTag  *tag);
-const LtString        *lt_tag_get_privateuse            (const LtTag  *tag);
-const LtGrandfathered *lt_tag_get_grandfathered         (const LtTag  *tag);
+LtTag                 *lt_tag_new                         (void);
+LtTag                 *lt_tag_ref                         (LtTag       *tag);
+void                      lt_tag_unref                       (LtTag       
*tag);
+LtBool                 lt_tag_parse                       (LtTag       *tag,
+                                                              const char     
*tag_string,
+                                                              LtError     
**error);
+LtBool                 lt_tag_parse_with_extra_token      (LtTag       *tag,
+                                                              const char     
*tag_string,
+                                                              LtError     
**error);
+void                      lt_tag_clear                       (LtTag       
*tag);
+LtTag                 *lt_tag_copy                        (const LtTag *tag);
+LtBool                 lt_tag_truncate                    (LtTag       *tag,
+                                                              LtError     
**error);
+const char               *lt_tag_get_string                  (LtTag       
*tag);
+char                     *lt_tag_canonicalize                (LtTag       *tag,
+                                                              LtError     
**error);
+char                     *lt_tag_canonicalize_in_extlang_form(LtTag       *tag,
+                                                              LtError     
**error);
+char                     *lt_tag_convert_to_locale           (LtTag       *tag,
+                                                              LtError     
**error);
+LtTag                 *lt_tag_convert_from_locale         (LtError     
**error);
+LtTag                 *lt_tag_convert_from_locale_string  (const char     
*locale,
+                                                              LtError     
**error);
+void                      lt_tag_dump                        (const LtTag 
*tag);
+LtBool                 lt_tag_compare                     (const LtTag *v1,
+                                                              const LtTag *v2);
+LtBool                 lt_tag_match                       (const LtTag *v1,
+                                                              const char     
*v2,
+                                                              LtError     
**error);
+char                     *lt_tag_lookup                      (const LtTag *tag,
+                                                              const char     
*pattern,
+                                                              LtError     
**error);
+char                     *lt_tag_transform                   (LtTag       *tag,
+                                                              LtError     
**error);
+const LtLang          *lt_tag_get_language                (const LtTag *tag);
+const LtExtlang       *lt_tag_get_extlang                 (const LtTag *tag);
+const LtScript        *lt_tag_get_script                  (const LtTag *tag);
+const LtRegion        *lt_tag_get_region                  (const LtTag *tag);
+const LtList          *lt_tag_get_variants                (const LtTag *tag);
+const LtExtension     *lt_tag_get_extension               (const LtTag *tag);
+const LtString        *lt_tag_get_privateuse              (const LtTag *tag);
+const LtGrandfathered *lt_tag_get_grandfathered           (const LtTag *tag);
 
 LT_END_DECLS
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude 
config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 
--exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh 
old/liblangtag-0.5.2/liblangtag-gobject-uninstalled.pc 
new/liblangtag-0.5.3/liblangtag-gobject-uninstalled.pc
--- old/liblangtag-0.5.2/liblangtag-gobject-uninstalled.pc      2013-08-28 
11:37:41.000000000 +0200
+++ new/liblangtag-0.5.3/liblangtag-gobject-uninstalled.pc      2014-04-09 
11:05:50.000000000 +0200
@@ -1,6 +1,6 @@
 Name: liblangtag-gobject Uninstalled
 Description: GObject based interface to access tags for identifying languages
-Version: 0.5.2
+Version: 0.5.3
 Requires: gobject-2.0 liblangtag
 Libs: ${pcfiledir}/liblangtag-gobject/liblangtag-gobject.la
 Cflags: -I${pcfiledir} -I${pcfiledir}/..
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude 
config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 
--exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh 
old/liblangtag-0.5.2/liblangtag-gobject.pc 
new/liblangtag-0.5.3/liblangtag-gobject.pc
--- old/liblangtag-0.5.2/liblangtag-gobject.pc  2013-08-28 11:37:41.000000000 
+0200
+++ new/liblangtag-0.5.3/liblangtag-gobject.pc  2014-04-09 11:05:50.000000000 
+0200
@@ -1,10 +1,10 @@
 prefix=/usr
 exec_prefix=${prefix}
-libdir=${exec_prefix}/lib
+libdir=${exec_prefix}/lib64
 includedir=${prefix}/include
 
 Name: liblangtag-gobject
 Description: GObject based interface to access tags for identifying languages
-Version: 0.5.2
+Version: 0.5.3
 Requires: gobject-2.0 liblangtag
 Libs: -L${libdir} -llangtag-gobject
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude 
config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 
--exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh 
old/liblangtag-0.5.2/liblangtag-uninstalled.pc 
new/liblangtag-0.5.3/liblangtag-uninstalled.pc
--- old/liblangtag-0.5.2/liblangtag-uninstalled.pc      2013-08-28 
11:37:41.000000000 +0200
+++ new/liblangtag-0.5.3/liblangtag-uninstalled.pc      2014-04-09 
11:05:50.000000000 +0200
@@ -1,6 +1,6 @@
 Name: liblangtag Uninstalled
 Description: Interface to access tags for identifying languages
-Version: 0.5.2
+Version: 0.5.3
 Requires: glib-2.0
 Libs: ${pcfiledir}/liblangtag/liblangtag.la
 Cflags: -I${pcfiledir} -I${pcfiledir}/..
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude 
config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 
--exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh 
old/liblangtag-0.5.2/liblangtag.pc new/liblangtag-0.5.3/liblangtag.pc
--- old/liblangtag-0.5.2/liblangtag.pc  2013-08-28 11:37:41.000000000 +0200
+++ new/liblangtag-0.5.3/liblangtag.pc  2014-04-09 11:05:50.000000000 +0200
@@ -1,10 +1,10 @@
 prefix=/usr
 exec_prefix=${prefix}
-libdir=${exec_prefix}/lib
+libdir=${exec_prefix}/lib64
 includedir=${prefix}/include
 
 Name: liblangtag
 Description: Interface to access tags for identifying languages
-Version: 0.5.2
+Version: 0.5.3
 Requires: glib-2.0
 Libs: -L${libdir} -llangtag
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude 
config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 
--exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh 
old/liblangtag-0.5.2/tests/check-tag.c new/liblangtag-0.5.3/tests/check-tag.c
--- old/liblangtag-0.5.2/tests/check-tag.c      2013-08-27 12:56:13.000000000 
+0200
+++ new/liblangtag-0.5.3/tests/check-tag.c      2014-04-07 10:31:55.000000000 
+0200
@@ -109,13 +109,11 @@
 
        t1 = lt_tag_new();
        fail_unless(t1 != NULL, "OOM");
-#if 0 /* which one is correct behavior? gan? or zh-gan? */
        fail_unless(lt_tag_parse(t1, "zh-gan", NULL), "should be valid 
langtag.");
        s = lt_tag_canonicalize(t1, NULL);
        fail_unless(s != NULL, "Unable to be canonicalize.");
        fail_unless(lt_strcmp0(s, "gan") == 0, "Unexpected result to be 
canonicalized.");
        free(s);
-#endif
        fail_unless(lt_tag_parse(t1, "zh-yue", NULL), "should be valid 
langtag.");
        s = lt_tag_canonicalize(t1, NULL);
        fail_unless(s != NULL, "Unable to be canonicalize.");
@@ -126,13 +124,11 @@
        fail_unless(s != NULL, "Unable to be canonicalize.");
        fail_unless(lt_strcmp0(s, "yue-Hant-HK") == 0, "Unexpected result to be 
canonicalized.");
        free(s);
-#if 0 /* which one is correct behavior? cmn? zh-cmn? */
        fail_unless(lt_tag_parse(t1, "zh-cmn", NULL), "should be valid 
langtag.");
        s = lt_tag_canonicalize(t1, NULL);
        fail_unless(s != NULL, "Unable to be canonicalize.");
        fail_unless(lt_strcmp0(s, "cmn") == 0, "Unexpected result to be 
canonicalized.");
        free(s);
-#endif
        fail_unless(lt_tag_parse(t1, "en-Latn-US", NULL), "should be valid 
langtag.");
        s = lt_tag_canonicalize(t1, NULL);
        fail_unless(s != NULL, "Unable to be canonicalize.");
@@ -176,7 +172,7 @@
        fail_unless(lt_tag_parse(t1, "hak-CN", NULL), "should be valid 
langtag.");
        s = lt_tag_canonicalize(t1, NULL);
        fail_unless(s != NULL, "Unable to be canonicalize.");
-       fail_unless(lt_strcmp0(s, "zh-hak-CN") == 0, "Unexpected result to be 
canonicalized.");
+       fail_unless(lt_strcmp0(s, "hak-CN") == 0, "Unexpected result to be 
canonicalized.");
        free(s);
        fail_unless(lt_tag_parse(t1, "en-BU", NULL), "should be valid 
langtag.");
        s = lt_tag_canonicalize(t1, NULL);
@@ -186,12 +182,40 @@
        fail_unless(lt_tag_parse(t1, "sgn-BR", NULL), "should be valid 
langtag.");
        s = lt_tag_canonicalize(t1, NULL);
        fail_unless(s != NULL, "Unable to be canonicalize.");
-       fail_unless(lt_strcmp0(s, "sgn-bzs") == 0, "Unexpected result to be 
canonicalized.");
+       fail_unless(lt_strcmp0(s, "bzs") == 0, "Unexpected result to be 
canonicalized.");
        free(s);
 
        lt_tag_unref(t1);
 } TEND
 
+TDEF (lt_tag_canonicalize_in_extlang_form) {
+       lt_tag_t *t1;
+       char *s;
+
+       t1 = lt_tag_new();
+       fail_unless(t1 != NULL, "OOM");
+       fail_unless(lt_tag_parse(t1, "gan", NULL), "should be valid langtag.");
+       s = lt_tag_canonicalize_in_extlang_form(t1, NULL);
+       fail_unless(s != NULL, "Unable to be canonicalize.");
+       fail_unless(lt_strcmp0(s, "zh-gan") == 0, "Unexpected result to be 
canonicalized.");
+       free(s);
+       fail_unless(lt_tag_parse(t1, "cmn", NULL), "should be valid langtag.");
+       s = lt_tag_canonicalize_in_extlang_form(t1, NULL);
+       fail_unless(s != NULL, "Unable to be canonicalize.");
+       fail_unless(lt_strcmp0(s, "zh-cmn") == 0, "Unexpected result to be 
canonicalized.");
+       free(s);
+       fail_unless(lt_tag_parse(t1, "hak-CN", NULL), "should be valid 
langtag.");
+       s = lt_tag_canonicalize_in_extlang_form(t1, NULL);
+       fail_unless(s != NULL, "Unable to be canonicalize.");
+       fail_unless(lt_strcmp0(s, "zh-hak-CN") == 0, "Unexpected result to be 
canonicalized.");
+       free(s);
+       fail_unless(lt_tag_parse(t1, "sgn-BR", NULL), "should be valid 
langtag.");
+       s = lt_tag_canonicalize_in_extlang_form(t1, NULL);
+       fail_unless(s != NULL, "Unable to be canonicalize.");
+       fail_unless(lt_strcmp0(s, "sgn-bzs") == 0, "Unexpected result to be 
canonicalized.");
+       free(s);
+} TEND
+
 TDEF (lt_tag_match) {
        lt_tag_t *t1;
 
@@ -309,6 +333,7 @@
        T (lt_tag_parse);
        T (lt_tag_parse_with_extra_token);
        T (lt_tag_canonicalize);
+       T (lt_tag_canonicalize_in_extlang_form);
        T (lt_tag_match);
        T (lt_tag_transform);
        T (lt_tag_convert_from_locale_string);
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude 
config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 
--exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh 
old/liblangtag-0.5.2/tests/main.c new/liblangtag-0.5.3/tests/main.c
--- old/liblangtag-0.5.2/tests/main.c   2013-04-22 10:06:57.000000000 +0200
+++ new/liblangtag-0.5.3/tests/main.c   2014-01-16 07:23:21.000000000 +0100
@@ -37,7 +37,7 @@
        const char            *message,
        lt_pointer_t           user_data)
 {
-       lt_error_set(&error, type, "%s", message);
+       lt_error_set(&error, LT_ERR_INVALID, "%s", message);
 }
 
 static void
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude 
config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 
--exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh 
old/liblangtag-0.5.2/tests/tag.c new/liblangtag-0.5.3/tests/tag.c
--- old/liblangtag-0.5.2/tests/tag.c    2013-08-27 12:56:13.000000000 +0200
+++ new/liblangtag-0.5.3/tests/tag.c    2014-04-07 10:31:55.000000000 +0200
@@ -34,7 +34,7 @@
        if (lt_strcmp0(argv[1], "help") == 0) {
          help:
                printf("Usage: %s <command> ...\n"
-                      "commands: canonicalize, dump, from_locale, lookup, 
match, to_locale, transform\n",
+                      "commands: canonicalize, ecanonicalize, dump, 
from_locale, lookup, match, to_locale, transform\n",
                       argv[0]);
        } else if (lt_strcmp0(argv[1], "canonicalize") == 0) {
                char *s;
@@ -44,6 +44,14 @@
                        printf("%s -> %s\n", argv[2], s);
                        free(s);
                }
+       } else if (lt_strcmp0(argv[1], "ecanonicalize") == 0) {
+               char *s;
+
+               if (lt_tag_parse(tag, argv[2], NULL)) {
+                       s = lt_tag_canonicalize_in_extlang_form(tag, NULL);
+                       printf("%s -> %s\n", argv[2], s);
+                       free(s);
+               }
        } else if (lt_strcmp0(argv[1], "dump") == 0) {
                if (lt_tag_parse(tag, argv[2], NULL))
                        lt_tag_dump(tag);

-- 
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to