This commit is contained in:
John Freeman
2024-11-11 20:36:10 -06:00
committed by Bronek Kozicki
parent a8ec8e7eaa
commit d09e74e548
2 changed files with 18 additions and 8 deletions

View File

@@ -63,9 +63,13 @@ VaultDeposit::doApply()
if (amount.asset() != asset)
return tecWRONG_ASSET;
if (accountHolds(view(), account_, asset,
FreezeHandling::fhZERO_IF_FROZEN,
AuthHandling::ahZERO_IF_UNAUTHORIZED, j_) < amount)
if (accountHolds(
view(),
account_,
asset,
FreezeHandling::fhZERO_IF_FROZEN,
AuthHandling::ahZERO_IF_UNAUTHORIZED,
j_) < amount)
{
return tecINSUFFICIENT_FUNDS;
}
@@ -75,7 +79,8 @@ VaultDeposit::doApply()
return tecLIMIT_EXCEEDED;
// TODO: Check credentials.
if (vault->getFlags() & lsfVaultPrivate);
if (vault->getFlags() & lsfVaultPrivate)
;
// TODO: transfer amount from account_ to vault.PseudoAccount.
// - handles balance of account_ and vault.PseudoAccount

View File

@@ -377,13 +377,18 @@ accountHolds(
AuthHandling zeroIfUnauthorized,
beast::Journal j)
{
return std::visit([&] (auto const& value) {
if constexpr (std::is_same_v<std::remove_cvref_t<decltype(value)>, Issue>)
return std::visit(
[&](auto const& value) {
if constexpr (std::is_same_v<
std::remove_cvref_t<decltype(value)>,
Issue>)
{
return accountHolds(view, account, value, zeroIfFrozen, j);
}
return accountHolds(view, account, value, zeroIfFrozen, zeroIfUnauthorized, j);
}, asset.value());
return accountHolds(
view, account, value, zeroIfFrozen, zeroIfUnauthorized, j);
},
asset.value());
}
STAmount