do not copy scripts.

This commit is contained in:
Christopher Jeffrey 2016-02-24 03:50:16 -08:00
parent 6ad3540664
commit c312905585
3 changed files with 13 additions and 7 deletions

View File

@ -35,13 +35,14 @@ function Input(options) {
if (Buffer.isBuffer(this.prevout.hash))
this.prevout.hash = utils.toHex(this.prevout.hash);
this.script = options.script ? options.script.slice() : [];
// this.script = options.script ? options.script.slice() : [];
this.script = options.script || [];
this.sequence = options.sequence == null ? 0xffffffff : options.sequence;
this._size = options._size || 0;
this._offset = options._offset || 0;
if (options.script && options.script._raw)
utils.hidden(this.script, '_raw', options.script._raw);
// if (options.script && options.script._raw)
// utils.hidden(this.script, '_raw', options.script._raw);
}
Input.prototype.__defineGetter__('data', function() {

View File

@ -24,11 +24,14 @@ function Output(options) {
value = options.value;
if (typeof value === 'number' && (value | 0) === value)
if (typeof value === 'number') {
assert(value % 1 === 0);
value = new bn(value);
}
this.value = utils.satoshi(value || new bn(0));
this.script = options.script ? options.script.slice() : [];
// this.script = options.script ? options.script.slice() : [];
this.script = options.script || [];
this._size = options._size || 0;
this._offset = options._offset || 0;
@ -39,8 +42,8 @@ function Output(options) {
assert(this.value.bitLength() <= 63);
assert(!(this.value.toArray('be', 8)[0] & 0x80));
if (options.script && options.script._raw)
utils.hidden(this.script, '_raw', options.script._raw);
// if (options.script && options.script._raw)
// utils.hidden(this.script, '_raw', options.script._raw);
}
Output.prototype.__defineGetter__('data', function() {

View File

@ -972,6 +972,8 @@ TX.prototype.getInputs = function getInputs(unspent, options) {
var i, size, newkb, change;
var fee;
assert(tx.inputs.length === 0);
if (!options || typeof options !== 'object') {
options = {
changeAddress: arguments[1],