File tree Expand file tree Collapse file tree 2 files changed +13
-9
lines changed Expand file tree Collapse file tree 2 files changed +13
-9
lines changed Original file line number Diff line number Diff line change @@ -117,17 +117,21 @@ func searchKeys(data []byte, keys ...string) int {
117
117
if valueOffset == - 1 {
118
118
return - 1
119
119
}
120
+
120
121
i += valueOffset
121
122
122
- if i < ln &&
123
- data [i ] == ':' && // if string is a Key, and key level match
124
- keyLevel == level - 1 && // If key nesting level match current object nested level
125
- keys [level - 1 ] == string (data [keyBegin :keyEnd ]) {
126
- keyLevel ++
127
- // If we found all keys in path
128
- if keyLevel == lk {
129
- return i + 1
123
+ // if string is a Key, and key level match
124
+ if data [i ] == ':' {
125
+ if keyLevel == level - 1 && // If key nesting level match current object nested level
126
+ keys [level - 1 ] == string (data [keyBegin :keyEnd ]) {
127
+ keyLevel ++
128
+ // If we found all keys in path
129
+ if keyLevel == lk {
130
+ return i + 1
131
+ }
130
132
}
133
+ } else {
134
+ i --
131
135
}
132
136
case '{' :
133
137
level ++
Original file line number Diff line number Diff line change @@ -146,7 +146,7 @@ var getTests = []Test{
146
146
},
147
147
Test {
148
148
desc : `no padding + nested` ,
149
- json : `{"a":{"a":1 },"b":2}` ,
149
+ json : `{"a":{"a":"1" },"b":2}` ,
150
150
path : []string {"b" },
151
151
isFound : true ,
152
152
data : `2` ,
You can’t perform that action at this time.
0 commit comments