From: Jeff King Date: Tue, 23 Feb 2016 07:16:04 GMT Subject: [PATCH 3/3] credential-cache--daemon: change to the socket dir on startup Message-ID: <20160223071604.GC8395@sigill.intra.peff.net> In-Reply-To: <20160223071427.GA7489@sigill.intra.peff.net> From: Jon Griffiths Changing to the socket path stops the daemon holding open the directory the user was in when it was started, preventing umount from working. We're already holding open a socket in that directory, so there's no downside. Thanks-to: Jeff King Signed-off-by: Jon Griffiths Signed-off-by: Jeff King --- credential-cache--daemon.c | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/credential-cache--daemon.c b/credential-cache--daemon.c index 7cfcd37..776f315 100644 --- a/credential-cache--daemon.c +++ b/credential-cache--daemon.c @@ -236,6 +236,14 @@ static void init_socket_directory(const char *path) if (mkdir(dir, 0700) < 0) die_errno("unable to mkdir '%s'", dir); } + + /* + * We don't actually care what our cwd is; we chdir here just to + * be a friendly daemon and avoid tying up our original cwd. + * If this fails, it's OK to just continue without that benefit. + */ + chdir(dir); + free(path_copy); } -- 2.7.2.645.g4e1306c