[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

r2431 - in glibc-package/trunk/debian: . patches patches/any



Author: aurel32
Date: 2007-07-21 22:51:27 +0000 (Sat, 21 Jul 2007)
New Revision: 2431

Added:
   glibc-package/trunk/debian/patches/any/cvs-ld_library_path.diff
Modified:
   glibc-package/trunk/debian/changelog
   glibc-package/trunk/debian/patches/series
Log:
  * patches/any/cvs-ld_library_path.diff: new patch from CVS to fix segfaults
    with empty LD_LIBRARY_PATH variable.



Modified: glibc-package/trunk/debian/changelog
===================================================================
--- glibc-package/trunk/debian/changelog	2007-07-21 22:30:13 UTC (rev 2430)
+++ glibc-package/trunk/debian/changelog	2007-07-21 22:51:27 UTC (rev 2431)
@@ -19,6 +19,8 @@
     - alpha (untested)
     - ia64 (untested)
     - *i386 (floating point regressions).
+  * patches/any/cvs-ld_library_path.diff: new patch from CVS to fix segfaults
+    with empty LD_LIBRARY_PATH variable.
 
   [ Pierre Habouzit ]
   * rules.d/debhelper.mk: add some magic to copy debian/bug/$pkg/ files into
@@ -45,8 +47,11 @@
   * hurd-i386/local-sigsuspend-nocancel.diff: renamed into
     submitted-sigsuspend-nocancel.diff.
 
- -- Aurelien Jarno <aurel32@debian.org>  Sun, 22 Jul 2007 00:27:01 +0200
+  [ Aurelien Jarno ]
+  * 
 
+ -- Aurelien Jarno <aurel32@debian.org>  Sun, 22 Jul 2007 00:50:17 +0200
+
 glibc (2.6-2) unstable; urgency=low
 
   [ Clint Adams ]

Added: glibc-package/trunk/debian/patches/any/cvs-ld_library_path.diff
===================================================================
--- glibc-package/trunk/debian/patches/any/cvs-ld_library_path.diff	                        (rev 0)
+++ glibc-package/trunk/debian/patches/any/cvs-ld_library_path.diff	2007-07-21 22:51:27 UTC (rev 2431)
@@ -0,0 +1,30 @@
+2007-07-11  Jakub Jelinek  <jakub@redhat.com>
+
+	[BZ #4776]
+	* elf/dl-load.c (_dl_rtld_di_serinfo): Output / in LD_LIBRARY_PATH,
+	RPATH etc. as "/" rather than "", don't segfault on empty paths,
+	instead output ".".
+
+--- libc/elf/dl-load.c.jj	2007-07-03 12:36:59.000000000 +0200
++++ libc/elf/dl-load.c	2007-07-11 13:21:18.000000000 +0200
+@@ -2273,14 +2273,17 @@ _dl_rtld_di_serinfo (struct link_map *lo
+ 	      if (counting)
+ 		{
+ 		  si->dls_cnt++;
+-		  si->dls_size += r->dirnamelen;
++		  si->dls_size += r->dirnamelen < 2 ? r->dirnamelen : 2;
+ 		}
+ 	      else
+ 		{
+ 		  Dl_serpath *const sp = &si->dls_serpath[idx++];
+ 		  sp->dls_name = allocptr;
+-		  allocptr = __mempcpy (allocptr,
+-					r->dirname, r->dirnamelen - 1);
++		  if (r->dirnamelen < 2)
++		    *allocptr++ = r->dirnamelen ? '/' : '.';
++		  else
++		    allocptr = __mempcpy (allocptr,
++					  r->dirname, r->dirnamelen - 1);
+ 		  *allocptr++ = '\0';
+ 		  sp->dls_flags = flags;
+ 		}

Modified: glibc-package/trunk/debian/patches/series
===================================================================
--- glibc-package/trunk/debian/patches/series	2007-07-21 22:30:13 UTC (rev 2430)
+++ glibc-package/trunk/debian/patches/series	2007-07-21 22:51:27 UTC (rev 2431)
@@ -97,6 +97,7 @@
 all/local-pt_BR.diff 
 
 any/cvs-ld-integer-overflow.diff -p1
+any/cvs-ld_library_path.diff -p1
 any/cvs-malloc.diff 
 any/cvs-nscd-short-replies.diff 
 any/cvs-nis-nss-default.diff



Reply to: