diff --git a/jsonpath.go b/jsonpath.go index 00dc6fd..f6f436a 100644 --- a/jsonpath.go +++ b/jsonpath.go @@ -85,6 +85,9 @@ func (c *Compiled) Lookup(obj interface{}) (interface{}, error) { return nil, err } } + if obj == nil { + return nil, nil + } if len(s.args.([]int)) > 1 { res := []interface{}{} @@ -115,6 +118,9 @@ func (c *Compiled) Lookup(obj interface{}) (interface{}, error) { return nil, err } } + if obj == nil { + return nil, nil + } if argsv, ok := s.args.([2]interface{}); ok == true { obj, err = get_range(obj, argsv[0], argsv[1]) if err != nil {