diff --git a/admin/src/lib.rs b/admin/src/lib.rs index cbf06b5..83429b2 100644 --- a/admin/src/lib.rs +++ b/admin/src/lib.rs @@ -8,7 +8,7 @@ pub struct Contract; #[contractimpl] impl Contract { - pub fn __constructor(env: &Env, admin: Address) { + pub fn __constructor(env: &Env, admin: &Address) { Self::set_admin(env, admin); } } diff --git a/admin_sep/src/administratable.rs b/admin_sep/src/administratable.rs index e4f0b0a..b5933f2 100644 --- a/admin_sep/src/administratable.rs +++ b/admin_sep/src/administratable.rs @@ -7,11 +7,11 @@ pub trait Administratable { unsafe { admin_from_storage(env).unwrap_unchecked() } } - fn set_admin(env: &Env, new_admin: soroban_sdk::Address) { + fn set_admin(env: &Env, new_admin: &soroban_sdk::Address) { if let Some(owner) = admin_from_storage(env) { owner.require_auth(); } - env.storage().instance().set(STORAGE_KEY, &new_admin); + env.storage().instance().set(STORAGE_KEY, new_admin); } } diff --git a/admin_sep/src/upgradable.rs b/admin_sep/src/upgradable.rs index 9d7aac6..fd87b8e 100644 --- a/admin_sep/src/upgradable.rs +++ b/admin_sep/src/upgradable.rs @@ -5,8 +5,9 @@ use soroban_sdk::contracttrait; pub trait Upgradable: AdministratableExtension { /// Upgrades the contract to a new hash. /// Admin Only. - fn upgrade(env: &soroban_sdk::Env, new_wasm_hash: soroban_sdk::BytesN<32>) { + fn upgrade(env: &soroban_sdk::Env, new_wasm_hash: &soroban_sdk::BytesN<32>) { Self::require_admin(env); - env.deployer().update_current_contract_wasm(new_wasm_hash); + env.deployer() + .update_current_contract_wasm(new_wasm_hash.clone()); } } diff --git a/admin_v2/src/lib.rs b/admin_v2/src/lib.rs index a516577..62ac411 100644 --- a/admin_v2/src/lib.rs +++ b/admin_v2/src/lib.rs @@ -8,7 +8,7 @@ pub struct Contract; #[contractimpl] impl Contract { - pub fn __constructor(env: &Env, admin: Address) { + pub fn __constructor(env: &Env, admin: &Address) { Self::set_admin(env, admin); } diff --git a/admin_v2/src/test.rs b/admin_v2/src/test.rs index 59d3304..276144f 100644 --- a/admin_v2/src/test.rs +++ b/admin_v2/src/test.rs @@ -6,8 +6,8 @@ use soroban_sdk::{Address, Env, testutils::Address as _}; #[test] fn test() { let env = Env::default(); - let admin = Address::generate(&env); - let contract_id = env.register(Contract, (admin.clone(),)); + let admin = &Address::generate(&env); + let contract_id = env.register(Contract, (admin,)); let _client = ContractClient::new(&env, &contract_id); // assert_eq!(client.increment(), 2);