pass by ref bugfix

This commit is contained in:
gabi 2014-10-18 19:03:41 +03:00
parent 21065ec036
commit b36a803469
3 changed files with 5 additions and 7 deletions

View File

@ -7,7 +7,7 @@
#include <iomanip> #include <iomanip>
#include "fast_istostr.h" #include "fast_istostr.h"
#include "stack_buf.h" #include "stack_buf.h"
#include<iostream>
namespace c11log namespace c11log
{ {
@ -81,8 +81,6 @@ public:
fast_oss() :std::ostream(&_dev) {} fast_oss() :std::ostream(&_dev) {}
~fast_oss() = default; ~fast_oss() = default;
fast_oss(const fast_oss& other) :std::basic_ios<char>(), std::ostream(&_dev), _dev(other._dev) fast_oss(const fast_oss& other) :std::basic_ios<char>(), std::ostream(&_dev), _dev(other._dev)
{} {}
@ -108,7 +106,7 @@ public:
std::string str() std::string str()
{ {
auto buffer = _dev.buf(); auto& buffer = _dev.buf();
const char*data = buffer.data(); const char*data = buffer.data();
return std::string(data, data+buffer.size()); return std::string(data, data+buffer.size());
} }
@ -152,7 +150,7 @@ public:
void write_fast_oss(const fast_oss& oss) void write_fast_oss(const fast_oss& oss)
{ {
auto buffer = oss.buf(); auto& buffer = oss.buf();
_dev.sputn(buffer.data(), buffer.size()); _dev.sputn(buffer.data(), buffer.size());
} }

View File

@ -18,7 +18,7 @@ public:
void write(const log_msg& msg, std::ofstream& ofs) void write(const log_msg& msg, std::ofstream& ofs)
{ {
auto buf = msg.formatted.buf(); auto& buf = msg.formatted.buf();
ofs.write(buf.data(), buf.size()); ofs.write(buf.data(), buf.size());
if(--_flush_countdown == 0) if(--_flush_countdown == 0)
{ {

View File

@ -24,7 +24,7 @@ public:
protected: protected:
virtual void _sink_it(const details::log_msg& msg) override virtual void _sink_it(const details::log_msg& msg) override
{ {
auto buf = msg.formatted.buf(); auto& buf = msg.formatted.buf();
_ostream.write(buf.data(), buf.size()); _ostream.write(buf.data(), buf.size());
} }
std::ostream& _ostream; std::ostream& _ostream;