summaryrefslogtreecommitdiff
path: root/xmake/modules/private/service/remote_cache/client.lua
diff options
context:
space:
mode:
authorruki <[email protected]>2022-06-25 16:32:18 +0800
committerruki <[email protected]>2022-06-25 16:32:18 +0800
commit0a5434eb09ae5c3a263afbb7d535b135d8f60677 (patch)
tree6414d45c9272f5881689865e9da56427246754d4 /xmake/modules/private/service/remote_cache/client.lua
parent9c9cb6c16989be41c73fcf200370da73f070d0db (diff)
fallback remote cache
Diffstat (limited to 'xmake/modules/private/service/remote_cache/client.lua')
-rw-r--r--xmake/modules/private/service/remote_cache/client.lua11
1 files changed, 10 insertions, 1 deletions
diff --git a/xmake/modules/private/service/remote_cache/client.lua b/xmake/modules/private/service/remote_cache/client.lua
index 87f0f46ed..1a46cd34f 100644
--- a/xmake/modules/private/service/remote_cache/client.lua
+++ b/xmake/modules/private/service/remote_cache/client.lua
@@ -418,6 +418,11 @@ function remote_cache_client:port()
return self._PORT
end
+-- is server unreachable?
+function remote_cache_client:unreachable()
+ return self._UNREACHABLE
+end
+
-- open a free socket
function remote_cache_client:_sock_open()
local freesocks = self._FREESOCKS
@@ -431,7 +436,11 @@ function remote_cache_client:_sock_open()
local addr = self:addr()
local port = self:port()
- local sock = assert(socket.connect(addr, port), "%s: server unreachable!", self)
+ local sock = socket.connect(addr, port)
+ if not sock then
+ self._UNREACHABLE = true
+ raise("%s: server unreachable!", self)
+ end
opensocks:insert(sock)
return sock
end