Index: include/AdblockPlus/FileSystem.h
===================================================================
--- a/include/AdblockPlus/FileSystem.h
+++ b/include/AdblockPlus/FileSystem.h
@@ -60,33 +60,35 @@
       bool isFile;
 
       /**
        * POSIX time of the last modification.
        */
       int64_t lastModified;
     };
 
+    typedef std::vector<uint8_t> IOBuffer;
+
     virtual ~FileSystem() {}
 
     /**
      * Reads from a file.
      * @param path File path.
-     * @return Input stream with the file's contents.
+     * @return Buffer with the file content.
      */
-    virtual std::shared_ptr<std::istream>
+    virtual IOBuffer
       Read(const std::string& path) const = 0;
 
     /**
      * Writes to a file.
      * @param path File path.
-     * @param data Input stream with the data to write.
+     * @param data Buffer with the data to write.
      */
     virtual void Write(const std::string& path,
-                       std::istream& data) = 0;
+                       const IOBuffer& data) = 0;
 
     /**
      * Moves a file (i.e.\ renames it).
      * @param fromPath Current path to the file.
      * @param toPath New path to the file.
      */
     virtual void Move(const std::string& fromPath,
                       const std::string& toPath) = 0;
