From 03b1f3193596c8a7cb380b1d93c9ee6cef7699fb Mon Sep 17 00:00:00 2001 From: Craig Everett Date: Tue, 30 Dec 2025 17:05:56 +0900 Subject: [PATCH] Fix balance check --- src/gd_con.erl | 17 +++++++++++------ 1 file changed, 11 insertions(+), 6 deletions(-) diff --git a/src/gd_con.erl b/src/gd_con.erl index cdd203f..f4faa6e 100644 --- a/src/gd_con.erl +++ b/src/gd_con.erl @@ -641,7 +641,7 @@ do_refresh2(ChainID, State = #s{wallet = W = #wallet{poas = POAs}}) -> check_balance(ChainID) -> - fun(This = #poa{id = ID, balances = [OldBalance]}) -> + fun(This = #poa{id = ID, balances = [#balance{coin = "gaju", total = OldBalance}]}) -> Pucks = case hz:acc(ID) of {ok, #{"balance" := P}} -> P; @@ -1330,13 +1330,13 @@ read3(T) -> do_tic(stop, State = #s{timer = none}) -> State; do_tic(stop, State = #s{timer = {T, _}}) -> - ok = erlang:cancel_timer(T, [{async, true}]), + _ = erlang:cancel_timer(T), State#s{timer = none}; do_tic(MS, State = #s{timer = none}) -> T = erlang:send_after(MS, self(), tic), State#s{timer = {T, MS}}; do_tic(MS, State = #s{timer = {T, _}}) -> - ok = erlang:cancel_timer(T, [{async, true}]), + _ = erlang:cancel_timer(T), T = erlang:send_after(MS, self(), tic), State#s{timer = {T, MS}}. @@ -1358,16 +1358,21 @@ handle_tic(State = #s{wallet = This = #wallet{poas = POAs, endpoint = Node}, ok = log(info, "Balance update on tic failed with: ~p", [Error]), State end, - ok = erlang:cancel_timer(T, [{async, true}]), + ok = cancel_timer(T), NewT = erlang:send_after(MS, self(), tic), NewState#s{timer = {NewT, MS}}; handle_tic(State = #s{timer = {T, MS}}) -> - ok = erlang:cancel_timer(T, [{async, true}]), + ok = cancel_timer(T), NewT = erlang:send_after(MS, self(), tic), State#s{timer = {NewT, MS}}; handle_tic(State) -> State. - + +cancel_timer(T) -> + case erlang:cancel_timer(T) of + false -> ok; + R -> log(warning, "Tic timers are doubled up. Remaining: ~wms", [R]) + end. persist(Prefs) ->