diff options
-rw-r--r-- | ChangeLog | 3 | ||||
-rw-r--r-- | sysdeps/mach/hurd/i386/tls.h | 11 |
2 files changed, 10 insertions, 4 deletions
diff --git a/ChangeLog b/ChangeLog index be29504346..ed1ddb7875 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,5 +1,8 @@ 2004-10-23 Roland McGrath <roland@frob.com> + * sysdeps/mach/hurd/i386/tls.h (_hurd_tls_init): Don't return early + after an RPC succeeds. + * sysdeps/vax, sysdeps/unix/bsd/vax: Directories and all files removed. These are now in the ports repository. * sysdeps/tahoe, sysdeps/unix/bsd/tahoe: Likewise. 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"; } } |