|
|
@@ -828,7 +828,6 @@ bool extract_sockaddr(struct pool *pool, char *url)
|
|
|
struct addrinfo hints, *res;
|
|
|
int url_len, port_len = 0;
|
|
|
|
|
|
- pool->sockaddr_url = url;
|
|
|
url_begin = strstr(url, "//");
|
|
|
if (!url_begin)
|
|
|
url_begin = url;
|
|
|
@@ -854,6 +853,7 @@ bool extract_sockaddr(struct pool *pool, char *url)
|
|
|
else
|
|
|
strcpy(port, "80");
|
|
|
|
|
|
+ free(pool->stratum_port);
|
|
|
pool->stratum_port = strdup(port);
|
|
|
|
|
|
memset(&hints, 0, sizeof(struct addrinfo));
|
|
|
@@ -867,6 +867,7 @@ bool extract_sockaddr(struct pool *pool, char *url)
|
|
|
}
|
|
|
|
|
|
pool->server = (struct sockaddr_in *)res->ai_addr;
|
|
|
+ free(pool->sockaddr_url);
|
|
|
pool->sockaddr_url = strdup(url_address);
|
|
|
|
|
|
return true;
|