From 091d6f558821db718702f1dd9636637d2c429d6f Mon Sep 17 00:00:00 2001 From: Thorsten von Eicken Date: Fri, 26 Aug 2016 23:02:41 -0700 Subject: [PATCH] gpio: don't fail if pin is already exported --- host/generic/digitalpin.go | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/host/generic/digitalpin.go b/host/generic/digitalpin.go index 80a81ea..525eeb4 100644 --- a/host/generic/digitalpin.go +++ b/host/generic/digitalpin.go @@ -10,6 +10,7 @@ import ( "os" "path" "strconv" + "syscall" "time" "github.com/kidoman/embd" @@ -69,6 +70,9 @@ func (p *digitalPin) export() error { } defer exporter.Close() _, err = exporter.WriteString(strconv.Itoa(p.n)) + if e, ok := err.(*os.PathError); ok && e.Err == syscall.EBUSY { + return nil // EBUSY -> the pin has already been exported + } return err }