Commit e011bd5b98dd02ca18961e374977a17784ad659b
clone if you are gonna mutate opts object
Dominic Tarr committed on 10/12/2016, 2:39:33 PMParent: b8b3160361f94ba38bb14788f0aee273b4d1bc99
Files changed
util.js | changed |
util.js | ||
---|---|---|
@@ -4,14 +4,20 @@ | ||
4 | 4 … | function get (obj, path) { |
5 | 5 … | if(!obj) return undefined |
6 | 6 … | if('string' === typeof path) return obj[path] |
7 | 7 … | if(Array.isArray(path)) { |
8 | - for(var i = 0; i < path.length; i++) | |
8 … | + for(var i = 0; obj && i < path.length; i++) | |
9 | 9 … | obj = obj[path[i]] |
10 | 10 … | return obj |
11 | 11 … | } |
12 | 12 … | } |
13 | 13 … | |
14 … | +function clone (obj) { | |
15 … | + var _obj = {} | |
16 … | + for(var k in obj) _obj[k] = obj[k] | |
17 … | + return _obj | |
18 … | +} | |
19 … | + | |
14 | 20 … | exports.next = function (createStream, opts, property, range) { |
15 | 21 … | |
16 | 22 … | range = range || (opts.reverse ? 'lt' : 'gt') |
17 | 23 … | property = property || 'timestamp' |
@@ -24,9 +30,9 @@ | ||
24 | 30 … | if(value == null) return |
25 | 31 … | last = null |
26 | 32 … | } |
27 | 33 … | return pull( |
28 | - createStream(opts), | |
34 … | + createStream(clone(opts)), | |
29 | 35 … | pull.through(function (msg) { |
30 | 36 … | count ++ |
31 | 37 … | if(!msg.sync) { |
32 | 38 … | last = msg |
@@ -40,4 +46,9 @@ | ||
40 | 46 … | ) |
41 | 47 … | }) |
42 | 48 … | } |
43 | 49 … | |
50 … | + | |
51 … | + | |
52 … | + | |
53 … | + | |
54 … | + |
Built with git-ssb-web