From 900c373fc12b978d344f06b50b22443ef4977893 Mon Sep 17 00:00:00 2001 From: Pablo Fernandez Date: Tue, 27 Oct 2015 10:14:32 -0300 Subject: [PATCH] remove infinite loop in isEncoding function the code is simpler and easier to read. --- lib/buffer.js | 36 +++++++++++++++--------------------- 1 file changed, 15 insertions(+), 21 deletions(-) diff --git a/lib/buffer.js b/lib/buffer.js index 53553253209923..88c0e8226dadfb 100644 --- a/lib/buffer.js +++ b/lib/buffer.js @@ -190,27 +190,21 @@ Buffer.compare = function compare(a, b) { Buffer.isEncoding = function(encoding) { - var loweredCase = false; - for (;;) { - switch (encoding) { - case 'hex': - case 'utf8': - case 'utf-8': - case 'ascii': - case 'binary': - case 'base64': - case 'ucs2': - case 'ucs-2': - case 'utf16le': - case 'utf-16le': - return true; - - default: - if (loweredCase) - return false; - encoding = ('' + encoding).toLowerCase(); - loweredCase = true; - } + var loweredCase = ('' + encoding).toLowerCase(); + switch (loweredCase) { + case 'hex': + case 'utf8': + case 'utf-8': + case 'ascii': + case 'binary': + case 'base64': + case 'ucs2': + case 'ucs-2': + case 'utf16le': + case 'utf-16le': + return true; + default: + return false; } };