remove unused mint account from claim ix

This commit is contained in:
Hardhat Chad
2024-04-02 05:35:45 +00:00
parent 8bb9e37cf8
commit 32d422d21d
3 changed files with 40 additions and 11 deletions

View File

@@ -49,11 +49,10 @@ pub enum OreInstruction {
#[account(0, name = "ore_program", desc = "Ore program")]
#[account(1, name = "signer", desc = "Signer", signer)]
#[account(2, name = "beneficiary", desc = "Beneficiary token account", writable)]
#[account(3, name = "mint", desc = "Ore token mint account")]
#[account(4, name = "proof", desc = "Ore proof account", writable)]
#[account(5, name = "treasury", desc = "Ore treasury account", writable)]
#[account(6, name = "treasury_tokens", desc = "Ore treasury token account", writable)]
#[account(7, name = "token_program", desc = "SPL token program")]
#[account(3, name = "proof", desc = "Ore proof account", writable)]
#[account(4, name = "treasury", desc = "Ore treasury account", writable)]
#[account(5, name = "treasury_tokens", desc = "Ore treasury token account", writable)]
#[account(6, name = "token_program", desc = "SPL token program")]
Claim = 3,
#[account(0, name = "ore_program", desc = "Ore program")]
@@ -245,7 +244,6 @@ pub fn claim(signer: Pubkey, beneficiary: Pubkey, amount: u64) -> Instruction {
accounts: vec![
AccountMeta::new(signer, true),
AccountMeta::new(beneficiary, false),
AccountMeta::new(MINT_ADDRESS, false),
AccountMeta::new(proof, false),
AccountMeta::new(TREASURY_ADDRESS, false),
AccountMeta::new(treasury_tokens, false),

View File

@@ -9,7 +9,7 @@ use crate::{
loaders::*,
state::{Proof, Treasury},
utils::AccountDeserialize,
TREASURY,
MINT_ADDRESS, TREASURY,
};
/// Claim distributes owed token rewards from the treasury to the miner. Its responsibilies include:
@@ -31,20 +31,19 @@ pub fn process_claim<'a, 'info>(
let amount = u64::from_le_bytes(args.amount);
// Load accounts
let [signer, beneficiary_info, mint_info, proof_info, treasury_info, treasury_tokens_info, token_program] =
let [signer, beneficiary_info, proof_info, treasury_info, treasury_tokens_info, token_program] =
accounts
else {
return Err(ProgramError::NotEnoughAccountKeys);
};
load_signer(signer)?;
load_token_account(beneficiary_info, None, mint_info.key, true)?;
load_mint(mint_info, true)?;
load_token_account(beneficiary_info, None, &MINT_ADDRESS, true)?;
load_proof(proof_info, signer.key, true)?;
load_treasury(treasury_info, true)?;
load_token_account(
treasury_tokens_info,
Some(treasury_info.key),
mint_info.key,
&MINT_ADDRESS,
true,
)?;
load_program(token_program, spl_token::id())?;