From 9e36ecd62eb2fec9e6eeff12233d828b49970016 Mon Sep 17 00:00:00 2001 From: Christopher Jeffrey Date: Mon, 22 Feb 2016 21:30:09 -0800 Subject: [PATCH] isScript --- lib/bcoin/script.js | 22 +++++++++++----------- 1 file changed, 11 insertions(+), 11 deletions(-) diff --git a/lib/bcoin/script.js b/lib/bcoin/script.js index f4631566..8c438061 100644 --- a/lib/bcoin/script.js +++ b/lib/bcoin/script.js @@ -1140,7 +1140,7 @@ script.num = function num(value, useNum, minimaldata) { script.array = function(value) { if (Buffer.isBuffer(value)) - return value.slice(); + return value; if (utils.isFinite(value)) value = new bn(value, 'le'); @@ -1306,23 +1306,23 @@ script.getSize = function getSize(s) { // Legacy script.size = script.getSize; -script.isEncoded = function isEncoded(s) { +script.isScript = function isScript(s) { var i, b; if (!s) return false; + if (!Buffer.isBuffer(s)) + return false; + + s = script.decode(s); + for (i = 0; i < s.length; i++) { b = s[i]; - - if (typeof b !== 'number') + if (Buffer.isBuffer(b)) + continue; + if (constants.opcodes[b] == null) return false; - - if (constants.opcodesByVal[b] == null) { - if (b >= 0x01 && b <= 0x4b) - continue; - return false; - } } return true; @@ -2026,7 +2026,7 @@ script.isScripthashInput = function isScripthashInput(s, redeem) { if (script.isKeyEncoding(raw)) return false; - if (!script.isEncoded(raw)) + if (!script.isScript(raw)) return false; return true;