about summary refs log tree commit diff
diff options
context:
space:
mode:
-rw-r--r--ChangeLog4
-rw-r--r--elf/ldconfig.c19
-rw-r--r--linuxthreads_db/td_thr_getfpregs.c7
-rw-r--r--linuxthreads_db/td_thr_getgregs.c8
-rw-r--r--localedata/locales/an_ES8
5 files changed, 24 insertions, 22 deletions
diff --git a/ChangeLog b/ChangeLog
index da934cca3d..14e6159931 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,7 @@
+2003-08-25  Ulrich Drepper  <drepper@redhat.com>
+
+	* elf/ldconfig.c (search_dir): Revert patch of 2003-7-21.
+
 2003-08-22  Ulrich Drepper  <drepper@redhat.com>
 
 	* io/fcntl.h (posix_fallocate): Change type of third parameter to
diff --git a/elf/ldconfig.c b/elf/ldconfig.c
index 2a24a17799..444dc73750 100644
--- a/elf/ldconfig.c
+++ b/elf/ldconfig.c
@@ -787,23 +787,16 @@ search_dir (const struct dir_entry *entry)
 	  continue;
 	}
 
-      if (real_name != real_file_name)
-	free (real_name);
-
-      /* A link may just point to itself.  */
+      /* Links will just point to itself.  */
       if (is_link)
 	{
-	  /* If the path the link points to isn't its soname, we treat
-	     it as a normal file.  */
-	  if (strcmp (basename (real_name), soname) != 0)
-	    is_link = 0;
-	  else
-	    {
-	      free (soname);
-	      soname = xstrdup (direntry->d_name);
-	    }
+	  free (soname);
+	  soname = xstrdup (direntry->d_name);
 	}
 
+      if (real_name != real_file_name)
+	free (real_name);
+
       if (flag == FLAG_ELF
 	  && (entry->flag == FLAG_ELF_LIBC5
 	      || entry->flag == FLAG_ELF_LIBC6))
diff --git a/linuxthreads_db/td_thr_getfpregs.c b/linuxthreads_db/td_thr_getfpregs.c
index ea02760c93..31c55c8765 100644
--- a/linuxthreads_db/td_thr_getfpregs.c
+++ b/linuxthreads_db/td_thr_getfpregs.c
@@ -1,5 +1,5 @@
 /* Get a thread's floating-point register set.
-   Copyright (C) 1999, 2001 Free Software Foundation, Inc.
+   Copyright (C) 1999, 2001, 2003 Free Software Foundation, Inc.
    This file is part of the GNU C Library.
    Contributed by Ulrich Drepper <drepper@cygnus.com>, 1999.
 
@@ -30,7 +30,10 @@ td_thr_getfpregs (const td_thrhandle_t *th, prfpregset_t *regset)
 
   if (th->th_unique == NULL)
     {
-      memset (regset, '\0', sizeof (*regset));
+      /* No data yet.  Use the main thread.  */
+      pid_t pid = ps_getpid (th->th_ta_p->ph);
+      if (ps_lgetfpregs (th->th_ta_p->ph, pid, regset) != PS_OK)
+	return TD_ERR;
       return TD_OK;
     }
 
diff --git a/linuxthreads_db/td_thr_getgregs.c b/linuxthreads_db/td_thr_getgregs.c
index 6f00677d66..a9ec6a37da 100644
--- a/linuxthreads_db/td_thr_getgregs.c
+++ b/linuxthreads_db/td_thr_getgregs.c
@@ -1,5 +1,5 @@
 /* Get a thread's general register set.
-   Copyright (C) 1999, 2000, 2001 Free Software Foundation, Inc.
+   Copyright (C) 1999, 2000, 2001, 2003 Free Software Foundation, Inc.
    This file is part of the GNU C Library.
    Contributed by Ulrich Drepper <drepper@cygnus.com>, 1999.
 
@@ -30,8 +30,10 @@ td_thr_getgregs (const td_thrhandle_t *th, prgregset_t gregs)
 
   if (th->th_unique == NULL)
     {
-      /* No data yet.  */
-      memset (gregs, '\0', sizeof (prgregset_t));
+      /* No data yet.  Use the main thread.  */
+      pid_t pid = ps_getpid (th->th_ta_p->ph);
+      if (ps_lgetregs (th->th_ta_p->ph, pid, gregs) != PS_OK)
+	return TD_ERR;
       return TD_OK;
     }
 
diff --git a/localedata/locales/an_ES b/localedata/locales/an_ES
index 410df2d8b1..ef64650ec8 100644
--- a/localedata/locales/an_ES
+++ b/localedata/locales/an_ES
@@ -26,10 +26,10 @@ contact    "Jordi Mallach Pérez"
 email      "bug-glibc@gnu.org"
 tel        ""
 fax        ""
-language   "an"
-territory  "ES"
-revision   "1.0"
-date       "2003-06-15"
+language   "Aragonese"
+territory  "Spain"
+revision   "1.1"
+date       "2003-08-25"
 %
 category  "i18n:1999";LC_IDENTIFICATION
 category  "i18n:1999";LC_CTYPE