summary refs log tree commit diff
diff options
context:
space:
mode:
authorJoe Landers <jlanders@vmware.com>2010-01-22 12:44:58 -0800
committerPetr Baudis <pasky@ucw.cz>2010-05-12 01:39:27 +0200
commit721d1acb10d336ad53dfefff8a515e3c1f2e3791 (patch)
treee5d6d44cf76db5f132177560af739704d4efa293
parentea8e535ed1178b121e3ad5a5b2ebfd24a3bcf27b (diff)
downloadglibc-721d1acb10d336ad53dfefff8a515e3c1f2e3791.tar.gz
glibc-721d1acb10d336ad53dfefff8a515e3c1f2e3791.tar.xz
glibc-721d1acb10d336ad53dfefff8a515e3c1f2e3791.zip
_nl_load_locale() incorrectly handles mmap() failures
(cherry picked from commit 8b2f25c23374fe79645499b8095f0d2f6eb24f71)
-rw-r--r--ChangeLog5
-rw-r--r--locale/loadlocale.c1
2 files changed, 6 insertions, 0 deletions
diff --git a/ChangeLog b/ChangeLog
index 4f777321f1..a9e21bfd0a 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,8 @@
+2010-01-22  Ulrich Drepper  <drepper@redhat.com>
+
+	* locale/loadlocale.c (_nl_load_locale): Fix recognition of genuine
+	mmap resource problem.  Patch by Joe Landers <jlanders@vmware.com>.
+
 2010-01-22  Jim Meyering  <jim@meyering.net>
 
 	[BZ #11184]
diff --git a/locale/loadlocale.c b/locale/loadlocale.c
index 467dff157a..b91941eae9 100644
--- a/locale/loadlocale.c
+++ b/locale/loadlocale.c
@@ -224,6 +224,7 @@ _nl_load_locale (struct loaded_l10nfile *file, int category)
 		     PROT_READ, MAP_FILE|MAP_COPY, fd, 0);
   if (__builtin_expect (filedata == MAP_FAILED, 0))
     {
+      filedata = NULL;
       if (__builtin_expect (errno, ENOSYS) == ENOSYS)
 	{
 #endif	/* _POSIX_MAPPED_FILES */