From a20fd1ab2cf86bd8ce3cc4996176bb290d3817a7 Mon Sep 17 00:00:00 2001 From: Josh Rickmar Date: Tue, 6 May 2014 08:30:36 -0500 Subject: [PATCH] Modify notifyspent handler to take multiple outpoints. --- rpcwebsocket.go | 21 +++++++++++++-------- 1 file changed, 13 insertions(+), 8 deletions(-) diff --git a/rpcwebsocket.go b/rpcwebsocket.go index b78e0371f..64c49db61 100644 --- a/rpcwebsocket.go +++ b/rpcwebsocket.go @@ -1419,16 +1419,21 @@ func handleNotifySpent(wsc *wsClient, icmd btcjson.Cmd) (interface{}, *btcjson.E return nil, &btcjson.ErrInternal } - blockHash, err := btcwire.NewShaHashFromStr(cmd.OutPoint.Hash) - if err != nil { - return nil, &btcjson.Error{ - Code: btcjson.ErrParse.Code, - Message: err.Error(), + outpoints := make([]*btcwire.OutPoint, 0, len(cmd.OutPoints)) + for i := range cmd.OutPoints { + blockHash, err := btcwire.NewShaHashFromStr(cmd.OutPoints[i].Hash) + if err != nil { + return nil, &btcjson.Error{ + Code: btcjson.ErrParse.Code, + Message: err.Error(), + } } + index := cmd.OutPoints[i].Index + outpoints = append(outpoints, btcwire.NewOutPoint(blockHash, index)) + } + for _, outpoint := range outpoints { + wsc.server.ntfnMgr.RegisterSpentRequest(wsc, outpoint) } - - outpoint := btcwire.NewOutPoint(blockHash, cmd.Index) - wsc.server.ntfnMgr.RegisterSpentRequest(wsc, outpoint) return nil, nil }