summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorYehuda Sadeh <yehuda@inktank.com>2013-09-12 12:26:41 -0700
committerYehuda Sadeh <yehuda@inktank.com>2013-09-20 08:55:12 -0700
commitca984e321e7bfd00e4ea33127d2beface5105e66 (patch)
treeb0bc907c6ed606728b722a4c7c84b44eeeb301b0
parent08fe028bad13096d482454a2f303158727c363ff (diff)
downloadceph-ca984e321e7bfd00e4ea33127d2beface5105e66.tar.gz
bufferlist: don't use list::size()
Reviewed-by: Sage Weil <sage@inktank.com> Signed-off-by: Yehuda Sadeh <yehuda@inktank.com>
-rw-r--r--src/common/buffer.cc9
1 files changed, 6 insertions, 3 deletions
diff --git a/src/common/buffer.cc b/src/common/buffer.cc
index 0424887139e..24a61724c8e 100644
--- a/src/common/buffer.cc
+++ b/src/common/buffer.cc
@@ -990,11 +990,14 @@ void buffer::list::rebuild_page_aligned()
*/
char *buffer::list::c_str()
{
- if (_buffers.size() == 0)
+ if (_buffers.empty())
return 0; // no buffers
- if (_buffers.size() > 1)
+
+ std::list<ptr>::const_iterator iter = _buffers.begin();
+ iter++;
+
+ if (iter != _buffers.end())
rebuild();
- assert(_buffers.size() == 1);
return _buffers.front().c_str(); // good, we're already contiguous.
}