diff --git a/examples/multisig/programs/multisig/src/lib.rs b/examples/multisig/programs/multisig/src/lib.rs index 9f430169..eb27c5f3 100644 --- a/examples/multisig/programs/multisig/src/lib.rs +++ b/examples/multisig/programs/multisig/src/lib.rs @@ -72,7 +72,7 @@ pub mod multisig { pub fn set_owners(ctx: Context, owners: Vec) -> Result<()> { let multisig = &mut ctx.accounts.multisig; - if owners.len() as u64 > multisig.threshold { + if (owners.len() as u64) < multisig.threshold { multisig.threshold = owners.len() as u64; } diff --git a/lang/src/program_account.rs b/lang/src/program_account.rs index 56ad5586..07c9e97f 100644 --- a/lang/src/program_account.rs +++ b/lang/src/program_account.rs @@ -16,6 +16,12 @@ pub struct ProgramAccount<'info, T: AccountSerialize + AccountDeserialize + Clon inner: Box>, } +impl<'info, T: AccountSerialize + AccountDeserialize + Clone> ProgramAccount<'info, T> { + pub fn account(&self) -> &T { + &self.inner.account + } +} + #[derive(Clone)] struct Inner<'info, T: AccountSerialize + AccountDeserialize + Clone> { info: AccountInfo<'info>,