|
|
@ -93,6 +93,7 @@ bool GetWalletNameFromJSONRPCRequest(const JSONRPCRequest& request, std::string&
|
|
|
|
|
|
|
|
|
|
|
|
std::shared_ptr<CWallet> GetWalletForJSONRPCRequest(const JSONRPCRequest& request)
|
|
|
|
std::shared_ptr<CWallet> GetWalletForJSONRPCRequest(const JSONRPCRequest& request)
|
|
|
|
{
|
|
|
|
{
|
|
|
|
|
|
|
|
CHECK_NONFATAL(!request.fHelp);
|
|
|
|
std::string wallet_name;
|
|
|
|
std::string wallet_name;
|
|
|
|
if (GetWalletNameFromJSONRPCRequest(request, wallet_name)) {
|
|
|
|
if (GetWalletNameFromJSONRPCRequest(request, wallet_name)) {
|
|
|
|
std::shared_ptr<CWallet> pwallet = GetWallet(wallet_name);
|
|
|
|
std::shared_ptr<CWallet> pwallet = GetWallet(wallet_name);
|
|
|
@ -101,12 +102,10 @@ std::shared_ptr<CWallet> GetWalletForJSONRPCRequest(const JSONRPCRequest& reques
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
std::vector<std::shared_ptr<CWallet>> wallets = GetWallets();
|
|
|
|
std::vector<std::shared_ptr<CWallet>> wallets = GetWallets();
|
|
|
|
if (wallets.size() == 1 || (request.fHelp && wallets.size() > 0)) {
|
|
|
|
if (wallets.size() == 1) {
|
|
|
|
return wallets[0];
|
|
|
|
return wallets[0];
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
if (request.fHelp) return nullptr;
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
if (!HasWallets()) {
|
|
|
|
if (!HasWallets()) {
|
|
|
|
throw JSONRPCError(
|
|
|
|
throw JSONRPCError(
|
|
|
|
RPC_METHOD_NOT_FOUND, "Method not found (wallet method is disabled because no wallet is loaded)");
|
|
|
|
RPC_METHOD_NOT_FOUND, "Method not found (wallet method is disabled because no wallet is loaded)");
|
|
|
|