From 2af136cc780c32c68ae13911fb7c25cb3eb2edf3 Mon Sep 17 00:00:00 2001 From: Cristian Dominguez Date: Sat, 19 Sep 2020 18:48:00 -0300 Subject: [PATCH] Return error if it's an invalid URL --- pkg/cmd/gist/view/view.go | 14 ++++++++++---- 1 file changed, 10 insertions(+), 4 deletions(-) diff --git a/pkg/cmd/gist/view/view.go b/pkg/cmd/gist/view/view.go index 5ca209171..919b0d090 100644 --- a/pkg/cmd/gist/view/view.go +++ b/pkg/cmd/gist/view/view.go @@ -71,10 +71,16 @@ func viewRun(opts *ViewOptions) error { return utils.OpenInBrowser(gistURL) } - u, err := url.Parse(opts.Selector) - if err == nil { - if strings.HasPrefix(u.Path, "/") { - gistID = strings.Split(u.Path, "/")[2] + if strings.Contains(gistID, "/") { + u, err := url.Parse(opts.Selector) + if err == nil && strings.HasPrefix(u.Path, "/") { + split := strings.Split(u.Path, "/") + + if len(split) > 2 && split[2] != "" { + gistID = strings.Split(u.Path, "/")[2] + } else { + return fmt.Errorf("Invalid gist URL %s", u) + } } }