From 9b9987547840e90cb61c2364926e00dd6b6e2381 Mon Sep 17 00:00:00 2001 From: Tatsuhiro Tsujikawa Date: Sun, 3 Mar 2013 14:12:59 +0900 Subject: [PATCH] Add writeOptionLine() to format 1 line of option name/value pair --- src/SessionSerializer.cc | 62 +++++++++++++++++----------------------- 1 file changed, 26 insertions(+), 36 deletions(-) diff --git a/src/SessionSerializer.cc b/src/SessionSerializer.cc index d3d00cb2..45e7b591 100644 --- a/src/SessionSerializer.cc +++ b/src/SessionSerializer.cc @@ -90,6 +90,21 @@ bool SessionSerializer::save(const std::string& filename) const return File(tempFilename).renameTo(filename); } +namespace { +// Write 1 line of option name/value pair. This function returns true +// if it succeeds, or false. +bool writeOptionLine(BufferedFile& fp, const Pref* pref, + const std::string& val) +{ + size_t prefLen = strlen(pref->k); + return fp.write(" ", 1) == 1 && + fp.write(pref->k, prefLen) == prefLen && + fp.write("=", 1) == 1 && + fp.write(val.c_str(), val.size()) == val.size() && + fp.write("\n", 1) == 1; +} +} // namespace + namespace { bool writeOption(BufferedFile& fp, const SharedHandle