From 69b2e396ac34cea94925031f4a2ca165385108e9 Mon Sep 17 00:00:00 2001 From: Yota Toyama Date: Sat, 18 Nov 2017 20:17:52 +0900 Subject: [PATCH] Disable timeout by default --- arguments.go | 12 ++++++++---- url_checker.go | 5 +++++ 2 files changed, 13 insertions(+), 4 deletions(-) diff --git a/arguments.go b/arguments.go index 3a54711..3cc1103 100644 --- a/arguments.go +++ b/arguments.go @@ -27,7 +27,7 @@ Usage: Options: -c, --concurrency Set max number of concurrent HTTP requests [default: %v] - -t, --timeout Set timeout for HTTP requests in seconds [default: 5] + -t, --timeout Set timeout for HTTP requests in seconds -v, --verbose Be verbose` type arguments struct { @@ -50,10 +50,14 @@ func getArgs() (arguments, error) { return arguments{}, err } - t, err := strconv.ParseFloat(args["--timeout"].(string), 64) + t := 0.0 - if err != nil { - return arguments{}, err + if args["--timeout"] != nil { + t, err = strconv.ParseFloat(args["--timeout"].(string), 64) + + if err != nil { + return arguments{}, err + } } return arguments{ diff --git a/url_checker.go b/url_checker.go index 1cefabe..2d8224e 100644 --- a/url_checker.go +++ b/url_checker.go @@ -20,6 +20,11 @@ func (c urlChecker) Check(u string) error { c.semaphore.Request() defer c.semaphore.Release() + if c.timeout == 0 { + _, _, err := fasthttp.Get(nil, u) + return err + } + _, _, err := fasthttp.GetTimeout(nil, u, c.timeout) return err }