(__pthread_attr_getstack): Return correct address.
authorUlrich Drepper <drepper@redhat.com>
Wed, 27 Dec 2000 08:32:00 +0000 (08:32 +0000)
committerUlrich Drepper <drepper@redhat.com>
Wed, 27 Dec 2000 08:32:00 +0000 (08:32 +0000)
linuxthreads/attr.c

index 9f7a191..580da03 100644 (file)
@@ -258,7 +258,11 @@ int __pthread_attr_getstack (const pthread_attr_t *attr, void **stackaddr,
   /* XXX This function has a stupid definition.  The standard specifies
      no error value but what is if no stack address was set?  We simply
      return the value we have in the member.  */
+#ifndef _STACK_GROWS_UP
+  *stackaddr = (char *) attr->__stackaddr - attr->__stacksize;
+#else
   *stackaddr = attr->__stackaddr;
+#endif
   *stacksize = attr->__stacksize;
   return 0;
 }