diff --git a/Runtime/codebase/WalletBase.cs b/Runtime/codebase/WalletBase.cs index ab7835a3..716a42eb 100644 --- a/Runtime/codebase/WalletBase.cs +++ b/Runtime/codebase/WalletBase.cs @@ -388,6 +388,10 @@ public Task AwaitWsRpcConnection() { var wsConnection = ActiveStreamingRpcClient; if(wsConnection?.State.Equals(WebSocketState.Open) ?? false) return Task.CompletedTask; + + if (_webSocketConnection == null) + throw new InvalidOperationException("WebSocket connection is not initialized."); + return _webSocketConnection.Task; } diff --git a/Runtime/codebase/Web3.cs b/Runtime/codebase/Web3.cs index 02b88b79..7ab91a87 100644 --- a/Runtime/codebase/Web3.cs +++ b/Runtime/codebase/Web3.cs @@ -312,11 +312,13 @@ public void Logout() /// A given blockhash can only be used by transactions for about 60 to 90 seconds /// https://docs.solana.com/developing/transaction_confirmation#how-does-transaction-expiration-work /// - public static Task BlockHash( + public static Task BlockHash( Commitment commitment = Commitment.Confirmed, bool useCache = true, int maxSeconds = 0) => - Instance != null ? Instance.WalletBase.GetBlockHash(commitment, useCache, maxSeconds) : null; + Instance != null + ? Instance.WalletBase.GetBlockHash(commitment, useCache, maxSeconds) + : Task.FromResult(null);