sway
sway copied to clipboard
Subcurrency example possible changes
In the "send" function in the subcurrency example, it checks that the msg_sender() Address is the same as the address of the contract creator. This seems like faulty logic as that means only the contract creator can send tokens (ever). If for some reason this is the desired logic, i think theres still a change required which would be to use a internal function to avoid repeating this piece of code
let sender: Result<Identity, AuthError> = msg_sender();
let sender: Address = match sender.unwrap() {
Identity::Address(addr) => {
assert(addr == ~Address::from(MINTER));
addr
},
_ => {
revert(0);
},
};