about summary refs log tree commit diff
path: root/nptl
diff options
context:
space:
mode:
Diffstat (limited to 'nptl')
-rw-r--r--nptl/ChangeLog5
-rw-r--r--nptl/pthread_attr_getstackaddr.c12
2 files changed, 9 insertions, 8 deletions
diff --git a/nptl/ChangeLog b/nptl/ChangeLog
index a9dc41a7a0..8fb8dd4920 100644
--- a/nptl/ChangeLog
+++ b/nptl/ChangeLog
@@ -1,3 +1,8 @@
+2004-02-26  Ulrich Drepper  <drepper@redhat.com>
+
+	* pthread_attr_getstackaddr.c (__pthread_attr_getstackaddr): Don't
+	fail if stack address hasn't been set.  Just return 0.
+
 2004-02-25  Ulrich Drepper  <drepper@redhat.com>
 
 	* Makefile (tests-nolibpthread): Add tst-unload.  Don't link with
diff --git a/nptl/pthread_attr_getstackaddr.c b/nptl/pthread_attr_getstackaddr.c
index f483dc82ef..e6e25880ab 100644
--- a/nptl/pthread_attr_getstackaddr.c
+++ b/nptl/pthread_attr_getstackaddr.c
@@ -1,4 +1,4 @@
-/* Copyright (C) 2002 Free Software Foundation, Inc.
+/* Copyright (C) 2002, 2004 Free Software Foundation, Inc.
    This file is part of the GNU C Library.
    Contributed by Ulrich Drepper <drepper@redhat.com>, 2002.
 
@@ -32,13 +32,9 @@ __pthread_attr_getstackaddr (attr, stackaddr)
   assert (sizeof (*attr) >= sizeof (struct pthread_attr));
   iattr = (struct pthread_attr *) attr;
 
-  /* XXX This function has a stupid definition.  The standard
-     specifies no error value but what is if no stack address was set?
-     We return an error anyway.  */
-  if ((iattr->flags & ATTR_FLAG_STACKADDR) == 0)
-    return EINVAL;
-
-  /* Store the result.  */
+  /* Some code assumes this function to work even if no stack address
+     has been set.  Let them figure it our for themselves what the
+     value means.  Simply store the result.  */
   *stackaddr = iattr->stackaddr;
 
   return 0;