From db93641941ec995190921f477d834a1b80c5752c Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?P=C3=A9ter=20Szil=C3=A1gyi?= <peterke@gmail.com>
Date: Thu, 30 Mar 2017 12:52:34 +0300
Subject: [PATCH] ethstats: work around weird URL scheme parsing issues

---
 ethstats/ethstats.go | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/ethstats/ethstats.go b/ethstats/ethstats.go
index 9d494b615..10f611c79 100644
--- a/ethstats/ethstats.go
+++ b/ethstats/ethstats.go
@@ -23,10 +23,10 @@ import (
 	"fmt"
 	"math/big"
 	"net"
-	"net/url"
 	"regexp"
 	"runtime"
 	"strconv"
+	"strings"
 	"time"
 
 	"github.com/ethereum/go-ethereum/common"
@@ -128,7 +128,7 @@ func (s *Service) loop() {
 		path := fmt.Sprintf("%s/api", s.host)
 		urls := []string{path}
 
-		if parsed, err := url.Parse(path); err == nil && !parsed.IsAbs() {
+		if !strings.Contains(path, "://") { // url.Parse and url.IsAbs is unsuitable (https://github.com/golang/go/issues/19779)
 			urls = []string{"wss://" + path, "ws://" + path}
 		}
 		// Establish a websocket connection to the server on any supported URL
-- 
GitLab