@@ -302,13 +302,13 @@ module.exports = function (log, indexesPath) {
302
302
}
303
303
}
304
304
305
- function safeReadUint32 ( buf ) {
305
+ function safeReadUint32 ( buf , offset ) {
306
306
if ( buf . length < 4 ) {
307
307
const bigger = Buffer . alloc ( 4 )
308
308
buf . copy ( bigger )
309
- return bigger . readUInt32LE ( 0 )
309
+ return bigger . readUInt32LE ( offset )
310
310
} else {
311
- return buf . readUInt32LE ( 0 )
311
+ return buf . readUInt32LE ( offset )
312
312
}
313
313
}
314
314
@@ -324,7 +324,12 @@ module.exports = function (log, indexesPath) {
324
324
const fieldStart = opData . seek ( buffer )
325
325
if ( ~ fieldStart ) {
326
326
const buf = bipf . slice ( buffer , fieldStart )
327
- addToPrefixMap ( index . map , seq , buf . length ? safeReadUint32 ( buf ) : 0 )
327
+ const offset = opData . prefixOffset ? opData . prefixOffset : 0
328
+ addToPrefixMap (
329
+ index . map ,
330
+ seq ,
331
+ buf . length ? safeReadUint32 ( buf , offset ) : 0
332
+ )
328
333
}
329
334
330
335
index . offset = offset
@@ -339,7 +344,8 @@ module.exports = function (log, indexesPath) {
339
344
const fieldStart = opData . seek ( buffer )
340
345
if ( ~ fieldStart ) {
341
346
const buf = bipf . slice ( buffer , fieldStart )
342
- index . tarr [ seq ] = buf . length ? safeReadUint32 ( buf ) : 0
347
+ const offset = opData . prefixOffset ? opData . prefixOffset : 0
348
+ index . tarr [ seq ] = buf . length ? safeReadUint32 ( buf , offset ) : 0
343
349
} else {
344
350
index . tarr [ seq ] = 0
345
351
}
@@ -683,7 +689,8 @@ module.exports = function (log, indexesPath) {
683
689
684
690
function matchAgainstPrefix ( op , prefixIndex , cb ) {
685
691
const target = op . data . value
686
- const targetPrefix = target ? safeReadUint32 ( target ) : 0
692
+ const targetOffset = op . data . prefixOffset ? op . data . prefixOffset : 0
693
+ const targetPrefix = target ? safeReadUint32 ( target , targetOffset ) : 0
687
694
const bitset = new TypedFastBitSet ( )
688
695
const done = multicb ( { pluck : 1 } )
689
696
0 commit comments