From 556620fea68b464f53b25cb1dc2e041e8040653b Mon Sep 17 00:00:00 2001 From: Gustavo Chain Date: Tue, 9 Mar 2021 10:37:31 +0100 Subject: [PATCH] rpcserver: Fix Error message returned by processRequest When processRequest can't find a rpc command, standardCmdResult returns a `btcjson.ErrRPCMethodNotFound` but it gets ignored and a `btcjson.ErrRPCInvalidRequest` is returned instead. This makes processRequest return the right error message. --- rpcserver.go | 10 +++++++--- 1 file changed, 7 insertions(+), 3 deletions(-) diff --git a/rpcserver.go b/rpcserver.go index 8e351bd2..1cd3d69c 100644 --- a/rpcserver.go +++ b/rpcserver.go @@ -4066,9 +4066,13 @@ func (s *rpcServer) processRequest(request *btcjson.Request, isAdmin bool, close result, err = s.standardCmdResult(parsedCmd, closeChan) if err != nil { - jsonErr = &btcjson.RPCError{ - Code: btcjson.ErrRPCInvalidRequest.Code, - Message: "Invalid request: malformed", + if rpcErr, ok := err.(*btcjson.RPCError); ok { + jsonErr = rpcErr + } else { + jsonErr = &btcjson.RPCError{ + Code: btcjson.ErrRPCInvalidRequest.Code, + Message: "Invalid request: malformed", + } } } }