diff --git a/lib/browser/Bignum.js b/lib/browser/Bignum.js index 110985509..7fa981999 100644 --- a/lib/browser/Bignum.js +++ b/lib/browser/Bignum.js @@ -4,8 +4,6 @@ var bnjs = function bnjs_extended(n) { if (!(this instanceof bnjs_extended)) { return new bnjs(n); } - if (typeof n === 'number') - n = n.toString(); arguments[0] = n; return _bnjs.apply(this, arguments); }; diff --git a/package.json b/package.json index 2b43765da..98ee1ac49 100644 --- a/package.json +++ b/package.json @@ -64,7 +64,7 @@ "mocha": ">=1.15.1", "sjcl": "=1.0.1", "hash.js": "=0.3.1", - "bn.js": "=0.13.2", + "bn.js": "=0.13.3", "elliptic": "=0.15.7", "bindings": "=1.1.1", "bufferput": "git://github.com/bitpay/node-bufferput.git", diff --git a/test/test.Bignum.js b/test/test.Bignum.js index 0910cc135..66d374800 100644 --- a/test/test.Bignum.js +++ b/test/test.Bignum.js @@ -17,6 +17,13 @@ describe('Bignum', function() { var bn = new Bignum(999970000); bn.toString().should.equal('999970000'); }); + + it('should parse numbers below and at bn.js internal word size', function() { + var bn = new Bignum(Math.pow(2, 26) - 1); + bn.toString().should.equal((Math.pow(2, 26) - 1).toString()); + var bn = new Bignum(Math.pow(2, 26)); + bn.toString().should.equal((Math.pow(2, 26)).toString()); + }); describe('#add', function() {