diff --git a/src/test/app/Vault_test.cpp b/src/test/app/Vault_test.cpp index 2bbd13cbc3..dbd062f829 100644 --- a/src/test/app/Vault_test.cpp +++ b/src/test/app/Vault_test.cpp @@ -973,10 +973,10 @@ class Vault_test : public beast::unit_test::suite {.depositor = depositor, .id = keylet.key, .amount = asset(100)}); - env(tx, ter(tecFROZEN)); + env(tx, ter(tecLOCKED)); tx[sfDestination] = issuer.human(); - env(tx, ter(tecFROZEN)); + env(tx, ter(tecLOCKED)); }); testCase([this]( diff --git a/src/xrpld/app/tx/detail/VaultWithdraw.cpp b/src/xrpld/app/tx/detail/VaultWithdraw.cpp index 5f8f6086e5..2e3f708a73 100644 --- a/src/xrpld/app/tx/detail/VaultWithdraw.cpp +++ b/src/xrpld/app/tx/detail/VaultWithdraw.cpp @@ -118,10 +118,10 @@ VaultWithdraw::preclaim(PreclaimContext const& ctx) // Cannot withdraw from a Vault an Asset frozen for the destination account if (isFrozen(ctx.view, dstAcct, asset)) - return tecFROZEN; + return asset.holds() ? tecFROZEN : tecLOCKED; if (isFrozen(ctx.view, account, share)) - return tecFROZEN; + return tecLOCKED; return tesSUCCESS; }