Skip to content

Commit 41885bf

Browse files
committed
nulldata: change data to array
1 parent 93b815c commit 41885bf

File tree

4 files changed

+23
-6
lines changed

4 files changed

+23
-6
lines changed

src/templates/nulldata.js

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -14,15 +14,15 @@ function check (script) {
1414
check.toJSON = function () { return 'null data output' }
1515

1616
function encode (data) {
17-
typeforce(types.Buffer, data)
17+
typeforce([types.Buffer], data)
1818

19-
return bscript.compile([OPS.OP_RETURN, data])
19+
return bscript.compile([OPS.OP_RETURN].concat(data))
2020
}
2121

2222
function decode (buffer) {
2323
typeforce(check, buffer)
2424

25-
return buffer.slice(2)
25+
return bscript.decompile(buffer).slice(1)
2626
}
2727

2828
module.exports = {

test/fixtures/script.json

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -95,6 +95,10 @@
9595
"asm": "OP_RETURN deadffffffffffffffffffffffffffffffffbeef",
9696
"script": "6a14deadffffffffffffffffffffffffffffffffbeef"
9797
},
98+
{
99+
"asm": "OP_RETURN deadffffffffffffffffffffffffffffffffbeef deadffffffffffffffffffffffffffffffffbeef",
100+
"script": "6a14deadffffffffffffffffffffffffffffffffbeef14deadffffffffffffffffffffffffffffffffbeef"
101+
},
98102
{
99103
"asm": "OP_0 OP_0 3044022001ab168e80b863fdec694350b587339bb72a37108ac3c989849251444d13ebba02201811272023e3c1038478eb972a82d3ad431bfc2408e88e4da990f1a7ecbb263901 3045022100aaeb7204c17eee2f2c4ff1c9f8b39b79e75e7fbf33e92cc67ac51be8f15b75f90220659eee314a4943a6384d2b154fa5821ef7a084814d7ee2c6f9f7f0ffb53be34b01",
100104
"script": "0000473044022001ab168e80b863fdec694350b587339bb72a37108ac3c989849251444d13ebba02201811272023e3c1038478eb972a82d3ad431bfc2408e88e4da990f1a7ecbb263901483045022100aaeb7204c17eee2f2c4ff1c9f8b39b79e75e7fbf33e92cc67ac51be8f15b75f90220659eee314a4943a6384d2b154fa5821ef7a084814d7ee2c6f9f7f0ffb53be34b01",

test/fixtures/templates.json

Lines changed: 15 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -113,13 +113,26 @@
113113
},
114114
{
115115
"type": "nulldata",
116-
"data": "06deadbeef03f895a2ad89fb6d696497af486cb7c644a27aa568c7a18dd06113401115185474",
116+
"data": [
117+
"06deadbeef03f895a2ad89fb6d696497af486cb7c644a27aa568c7a18dd06113401115185474"
118+
],
117119
"output": "OP_RETURN 06deadbeef03f895a2ad89fb6d696497af486cb7c644a27aa568c7a18dd06113401115185474",
118120
"outputHex": "6a2606deadbeef03f895a2ad89fb6d696497af486cb7c644a27aa568c7a18dd06113401115185474"
119121
},
120122
{
121123
"type": "nulldata",
122-
"data": "deadffffffffffffffffffffffffffffffffbeef",
124+
"data": [
125+
"deadffffffffffffffffffffffffffffffffbeef",
126+
"deadffffffffffffffffffffffffffffffffbeef"
127+
],
128+
"output": "OP_RETURN deadffffffffffffffffffffffffffffffffbeef deadffffffffffffffffffffffffffffffffbeef",
129+
"outputHex": "6a14deadffffffffffffffffffffffffffffffffbeef14deadffffffffffffffffffffffffffffffffbeef"
130+
},
131+
{
132+
"type": "nulldata",
133+
"data": [
134+
"deadffffffffffffffffffffffffffffffffbeef"
135+
],
123136
"output": "OP_RETURN deadffffffffffffffffffffffffffffffffbeef",
124137
"outputHex": "6a14deadffffffffffffffffffffffffffffffffbeef"
125138
},

test/templates.js

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -499,7 +499,7 @@ describe('script-templates', function () {
499499
fixtures.valid.forEach(function (f) {
500500
if (f.type !== 'nulldata') return
501501

502-
var data = Buffer.from(f.data, 'hex')
502+
var data = f.data.map(function (x) { return Buffer.from(x, 'hex') })
503503
var output = btemplates.nullData.output.encode(data)
504504

505505
it('encodes to ' + f.output, function () {

0 commit comments

Comments
 (0)