From 2c5cb6ad9f2a78c27463da124e69bdd433354ff4 Mon Sep 17 00:00:00 2001 From: Daniel Huigens Date: Fri, 21 Dec 2018 11:26:00 -0500 Subject: [PATCH] Fix armor parsing in edge case where reader.readToEnd() returns new Uint8Array([]) --- src/encoding/armor.js | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/src/encoding/armor.js b/src/encoding/armor.js index 7a15874f..1d249393 100644 --- a/src/encoding/armor.js +++ b/src/encoding/armor.js @@ -291,7 +291,9 @@ function dearmor(input) { if (line.indexOf('=') === -1 && line.indexOf('-') === -1) { await writer.write(line); } else { - let remainder = line + await reader.readToEnd(); + let remainder = await reader.readToEnd(); + if (!remainder.length) remainder = ''; + remainder = line + remainder; remainder = remainder.replace(/[\t\r ]+$/mg, ''); const parts = remainder.split(reSplit); if (parts.length === 1) {