From 353bd1220dd413a4df7821217e5aad0599a0fdef Mon Sep 17 00:00:00 2001 From: Farhad Farahi Date: Fri, 1 Jun 2018 20:06:10 +0430 Subject: [PATCH] better error handling --- prettyweather/widget.go | 22 ++++++++++++---------- 1 file changed, 12 insertions(+), 10 deletions(-) diff --git a/prettyweather/widget.go b/prettyweather/widget.go index 297b9d3e..eafbf0f4 100644 --- a/prettyweather/widget.go +++ b/prettyweather/widget.go @@ -48,19 +48,21 @@ func (widget *Widget) prettyWeather() { widget.unit, widget.city = Config.UString("wtf.mods.prettyweather.unit", "m"), Config.UString("wtf.mods.prettyweather.city", "") req, err := http.NewRequest("GET", "https://wttr.in/"+widget.city+"?0"+"?"+widget.unit, nil) if err != nil { - fmt.Println(err) + widget.result = fmt.Sprintf("%s", err.Error()) + return } - req.Header.Set("User-Agent", "curl") response, err := client.Do(req) if err != nil { - fmt.Printf("%s", err) - } else { - defer response.Body.Close() - contents, err := ioutil.ReadAll(response.Body) - if err != nil { - fmt.Printf("%s", err) - } - widget.result = fmt.Sprintf("%s", strings.TrimSpace(string(contents))) + widget.result = fmt.Sprintf("%s", err.Error()) + return } + defer response.Body.Close() + contents, err := ioutil.ReadAll(response.Body) + if err != nil { + widget.result = fmt.Sprintf("%s", err.Error()) + return + } + widget.result = fmt.Sprintf("%s", strings.TrimSpace(string(contents))) + }