diff --git a/include/chaiscript/language/chaiscript_engine.hpp b/include/chaiscript/language/chaiscript_engine.hpp index 9573b766..91b172e7 100644 --- a/include/chaiscript/language/chaiscript_engine.hpp +++ b/include/chaiscript/language/chaiscript_engine.hpp @@ -22,6 +22,7 @@ #endif #endif + #include #include @@ -499,10 +500,15 @@ namespace chaiscript infile.seekg(0, std::ios::beg); assert(size >= 0); - std::vector v(static_cast(size)); - infile.read(&v[0], size); - return std::string(v.begin(), v.end()); + if (size == std::streampos(0)) + { + return std::string(); + } else { + std::vector v(static_cast(size)); + infile.read(&v[0], size); + return std::string(v.begin(), v.end()); + } } /**