summaryrefslogtreecommitdiff
path: root/sysdeps/mach
diff options
context:
space:
mode:
authorRoland McGrath <roland@gnu.org>2004-10-24 01:59:26 +0000
committerRoland McGrath <roland@gnu.org>2004-10-24 01:59:26 +0000
commit02d6ab9fc4696a101c8a6266605f0792ed6844f5 (patch)
tree15003daee769f52a9590b5dd82a68d1d5f7ad79a /sysdeps/mach
parent82d247202c3b13d8129710db0d0170154f75142d (diff)
downloadglibc-02d6ab9fc4696a101c8a6266605f0792ed6844f5.tar.gz
* sysdeps/mach/hurd/i386/tls.h (_hurd_tls_init): Don't return early
after an RPC succeeds.
Diffstat (limited to 'sysdeps/mach')
-rw-r--r--sysdeps/mach/hurd/i386/tls.h11
1 files changed, 7 insertions, 4 deletions
diff --git a/sysdeps/mach/hurd/i386/tls.h b/sysdeps/mach/hurd/i386/tls.h
index 8adbee98fc..f81180f9b1 100644
--- a/sysdeps/mach/hurd/i386/tls.h
+++ b/sysdeps/mach/hurd/i386/tls.h
@@ -75,9 +75,10 @@ _hurd_tls_init (tcbhead_t *tcb, int secondcall)
sel = 0x27;
err = __i386_set_ldt (tcb->self, sel, &desc, 1);
assert_perror (err);
- return "i386_set_ldt failed";
+ if (err)
+ return "i386_set_ldt failed";
}
- else
+ else if (err)
{
assert_perror (err); /* Separate from above with different line #. */
return "i386_set_gdt failed";
@@ -95,13 +96,15 @@ _hurd_tls_init (tcbhead_t *tcb, int secondcall)
{
error_t err = __i386_set_ldt (tcb->self, sel, &desc, 1);
assert_perror (err);
- return "i386_set_ldt failed";
+ if (err)
+ return "i386_set_ldt failed";
}
else
{
error_t err = __i386_set_gdt (tcb->self, &sel, desc);
assert_perror (err);
- return "i386_set_gdt failed";
+ if (err)
+ return "i386_set_gdt failed";
}
}