diff --git a/legacy/firmware/ada.c b/legacy/firmware/ada.c index 332351b8f..a6bf1f5ce 100644 --- a/legacy/firmware/ada.c +++ b/legacy/firmware/ada.c @@ -382,8 +382,7 @@ bool ada_get_address(const CardanoGetAddress *msg, char *address) { int address_bytes_len = 0; memset(&ada_node, 0, sizeof(HDNode)); if (!config_getCardanoRootNode(&ada_node)) { - fsm_sendFailure(FailureType_Failure_ProcessError, - _("Deriving root failed")); + fsm_sendFailure(FailureType_Failure_ProcessError, "Deriving root failed"); return false; } if (!derive_bytes(&msg->address_parameters, msg->network_id, @@ -1963,6 +1962,10 @@ bool ada_sign_messages(const CardanoSignMessage *msg, memcpy(address_params.address_n_staking, staking_path, address_params.address_n_staking_count * sizeof(uint32_t)); } + if (!config_getCardanoRootNode(&ada_node)) { + fsm_sendFailure(FailureType_Failure_ProcessError, "Deriving root failed"); + return false; + } if (!derive_bytes(&address_params, msg->network_id, MAINNET_PROTOCOL_MAGIC, address_bytes, &address_bytes_len)) { return false; diff --git a/legacy/firmware/ethereum_onekey.h b/legacy/firmware/ethereum_onekey.h index 0d4530f7a..d83740476 100644 --- a/legacy/firmware/ethereum_onekey.h +++ b/legacy/firmware/ethereum_onekey.h @@ -71,6 +71,9 @@ bool ethereum_parse_onekey(const char *address, uint8_t pubkeyhash[20]); case 137: \ chain_name = "Polygon"; \ break; \ + case 250: \ + chain_name = "Fantom"; \ + break; \ case 324: \ chain_name = "zkSync Era"; \ break; \