From 7c57165ad2e60cc85ad6494de82013e6c90d8de5 Mon Sep 17 00:00:00 2001 From: Mathias Buus Date: Sat, 18 Apr 2015 11:55:18 -0700 Subject: [PATCH] trim null bytes from octal nums --- headers.js | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/headers.js b/headers.js index 87f4628..df8deae 100644 --- a/headers.js +++ b/headers.js @@ -92,8 +92,10 @@ var encodeOct = function(val, n) { var decodeOct = function(val, offset) { // Older versions of tar can prefix with spaces while (offset < val.length && val[offset] === 32) offset++ - - return parseInt(val.slice(offset, clamp(indexOf(val, 32, offset, val.length), val.length, val.length)).toString(), 8) + var end = clamp(indexOf(val, 32, offset, val.length), val.length, val.length) + while (offset < end && val[offset] === 0) offset++ + if (end === offset) return 0 + return parseInt(val.slice(offset, end).toString(), 8) } var decodeStr = function(val, offset, length) {