mirror of
https://github.com/darkrenaissance/darkfi.git
synced 2026-04-28 03:00:18 -04:00
More memory cleanups.
This commit is contained in:
@@ -1,5 +1,5 @@
|
||||
use crate::{Error, Result};
|
||||
use crate::util::NetworkName;
|
||||
use crate::{Error, Result};
|
||||
|
||||
use async_trait::async_trait;
|
||||
use futures::stream::FuturesUnordered;
|
||||
@@ -76,10 +76,7 @@ impl Bridge {
|
||||
let client2 = client.clone();
|
||||
let notifier = client2.get_notifier().await?;
|
||||
|
||||
self.clients
|
||||
.lock()
|
||||
.await
|
||||
.insert(network, client.clone());
|
||||
self.clients.lock().await.insert(network, client.clone());
|
||||
|
||||
self.notifiers.push(notifier.clone());
|
||||
Ok(())
|
||||
@@ -101,7 +98,7 @@ impl Bridge {
|
||||
let (sender, req) = async_channel::unbounded();
|
||||
let (rep, receiver) = async_channel::unbounded();
|
||||
|
||||
smol::spawn(self.listen_for_new_subscription(req.clone(), rep.clone())).detach();
|
||||
smol::spawn(self.listen_for_new_subscription(req, rep)).detach();
|
||||
|
||||
BridgeSubscribtion { sender, receiver }
|
||||
}
|
||||
|
||||
@@ -95,7 +95,10 @@ impl BtcClient {
|
||||
}))
|
||||
}
|
||||
|
||||
async fn handle_subscribe_request(self: Arc<Self>, keypair: Arc<BitcoinKeys>) -> BtcResult<(Txid, u64)> {
|
||||
async fn handle_subscribe_request(
|
||||
self: Arc<Self>,
|
||||
keypair: Arc<BitcoinKeys>,
|
||||
) -> BtcResult<(Txid, u64)> {
|
||||
debug!(
|
||||
target: "BTC BRIDGE",
|
||||
"Handle subscribe request"
|
||||
@@ -159,8 +162,7 @@ impl NetworkClient for BtcClient {
|
||||
|
||||
//let (_txid, _balance) = btc_keys.start_subscribe().await?;
|
||||
|
||||
let self2 = self.clone();
|
||||
smol::spawn(self2.handle_subscribe_request(btc_keys)).detach();
|
||||
smol::spawn(self.handle_subscribe_request(btc_keys)).detach();
|
||||
|
||||
Ok(TokenSubscribtion {
|
||||
secret_key: serialize(&btc_privkey.to_bytes()),
|
||||
|
||||
@@ -312,11 +312,10 @@ impl NetworkClient for SolClient {
|
||||
let public_key = keypair.pubkey().to_string();
|
||||
let secret_key = serialize(&keypair);
|
||||
|
||||
let self2 = self.clone();
|
||||
// TODO: Option<Pubkey> for 2nd arg representing Token Mint account
|
||||
let mint = Pubkey::from_str("F4wkXLN5n1ckejfnJoahGpgW3ffRsrvS9GGVME6ckxS9").unwrap();
|
||||
smol::spawn(self2.handle_subscribe_request(keypair, Some(mint))).detach();
|
||||
//smol::spawn(self2.handle_subscribe_request(keypair, None)).detach();
|
||||
smol::spawn(self.handle_subscribe_request(keypair, Some(mint))).detach();
|
||||
//smol::spawn(self.handle_subscribe_request(keypair, None)).detach();
|
||||
|
||||
Ok(TokenSubscribtion {
|
||||
secret_key,
|
||||
@@ -334,11 +333,10 @@ impl NetworkClient for SolClient {
|
||||
|
||||
let public_key = keypair.pubkey().to_string();
|
||||
|
||||
let self2 = self.clone();
|
||||
// TODO: Option<Pubkey> for 2nd arg representing Token Mint account
|
||||
let mint = Pubkey::from_str("F4wkXLN5n1ckejfnJoahGpgW3ffRsrvS9GGVME6ckxS9").unwrap();
|
||||
smol::spawn(self2.handle_subscribe_request(keypair, Some(mint))).detach();
|
||||
//smol::spawn(self2.handle_subscribe_request(keypair, None)).detach();
|
||||
smol::spawn(self.handle_subscribe_request(keypair, Some(mint))).detach();
|
||||
//smol::spawn(self.handle_subscribe_request(keypair, None)).detach();
|
||||
|
||||
Ok(public_key)
|
||||
}
|
||||
|
||||
@@ -61,8 +61,8 @@ impl CashierDb {
|
||||
|
||||
pub fn put_main_keys(
|
||||
&self,
|
||||
token_key_private: &Vec<u8>,
|
||||
token_key_public: &Vec<u8>,
|
||||
token_key_private: &[u8],
|
||||
token_key_public: &[u8],
|
||||
network: &NetworkName,
|
||||
) -> Result<()> {
|
||||
debug!(target: "CASHIERDB", "Put main keys");
|
||||
@@ -118,7 +118,7 @@ impl CashierDb {
|
||||
|
||||
pub fn put_withdraw_keys(
|
||||
&self,
|
||||
token_key_public: &Vec<u8>,
|
||||
token_key_public: &[u8],
|
||||
d_key_public: &jubjub::SubgroupPoint,
|
||||
d_key_private: &jubjub::Fr,
|
||||
network: &NetworkName,
|
||||
@@ -157,8 +157,8 @@ impl CashierDb {
|
||||
pub fn put_deposit_keys(
|
||||
&self,
|
||||
d_key_public: &jubjub::SubgroupPoint,
|
||||
token_key_private: &Vec<u8>,
|
||||
token_key_public: &Vec<u8>,
|
||||
token_key_private: &[u8],
|
||||
token_key_public: &[u8],
|
||||
network: &NetworkName,
|
||||
token_id: &jubjub::Fr,
|
||||
) -> Result<()> {
|
||||
@@ -206,12 +206,12 @@ impl CashierDb {
|
||||
WHERE confirm = :confirm",
|
||||
)?;
|
||||
|
||||
let keys = stmt.query_map(&[(":confirm", &confirm)], |row| Ok(row.get(0)?))?;
|
||||
let keys = stmt.query_map(&[(":confirm", &confirm)], |row| Ok(row.get(0)))?;
|
||||
|
||||
let mut private_keys: Vec<jubjub::Fr> = vec![];
|
||||
|
||||
for k in keys {
|
||||
let private_key: jubjub::Fr = self.get_value_deserialized(k?)?;
|
||||
let private_key: jubjub::Fr = self.get_value_deserialized(k??)?;
|
||||
private_keys.push(private_key);
|
||||
}
|
||||
|
||||
@@ -333,7 +333,7 @@ impl CashierDb {
|
||||
|
||||
pub fn get_withdraw_keys_by_token_public_key(
|
||||
&self,
|
||||
token_key_public: &Vec<u8>,
|
||||
token_key_public: &[u8],
|
||||
network: &NetworkName,
|
||||
) -> Result<Option<Keypair>> {
|
||||
debug!(target: "CASHIERDB", "Check for existing token address");
|
||||
@@ -356,8 +356,8 @@ impl CashierDb {
|
||||
let keypair_iter = stmt.query_map(
|
||||
&[
|
||||
(":token_key_public", &token_key_public),
|
||||
(":network", &&network),
|
||||
(":confirm", &&confirm),
|
||||
(":network", &network.as_ref()),
|
||||
(":confirm", &confirm.as_ref()),
|
||||
],
|
||||
|row| Ok((row.get(0)?, row.get(1)?)),
|
||||
)?;
|
||||
@@ -377,7 +377,7 @@ impl CashierDb {
|
||||
|
||||
pub fn confirm_withdraw_key_record(
|
||||
&self,
|
||||
token_address: &Vec<u8>,
|
||||
token_address: &[u8],
|
||||
network: &NetworkName,
|
||||
) -> Result<()> {
|
||||
debug!(target: "CASHIERDB", "Confirm withdraw keys");
|
||||
|
||||
Reference in New Issue
Block a user