From c84794b2571e5b168b240a04a1b12753402ec1d4 Mon Sep 17 00:00:00 2001 From: Alexandre Paillier Date: Thu, 8 Feb 2024 15:07:49 +0100 Subject: [PATCH] get_displayable_ticker function now takes a given chain_config_t struct --- src/eth_plugin_handler.c | 4 +++- src/network.c | 4 ++-- src/network.h | 3 ++- src_features/signTx/logic_signTx.c | 4 ++-- 4 files changed, 9 insertions(+), 6 deletions(-) diff --git a/src/eth_plugin_handler.c b/src/eth_plugin_handler.c index f7611bb..c768c7e 100644 --- a/src/eth_plugin_handler.c +++ b/src/eth_plugin_handler.c @@ -67,7 +67,9 @@ void eth_plugin_prepare_query_contract_UI(ethQueryContractUI_t *queryContractUI, queryContractUI->screenIndex = screenIndex; chain_id = get_tx_chain_id(); - strlcpy(queryContractUI->network_ticker, get_displayable_ticker(&chain_id), MAX_TICKER_LEN); + strlcpy(queryContractUI->network_ticker, + get_displayable_ticker(&chain_id, chainConfig), + sizeof(queryContractUI->network_ticker)); queryContractUI->title = title; queryContractUI->titleLength = titleLength; queryContractUI->msg = msg; diff --git a/src/network.c b/src/network.c index 4107aba..74c5fee 100644 --- a/src/network.c +++ b/src/network.c @@ -136,11 +136,11 @@ uint64_t get_tx_chain_id(void) { return chain_id; } -const char *get_displayable_ticker(const uint64_t *chain_id) { +const char *get_displayable_ticker(const uint64_t *chain_id, const chain_config_t *chain_cfg) { const char *ticker = get_network_ticker_from_chain_id(chain_id); if (ticker == NULL) { - ticker = chainConfig->coinName; + ticker = chain_cfg->coinName; } return ticker; } diff --git a/src/network.h b/src/network.h index ccde237..ee96347 100644 --- a/src/network.h +++ b/src/network.h @@ -2,6 +2,7 @@ #include #include +#include "chainConfig.h" #define UNSUPPORTED_CHAIN_ID_MSG(id) \ do { \ @@ -16,4 +17,4 @@ bool app_compatible_with_chain_id(const uint64_t *chain_id); uint64_t get_tx_chain_id(void); -const char *get_displayable_ticker(const uint64_t *chain_id); +const char *get_displayable_ticker(const uint64_t *chain_id, const chain_config_t *chain_cfg); diff --git a/src_features/signTx/logic_signTx.c b/src_features/signTx/logic_signTx.c index de62f6c..b40bfb9 100644 --- a/src_features/signTx/logic_signTx.c +++ b/src_features/signTx/logic_signTx.c @@ -200,7 +200,7 @@ static void address_to_string(uint8_t *in, static void raw_fee_to_string(uint256_t *rawFee, char *displayBuffer, uint32_t displayBufferSize) { uint64_t chain_id = get_tx_chain_id(); - const char *feeTicker = get_displayable_ticker(&chain_id); + const char *feeTicker = get_displayable_ticker(&chain_id, chainConfig); uint8_t tickerOffset = 0; uint32_t i; @@ -323,7 +323,7 @@ __attribute__((noinline)) static void finalize_parsing_helper(bool direct, bool char displayBuffer[50]; uint8_t decimals = WEI_TO_ETHER; uint64_t chain_id = get_tx_chain_id(); - const char *ticker = get_displayable_ticker(&chain_id); + const char *ticker = get_displayable_ticker(&chain_id, chainConfig); ethPluginFinalize_t pluginFinalize; *use_standard_UI = true;