From 91c0bb0d6d1e8f55bb9f10b3a9068c9677ede0ee Mon Sep 17 00:00:00 2001 From: Thomas Bushnell Date: Fri, 30 Apr 1999 11:03:34 +0000 Subject: Wed Apr 28 03:06:19 1999 Thomas Bushnell, BSG * fetch-root.c (fshelp_fetch_root): Don't deallocate the INIT_PORT_CWDIR after starting the passive translator; we still need to keep our reference around until the getroot call happens. Reported by Marcus Brinkmann (Marcus.Brinkmann@ruhr-uni-bochum.de). --- libfshelp/ChangeLog | 7 +++++++ libfshelp/fetch-root.c | 4 +++- 2 files changed, 10 insertions(+), 1 deletion(-) (limited to 'libfshelp') diff --git a/libfshelp/ChangeLog b/libfshelp/ChangeLog index 943b76e3..ec1b5cfe 100644 --- a/libfshelp/ChangeLog +++ b/libfshelp/ChangeLog @@ -1,3 +1,10 @@ +Wed Apr 28 03:06:19 1999 Thomas Bushnell, BSG + + * fetch-root.c (fshelp_fetch_root): Don't deallocate the + INIT_PORT_CWDIR after starting the passive translator; we still + need to keep our reference around until the getroot call happens. + Reported by Marcus Brinkmann (Marcus.Brinkmann@ruhr-uni-bochum.de). + Tue Apr 20 21:43:20 1999 Thomas Bushnell, BSG * fetch-root.c (fshelp_fetch_root): When starting a passive diff --git a/libfshelp/fetch-root.c b/libfshelp/fetch-root.c index 76839993..f5971a6f 100644 --- a/libfshelp/fetch-root.c +++ b/libfshelp/fetch-root.c @@ -136,8 +136,10 @@ fshelp_fetch_root (struct transbox *box, void *cookie, 0, &control); for (i = 0; i <= STDERR_FILENO; i++) mach_port_deallocate (mach_task_self (), fds[i]); + for (i = 0; i < INIT_PORT_MAX; i++) - mach_port_deallocate (mach_task_self (), ports[i]); + if (i != INIT_PORT_CWDIR) + mach_port_deallocate (mach_task_self (), ports[i]); mutex_lock (box->lock); -- cgit v1.2.3