From 0e964da42658a4e7e5bebe281f2c125575f34246 Mon Sep 17 00:00:00 2001 From: Alek Mosingiewicz Date: Fri, 25 May 2018 07:59:34 +0200 Subject: [PATCH] Attempt to remedy the problem occuring on Clang. --- include/chaiscript/language/chaiscript_engine.hpp | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/include/chaiscript/language/chaiscript_engine.hpp b/include/chaiscript/language/chaiscript_engine.hpp index 8ff6875e..a13d51f0 100644 --- a/include/chaiscript/language/chaiscript_engine.hpp +++ b/include/chaiscript/language/chaiscript_engine.hpp @@ -206,14 +206,14 @@ namespace chaiscript /// Skip BOM at the beginning of file static bool skip_bom(std::ifstream &infile) { - std::streamsize bytes_needed = 3; - std::streamsize bytes_read = 0; + size_t bytes_needed = 3; char buffer[3]; - bytes_read = infile.readsome(buffer, bytes_needed); + memset(buffer, '\0', bytes_needed); - if (bytes_needed == bytes_read - && (buffer[0] == '\xef') + infile.readsome(buffer, bytes_needed); + + if ((buffer[0] == '\xef') && (buffer[1] == '\xbb') && (buffer[2] == '\xbf')) {