From 2a4e89aa517a62644e40121f01d564980527e6bd Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Mislav=20Marohni=C4=87?= Date: Fri, 19 Mar 2021 18:52:27 +0100 Subject: [PATCH 1/3] Allow running project on Windows --- go.mod | 2 ++ 1 file changed, 2 insertions(+) diff --git a/go.mod b/go.mod index 04355d2..39cdc0d 100644 --- a/go.mod +++ b/go.mod @@ -1,3 +1,5 @@ module github.com/pkg/browser go 1.14 + +require golang.org/x/sys v0.0.0-20210319071255-635bc2c9138d // indirect From dfaaea7e025733f271660a10b6be708b3a82914b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Mislav=20Marohni=C4=87?= Date: Fri, 19 Mar 2021 18:52:59 +0100 Subject: [PATCH 2/3] Un-export Window-specific identifiers --- browser_windows.go | 6 +++--- zbrowser_windows.go | 6 +++--- 2 files changed, 6 insertions(+), 6 deletions(-) diff --git a/browser_windows.go b/browser_windows.go index a2b30d3..b603287 100644 --- a/browser_windows.go +++ b/browser_windows.go @@ -1,12 +1,12 @@ //go:generate mkwinsyscall -output zbrowser_windows.go browser_windows.go -//sys ShellExecute(hwnd int, verb string, file string, args string, cwd string, showCmd int) (err error) = shell32.ShellExecuteW +//sys shellExecute(hwnd int, verb string, file string, args string, cwd string, showCmd int) (err error) = shell32.ShellExecuteW package browser import "os/exec" -const SW_SHOWNORMAL = 1 +const sW_SHOWNORMAL = 1 func openBrowser(url string) error { - return ShellExecute(0, "", url, "", "", SW_SHOWNORMAL) + return shellExecute(0, "", url, "", "", sW_SHOWNORMAL) } func setFlags(cmd *exec.Cmd) { diff --git a/zbrowser_windows.go b/zbrowser_windows.go index cbb25ba..4b2d9eb 100644 --- a/zbrowser_windows.go +++ b/zbrowser_windows.go @@ -43,7 +43,7 @@ var ( procShellExecuteW = modshell32.NewProc("ShellExecuteW") ) -func ShellExecute(hwnd int, verb string, file string, args string, cwd string, showCmd int) (err error) { +func shellExecute(hwnd int, verb string, file string, args string, cwd string, showCmd int) (err error) { var _p0 *uint16 _p0, err = syscall.UTF16PtrFromString(verb) if err != nil { @@ -64,10 +64,10 @@ func ShellExecute(hwnd int, verb string, file string, args string, cwd string, s if err != nil { return } - return _ShellExecute(hwnd, _p0, _p1, _p2, _p3, showCmd) + return _shellExecute(hwnd, _p0, _p1, _p2, _p3, showCmd) } -func _ShellExecute(hwnd int, verb *uint16, file *uint16, args *uint16, cwd *uint16, showCmd int) (err error) { +func _shellExecute(hwnd int, verb *uint16, file *uint16, args *uint16, cwd *uint16, showCmd int) (err error) { r1, _, e1 := syscall.Syscall6(procShellExecuteW.Addr(), 6, uintptr(hwnd), uintptr(unsafe.Pointer(verb)), uintptr(unsafe.Pointer(file)), uintptr(unsafe.Pointer(args)), uintptr(unsafe.Pointer(cwd)), uintptr(showCmd)) if r1 == 0 { err = errnoErr(e1) From 4e8450715932b5d74661d35e8f8342f9f213fbb5 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Mislav=20Marohni=C4=87?= Date: Fri, 19 Mar 2021 19:17:42 +0100 Subject: [PATCH 3/3] Remove obsolete `setFlags` --- browser.go | 1 - browser_darwin.go | 2 -- browser_freebsd.go | 2 -- browser_linux.go | 2 -- browser_openbsd.go | 2 -- browser_unsupported.go | 2 -- browser_windows.go | 6 ++---- 7 files changed, 2 insertions(+), 15 deletions(-) diff --git a/browser.go b/browser.go index 3e59690..d92c4cd 100644 --- a/browser.go +++ b/browser.go @@ -58,6 +58,5 @@ func runCmd(prog string, args ...string) error { cmd := exec.Command(prog, args...) cmd.Stdout = Stdout cmd.Stderr = Stderr - setFlags(cmd) return cmd.Run() } diff --git a/browser_darwin.go b/browser_darwin.go index 6dff040..da9faaa 100644 --- a/browser_darwin.go +++ b/browser_darwin.go @@ -5,5 +5,3 @@ import "os/exec" func openBrowser(url string) error { return runCmd("open", url) } - -func setFlags(cmd *exec.Cmd) {} diff --git a/browser_freebsd.go b/browser_freebsd.go index 8cc0a7f..4fc7ff0 100644 --- a/browser_freebsd.go +++ b/browser_freebsd.go @@ -12,5 +12,3 @@ func openBrowser(url string) error { } return err } - -func setFlags(cmd *exec.Cmd) {} diff --git a/browser_linux.go b/browser_linux.go index ab9b4f6..d26cddd 100644 --- a/browser_linux.go +++ b/browser_linux.go @@ -19,5 +19,3 @@ func openBrowser(url string) error { return &exec.Error{Name: strings.Join(providers, ","), Err: exec.ErrNotFound} } - -func setFlags(cmd *exec.Cmd) {} diff --git a/browser_openbsd.go b/browser_openbsd.go index 8cc0a7f..4fc7ff0 100644 --- a/browser_openbsd.go +++ b/browser_openbsd.go @@ -12,5 +12,3 @@ func openBrowser(url string) error { } return err } - -func setFlags(cmd *exec.Cmd) {} diff --git a/browser_unsupported.go b/browser_unsupported.go index 5eb17b0..af26ff9 100644 --- a/browser_unsupported.go +++ b/browser_unsupported.go @@ -11,5 +11,3 @@ import ( func openBrowser(url string) error { return fmt.Errorf("openBrowser: unsupported operating system: %v", runtime.GOOS) } - -func setFlags(cmd *exec.Cmd) {} diff --git a/browser_windows.go b/browser_windows.go index b603287..2ebff6e 100644 --- a/browser_windows.go +++ b/browser_windows.go @@ -3,11 +3,9 @@ package browser import "os/exec" + const sW_SHOWNORMAL = 1 func openBrowser(url string) error { - return shellExecute(0, "", url, "", "", sW_SHOWNORMAL) -} - -func setFlags(cmd *exec.Cmd) { + return shellExecute(0, "", url, "", "", sW_SHOWNORMAL) }