Date: Saturday, June 25, 2011 @ 07:56:19
  Author: allan
Revision: 128661

upgpkg: glibc 2.14-4
re-revert problem commit (FS#24615)

Added:
  glibc/trunk/glibc-2.14-revert-4462fad3.patch
Modified:
  glibc/trunk/PKGBUILD

----------------------------------+
 PKGBUILD                         |   14 +++++++++-----
 glibc-2.14-revert-4462fad3.patch |   37 +++++++++++++++++++++++++++++++++++++
 2 files changed, 46 insertions(+), 5 deletions(-)

Modified: PKGBUILD
===================================================================
--- PKGBUILD    2011-06-25 11:40:13 UTC (rev 128660)
+++ PKGBUILD    2011-06-25 11:56:19 UTC (rev 128661)
@@ -6,7 +6,7 @@
 
 pkgname=glibc
 pkgver=2.14
-pkgrel=3
+pkgrel=4
 _glibcdate=20110617
 pkgdesc="GNU C Library"
 arch=('i686' 'x86_64')
@@ -27,7 +27,8 @@
         glibc-2.12.2-ignore-origin-of-privileged-program.patch
         glibc-2.13-futex.patch
         glibc-2.14-libdl-crash.patch
-        glibc-2.14-fix-resolver-crash-typo.patch
+        #glibc-2.14-fix-resolver-crash-typo.patch
+        glibc-2.14-revert-4462fad3.patch
         glibc-2.14-reexport-rpc-interface.patch
         glibc-2.14-reinstall-nis-rpc-headers.patch
         nscd
@@ -41,7 +42,7 @@
          'b042647ea7d6f22ad319e12e796bd13e'
          '7d0154b7e17ea218c9fa953599d24cc4'
          'cea62cc6b903d222c5f26e05a3c0e0e6'
-         '73bfaafe25b93f357cf6a3b5eeb70e1b'
+         '46e56492cccb1c9172ed3a235cf43c6c'
          'c5de2a946215d647c8af5432ec4b0da0'
          '55febbb72139ac7b65757df085024b83'
          'b587ee3a70c9b3713099295609afde49'
@@ -85,8 +86,11 @@
   # http://sourceware.org/ml/libc-alpha/2011-06/msg00006.html
   patch -Np1 -i ${srcdir}/glibc-2.14-libdl-crash.patch
 
-  # http://sourceware.org/git/?p=glibc.git;a=commitdiff;h=57912a71 (FS#24615)
-  patch -Np1 -i ${srcdir}/glibc-2.14-fix-resolver-crash-typo.patch
+  # This fixes the main segfault but not the assert fail (FS#24615)
+  # http://sourceware.org/git/?p=glibc.git;a=commitdiff;h=57912a71 
+  #patch -Np1 -i ${srcdir}/glibc-2.14-fix-resolver-crash-typo.patch
+  # resort to reverting the bad commit completely for the moment
+  patch -Np1 -i ${srcdir}/glibc-2.14-revert-4462fad3.patch
 
   # re-export RPC interface until libtirpc is ready as a replacement
   # http://sourceware.org/git/?p=glibc.git;a=commitdiff;h=acee4873 (only 
fedora branch...)

Added: glibc-2.14-revert-4462fad3.patch
===================================================================
--- glibc-2.14-revert-4462fad3.patch                            (rev 0)
+++ glibc-2.14-revert-4462fad3.patch    2011-06-25 11:56:19 UTC (rev 128661)
@@ -0,0 +1,37 @@
+diff -Naur glibc-orig//resolv/res_send.c glibc/resolv/res_send.c
+--- glibc-orig//resolv/res_send.c      2011-06-10 18:59:03.041436996 +1000
++++ glibc/resolv/res_send.c    2011-06-10 19:08:09.379309323 +1000
+@@ -549,7 +549,7 @@
+                                   ns, ansp, ansp2, nansp2, resplen2);
+                       if (n < 0)
+                               return (-1);
+-                      if (n == 0 && (buf2 == NULL || resplen2 == 0))
++                      if (n == 0)
+                               goto next_ns;
+               } else {
+                       /* Use datagrams. */
+@@ -559,7 +559,7 @@
+                                   ansp2, nansp2, resplen2);
+                       if (n < 0)
+                               return (-1);
+-                      if (n == 0 && (buf2 == NULL || resplen2 == 0))
++                      if (n == 0)
+                               goto next_ns;
+                       if (v_circuit)
+                         // XXX Check whether both requests failed or
+@@ -1275,14 +1275,10 @@
+                               (*thisresplenp > *thisanssizp)
+                               ? *thisanssizp : *thisresplenp);
+ 
+-                      if (recvresp1 || (buf2 != NULL && recvresp2)) {
+-                        *resplen2 = 0;
++                      if (recvresp1 || (buf2 != NULL && recvresp2))
+                         return resplen;
+-                      }
+                       if (buf2 != NULL)
+                         {
+-                          /* No data from the first reply.  */
+-                          resplen = 0;
+                           /* We are waiting for a possible second reply.  */
+                           if (hp->id == anhp->id)
+                             recvresp1 = 1;

Reply via email to