summary refs log tree commit diff
path: root/hurd/hurdlookup.c
diff options
context:
space:
mode:
Diffstat (limited to 'hurd/hurdlookup.c')
-rw-r--r--hurd/hurdlookup.c5
1 files changed, 4 insertions, 1 deletions
diff --git a/hurd/hurdlookup.c b/hurd/hurdlookup.c
index 227f20e274..41ea32774e 100644
--- a/hurd/hurdlookup.c
+++ b/hurd/hurdlookup.c
@@ -133,7 +133,10 @@ __hurd_file_name_lookup_retry (error_t (*use_init_port)
 #endif
 
 	  /* An empty RETRYNAME indicates we have the final port.  */
-	  if (retryname[0] == '\0')
+	  if (retryname[0] == '\0' &&
+	      /* If reauth'd, we must do one more retry on "" to give the new
+		 translator a chance to make a new port for us.  */
+	      doretry == FS_RETRY_NORMAL)
 	    {
 	      /* We got a successful translation.  Now apply any open-time
 		 action flags we were passed.  */