From e921365af73c1bdb8aaa736a15f774a90edaa6a4 Mon Sep 17 00:00:00 2001 From: Czarek Nakamoto Date: Tue, 2 Dec 2025 16:02:48 +0100 Subject: [PATCH] fix: use unix socket on android mweb --- cw_mweb/go/mweb.go | 13 +++++++++++-- cw_mweb/lib/cw_mweb.dart | 9 ++++++++- 2 files changed, 19 insertions(+), 3 deletions(-) diff --git a/cw_mweb/go/mweb.go b/cw_mweb/go/mweb.go index 135223384a..edfcbff1e3 100644 --- a/cw_mweb/go/mweb.go +++ b/cw_mweb/go/mweb.go @@ -6,6 +6,7 @@ import ( "github.com/ltcmweb/mwebd" ) +import "runtime" var server *mwebd.Server @@ -25,8 +26,16 @@ func StartServer(chain *C.char, dataDir *C.char, nodeUri *C.char, errMsg **C.cha return 0 } -// err = server.StartUnix(goDataDir + "/mwebd.sock") - start, err := server.Start(0) + if runtime.GOOS == "android" { + err = server.StartUnix(goDataDir + "/mwebd.sock") + if err != nil { + *errMsg = C.CString(err.Error()) + return 0 + } + return -1 + } + + start, err := server.Start(0) if err != nil { *errMsg = C.CString(err.Error()) return 0 diff --git a/cw_mweb/lib/cw_mweb.dart b/cw_mweb/lib/cw_mweb.dart index 952a5a2e36..6dfc65cb64 100644 --- a/cw_mweb/lib/cw_mweb.dart +++ b/cw_mweb/lib/cw_mweb.dart @@ -63,8 +63,15 @@ class CwMweb { throw Exception("Failed to start server"); } printV("Attempting to connect to server on port: $_port"); + dynamic address = '127.0.0.1'; + int? port = _port; + if (_port == -1) { + address = InternetAddress("${appDir.path}/mwebd.sock", type: InternetAddressType.unix); + port = 443; + } + printV("address: $address"); - _clientChannel = ClientChannel('127.0.0.1', port: _port!, channelShutdownHandler: () { + _clientChannel = ClientChannel(address, port: port!, channelShutdownHandler: () { _rpcClient = null; printV("Channel is shutting down!"); },