fix: Sign & Send refuses a transfer reviewed on another network (closes #524)
Settings is reachable from the confirmation screen, and Back from it only unhides the screen as it was drawn. Sign & Send took the network at the click, so a transfer reviewed on Sepolia went out on mainnet after a switch in between. show() now records the chain id of the network it draws for. Sign & Send refuses with a message on the screen when the active network differs, and the send carries that chain id, so ethers will not populate it for a provider on any other network. Model: opus-5-5
This commit is contained in:
@@ -1641,6 +1641,12 @@ view would leave a wallet one click from deletion.
|
||||
the contract's own answer is read at signing time only to be compared with
|
||||
it, and a disagreement is a refusal rather than a preference for either
|
||||
value (`src/shared/transferAmount.js`)
|
||||
- "Sign & Send" after the active network was switched in Settings while this
|
||||
screen was open → nothing is signed; "The active network changed after
|
||||
this transaction was reviewed, so it was not sent. Please go back and
|
||||
review it again." in the errors box, no screen change. The transaction
|
||||
carries the chain id of the network the screen was shown for, so it cannot
|
||||
be signed for another
|
||||
- "Sign & Send" (wrong password) → "Wrong password." on the password error
|
||||
line, no screen change
|
||||
- "Back" → **Send**
|
||||
|
||||
Reference in New Issue
Block a user