File tree Expand file tree Collapse file tree 1 file changed +12
-22
lines changed Expand file tree Collapse file tree 1 file changed +12
-22
lines changed Original file line number Diff line number Diff line change @@ -55,28 +55,6 @@ impl DexInterface for RaydiumDex {
55
55
} )
56
56
. collect_vec ( ) ;
57
57
58
- let vaults = filtered_pools
59
- . iter ( )
60
- . flat_map ( |x| [ x. 1 . coin_vault , x. 1 . pc_vault ] )
61
- . collect :: < HashSet < _ > > ( ) ;
62
- let vaults = rpc. get_multiple_accounts ( & vaults) . await ?;
63
- let banned_vaults = vaults
64
- . iter ( )
65
- . filter ( |x| {
66
- x. 1 . owner == Token :: id ( )
67
- && spl_token:: state:: Account :: unpack ( x. 1 . data ( ) ) . unwrap ( ) . state
68
- == AccountState :: Frozen
69
- } )
70
- . map ( |x| x. 0 )
71
- . collect :: < HashSet < _ > > ( ) ;
72
-
73
- let filtered_pools = filtered_pools
74
- . into_iter ( )
75
- . filter ( |( _, amm) | {
76
- !banned_vaults. contains ( & amm. coin_vault ) && !banned_vaults. contains ( & amm. pc_vault )
77
- } )
78
- . collect_vec ( ) ;
79
-
80
58
info ! (
81
59
"Number of raydium AMM post filtering: {:?}" ,
82
60
filtered_pools. len( )
@@ -178,6 +156,18 @@ impl DexInterface for RaydiumDex {
178
156
let coin_vault = & edge. coin_vault ;
179
157
let pc_vault = & edge. pc_vault ;
180
158
159
+ let coin_vault_is_frozen = coin_vault. state == AccountState :: Frozen ;
160
+ let pc_vault_is_frozen = pc_vault. state == AccountState :: Frozen ;
161
+
162
+ if coin_vault_is_frozen || pc_vault_is_frozen {
163
+ return Ok ( Quote {
164
+ in_amount,
165
+ out_amount : 0 ,
166
+ fee_amount : 0 ,
167
+ fee_mint : Default :: default ( ) ,
168
+ } ) ;
169
+ }
170
+
181
171
let swap_direction = if id. is_pc_to_coin {
182
172
SwapDirection :: PC2Coin
183
173
} else {
You can’t perform that action at this time.
0 commit comments