summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--checkdir.go3
-rw-r--r--mount.go6
2 files changed, 8 insertions, 1 deletions
diff --git a/checkdir.go b/checkdir.go
index 6f7f75d..63dfef0 100644
--- a/checkdir.go
+++ b/checkdir.go
@@ -6,7 +6,8 @@ import (
"os"
)
-// checkDirEmpty - check if "dir" exists and is an empty directory
+// checkDirEmpty - check if "dir" exists and is an empty directory.
+// Returns an *os.PathError if Stat() on the path fails.
func checkDirEmpty(dir string) error {
err := checkDir(dir)
if err != nil {
diff --git a/mount.go b/mount.go
index c3fda80..6ee7c36 100644
--- a/mount.go
+++ b/mount.go
@@ -58,6 +58,12 @@ func doMount(args *argContainer) int {
err = checkDir(args.mountpoint)
} else {
err = checkDirEmpty(args.mountpoint)
+ // OSXFuse will create the mountpoint for us if it is below /Volumes/
+ if runtime.GOOS == "darwin" && os.IsNotExist(err) && strings.HasPrefix(args.mountpoint, "/Volumes/") {
+ tlog.Info.Printf("Mountpoint %q does not exist, but should be created by OSXFuse",
+ args.mountpoint)
+ err = nil
+ }
}
if err != nil {
tlog.Fatal.Printf("Invalid mountpoint: %v", err)