From b765cc526d3881f7b655200823c5ca72c03548bc Mon Sep 17 00:00:00 2001
From: Jakob Unterwurzacher
Date: Sun, 26 Feb 2017 22:43:36 +0100
Subject: main: get rid of third open paniclog fd

We have it saved in Stderr and Stdout anyway, let's free this fd
number.
---
 gocryptfs.gz | Bin 1849694 -> 0 bytes
 mount.go     |   5 ++++-
 2 files changed, 4 insertions(+), 1 deletion(-)
 delete mode 100755 gocryptfs.gz

diff --git a/gocryptfs.gz b/gocryptfs.gz
deleted file mode 100755
index 9c90b18..0000000
Binary files a/gocryptfs.gz and /dev/null differ
diff --git a/mount.go b/mount.go
index 7845063..8709124 100644
--- a/mount.go
+++ b/mount.go
@@ -134,6 +134,8 @@ func doMount(args *argContainer) int {
 			// https://github.com/golang/go/issues/325#issuecomment-66049178
 			syscall.Dup2(int(paniclog.Fd()), 1)
 			syscall.Dup2(int(paniclog.Fd()), 2)
+			// No need for the extra FD anymore, we have it saved in Stderr
+			paniclog.Close()
 		}
 		// Disconnect from the controlling terminal by creating a new session.
 		// This prevents us from getting SIGINT when the user presses Ctrl-C
@@ -153,7 +155,8 @@ func doMount(args *argContainer) int {
 	srv.Serve()
 	// Delete empty paniclogs
 	if paniclog != nil {
-		fi, err := paniclog.Stat()
+		// The paniclog FD is saved in Stderr
+		fi, err := os.Stderr.Stat()
 		if err != nil {
 			tlog.Warn.Printf("paniclog fstat error: %v", err)
 		} else if fi.Size() > 0 {
-- 
cgit v1.2.3