[hurd,commited] hurd: Fix looking up /dev/tty/ (BZ 34070)
Samuel Thibault <[email protected]>
| Newsgroups | gmane.os.hurd.cvs,gmane.comp.lib.glibc.alpha |
|---|---|
| Message-ID | <[email protected]> |
We need to keep the heading / to properly get an ENOTDIR, and set file_name rather than change the retryname content. Also, *result is normally used for the startdir. --- hurd/lookup-retry.c | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/hurd/lookup-retry.c b/hurd/lookup-retry.c index 94ff0e3222..2a5ea16cba 100644 --- a/hurd/lookup-retry.c +++ b/hurd/lookup-retry.c @@ -323,9 +323,12 @@ __hurd_file_name_lookup_retry (error_t (*use_init_port) err = opentty (result); goto out; case '/': - if (err = opentty (&startdir)) + if (*result != MACH_PORT_NULL) + __mach_port_deallocate (__mach_task_self (), *result); + if (err = opentty (result)) goto out; - memmove (retryname, &retryname[4], strlen(retryname + 4) + 1); + startdir = *result; + file_name = &retryname[3]; break; default: goto bad_magic; -- 2.53.0