Avoid getline(s, EOF)

Fixes #1288
diff --git a/src/lib_json/json_reader.cpp b/src/lib_json/json_reader.cpp
index a34017d..a6a3f4e 100644
--- a/src/lib_json/json_reader.cpp
+++ b/src/lib_json/json_reader.cpp
@@ -104,8 +104,7 @@
 
   // Since String is reference-counted, this at least does not
   // create an extra copy.
-  String doc;
-  std::getline(is, doc, static_cast<char> EOF);
+  String doc(std::istreambuf_iterator<char>(is), {});
   return parse(doc.data(), doc.data() + doc.size(), root, collectComments);
 }