From ed0817c55dc45290d9de594fea28f7bc35d564da Mon Sep 17 00:00:00 2001 From: obscuren Date: Tue, 21 Apr 2015 12:00:57 +0200 Subject: core/rpc: fix for null entries in log filters. Closes #725 You can now specify `null` as a way of saying "not interested in this topic, match all". core.Filter assumes the zero'd address to be the wildcard. JSON rpc assumes empty strings to be wildcards. --- rpc/args.go | 4 ++++ 1 file changed, 4 insertions(+) (limited to 'rpc') diff --git a/rpc/args.go b/rpc/args.go index 4b3840285..d03f914a7 100644 --- a/rpc/args.go +++ b/rpc/args.go @@ -739,10 +739,14 @@ func (args *BlockFilterArgs) UnmarshalJSON(b []byte) (err error) { for j, jv := range argarray { if v, ok := jv.(string); ok { topicdbl[i][j] = v + } else if jv == nil { + topicdbl[i][j] = "" } else { return NewInvalidTypeError(fmt.Sprintf("topic[%d][%d]", i, j), "is not a string") } } + } else if iv == nil { + topicdbl[i] = []string{""} } else { return NewInvalidTypeError(fmt.Sprintf("topic[%d]", i), "not a string or array") } -- cgit v1.2.3