Skip to content
Permalink

Comparing changes

This is a direct comparison between two commits made in this repository or its related repositories. View the default comparison for this range or learn more about diff comparisons.

Open a pull request

Create a new pull request by comparing changes across two branches. If you need to, you can also . Learn more about diff comparisons here.
base repository: Near-One/rainbow-token-connector
Failed to load repositories. Confirm that selected base ref is valid, then try again.
Loading
base: d7fce8e33cd44a5f14f19ee4fa5c3e9f8e78da28
Choose a base ref
..
head repository: Near-One/rainbow-token-connector
Failed to load repositories. Confirm that selected head ref is valid, then try again.
Loading
compare: 19f2a959ce1fd27405f548d27a487b474a201e78
Choose a head ref
Showing with 7 additions and 6 deletions.
  1. +7 −6 erc20-bridge-token/contracts/BridgeTokenFactory.sol
13 changes: 7 additions & 6 deletions erc20-bridge-token/contracts/BridgeTokenFactory.sol
Original file line number Diff line number Diff line change
@@ -105,11 +105,11 @@ contract BridgeTokenFactory is
}

function newBridgeToken(bytes calldata signatureData, MetadataPayload calldata metadata) external returns (address) {
bytes memory borshEncoded = abi.encode(
bytes memory borshEncoded = bytes.concat(
Borsh.encodeString(metadata.token),
Borsh.encodeString(metadata.name),
Borsh.encodeString(metadata.symbol),
metadata.decimals
bytes1(metadata.decimals)
);
bytes32 hashed = keccak256(borshEncoded);

@@ -167,14 +167,15 @@ contract BridgeTokenFactory is
}

function deposit(bytes calldata signatureData, BridgeDeposit calldata bridgeDeposit) external whenNotPaused(PAUSED_DEPOSIT) {
bytes memory borshEncoded = abi.encode(
bytes memory borshEncoded = bytes.concat(
Borsh.encodeUint128(bridgeDeposit.nonce),
Borsh.encodeString(bridgeDeposit.token),
Borsh.encodeUint128(bridgeDeposit.amount),
0x00, // variant 1 in rust enum
bytes1(0x00), // variant 1 in rust enum
Borsh.encodeAddress(bridgeDeposit.recipient),
bridgeDeposit.relayer == address(0) ? 0x00 : 0x01, // None or Some in rust
Borsh.encodeAddress(bridgeDeposit.relayer)
bridgeDeposit.relayer == address(0) // None or Some(Address) in rust
? bytes("\x00")
: bytes.concat(bytes("\x01"), Borsh.encodeAddress(bridgeDeposit.relayer))
);
bytes32 hashed = keccak256(borshEncoded);