about summary refs log tree commit diff
diff options
context:
space:
mode:
authorAndreas Schwab <schwab@suse.de>2014-05-26 12:31:13 +0200
committerAndreas Schwab <schwab@suse.de>2014-05-26 12:32:57 +0200
commitb60ea6fff5cca4da517ec9cce3af8f3e94d6ac65 (patch)
treede6417ea4e143b663a4a4fc345973ce9c6840096
parent673659263d956f45f1ce0c66900fa7f1129db74a (diff)
downloadglibc-b60ea6fff5cca4da517ec9cce3af8f3e94d6ac65.tar.gz
glibc-b60ea6fff5cca4da517ec9cce3af8f3e94d6ac65.tar.xz
glibc-b60ea6fff5cca4da517ec9cce3af8f3e94d6ac65.zip
Fix searching localedef input on I18NPATH (BZ #16984)
-rw-r--r--ChangeLog7
-rw-r--r--NEWS2
-rw-r--r--locale/programs/locfile.c2
-rw-r--r--locale/programs/repertoire.c2
4 files changed, 10 insertions, 3 deletions
diff --git a/ChangeLog b/ChangeLog
index 823bb40108..a7be30e9a3 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,10 @@
+2014-05-26  Andreas Schwab  <schwab@suse.de>
+
+	[BZ #16984]
+	* locale/programs/repertoire.c (repertoire_read): Add slash
+	between I18NPATH element and file name.
+	* locale/programs/locfile.c (locfile_read): Likewise.
+
 2014-05-26  Stefan Liebler  <stli@linux.vnet.ibm.com>
 
 	* nptl/pthread_mutexattr_settype.c
diff --git a/NEWS b/NEWS
index 35914ea09a..64d2fbb915 100644
--- a/NEWS
+++ b/NEWS
@@ -18,7 +18,7 @@ Version 2.20
   16760, 16770, 16786, 16789, 16791, 16796, 16799, 16800, 16815, 16823,
   16824, 16831, 16838, 16849, 16854, 16876, 16877, 16878, 16885, 16888,
   16890, 16912, 16915, 16916, 16917, 16922, 16927, 16928, 16932, 16943,
-  16958, 16966, 16967, 16965, 16977, 16978.
+  16958, 16966, 16967, 16965, 16977, 16978, 16984.
 
 * The minimum Linux kernel version that this version of the GNU C Library
   can be used with is 2.6.32.
diff --git a/locale/programs/locfile.c b/locale/programs/locfile.c
index de6b426f0c..1c4fe854e0 100644
--- a/locale/programs/locfile.c
+++ b/locale/programs/locfile.c
@@ -84,7 +84,7 @@ locfile_read (struct localedef_t *result, const struct charmap_t *charmap)
 
 		  if (ldfile == NULL)
 		    {
-		      stpcpy (stpcpy (path, next), filename);
+		      stpcpy (stpcpy (stpcpy (path, next), "/"), filename);
 
 		      ldfile = lr_open (path, locfile_hash);
 		    }
diff --git a/locale/programs/repertoire.c b/locale/programs/repertoire.c
index 28e4bcc15f..545ac90bd7 100644
--- a/locale/programs/repertoire.c
+++ b/locale/programs/repertoire.c
@@ -96,7 +96,7 @@ repertoire_read (const char *filename)
 
 		  if (repfile == NULL)
 		    {
-		      stpcpy (stpcpy (path, next), filename);
+		      stpcpy (stpcpy (stpcpy (path, next), "/"), filename);
 
 		      repfile = lr_open (path, repertoiremap_hash);
 		    }