From ccb8c318277bef408d9f5a8de4fe5a5b7ff00319 Mon Sep 17 00:00:00 2001 From: rediceli Date: Sat, 2 Jan 2016 00:33:47 +0800 Subject: [PATCH] Fix #2717, Driver vmwarefusion fail because of soft link Signed-off-by: rediceli --- drivers/vmwarefusion/fusion_darwin.go | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/drivers/vmwarefusion/fusion_darwin.go b/drivers/vmwarefusion/fusion_darwin.go index 8d17660ddf..08a921501e 100644 --- a/drivers/vmwarefusion/fusion_darwin.go +++ b/drivers/vmwarefusion/fusion_darwin.go @@ -11,6 +11,7 @@ import ( "io/ioutil" "net" "os" + "path/filepath" "regexp" "runtime" "strings" @@ -200,7 +201,11 @@ func (d *Driver) GetIP() (string, error) { func (d *Driver) GetState() (state.State, error) { // VMRUN only tells use if the vm is running or not - if stdout, _, _ := vmrun("list"); strings.Contains(stdout, d.vmxPath()) { + vmxp, err := filepath.EvalSymlinks(d.vmxPath()) + if err != nil { + return state.Error, err + } + if stdout, _, _ := vmrun("list"); strings.Contains(stdout, vmxp) { return state.Running, nil } return state.Stopped, nil