Skip to content

Commit 55449e7

Browse files
committed
Precompute native token asset types to increase chances of decoding.
1 parent d9ef9fc commit 55449e7

File tree

3 files changed

+8
-4
lines changed

3 files changed

+8
-4
lines changed

crates/apps_lib/src/client/rpc.rs

+5-1
Original file line numberDiff line numberDiff line change
@@ -488,8 +488,12 @@ async fn query_shielded_balance(
488488
{
489489
let mut shielded = context.shielded_mut().await;
490490
let _ = shielded.load().await;
491+
// Precompute asset types to increase chances of success in decoding
492+
let token_map = context.wallet().await.get_addresses();
493+
let mut tokens: BTreeSet<_> = token_map.values().collect();
494+
tokens.insert(&token);
491495
let _ = shielded
492-
.precompute_asset_types(context.client(), vec![&token])
496+
.precompute_asset_types(context.client(), tokens)
493497
.await;
494498
// Save the update state so that future fetches can be short-circuited
495499
let _ = shielded.save().await;

crates/shielded_token/src/masp/shielded_wallet.rs

+1-1
Original file line numberDiff line numberDiff line change
@@ -437,7 +437,7 @@ pub trait ShieldedApi<U: ShieldedUtils + MaybeSend + MaybeSync>:
437437
async fn precompute_asset_types<C: Client + Sync>(
438438
&mut self,
439439
client: &C,
440-
tokens: Vec<&Address>,
440+
tokens: BTreeSet<&Address>,
441441
) -> Result<(), eyre::Error> {
442442
// To facilitate lookups of human-readable token names
443443
for token in tokens {

crates/shielded_token/src/vp.rs

+2-2
Original file line numberDiff line numberDiff line change
@@ -423,7 +423,7 @@ where
423423

424424
// Note the balance changes they imply
425425
let ChangedBalances {
426-
unepoched_tokens: tokens,
426+
unepoched_tokens,
427427
decoder,
428428
pre,
429429
post,
@@ -438,7 +438,7 @@ where
438438
keys_changed,
439439
)?;
440440
Ok(ChangedBalances {
441-
unepoched_tokens: tokens,
441+
unepoched_tokens,
442442
decoder,
443443
pre,
444444
post,

0 commit comments

Comments
 (0)