You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@trafficserver.apache.org by ni...@apache.org on 2013/04/23 23:31:36 UTC

git commit: TS-1847: Don't trash buffer in MIOBuffer::fill

Updated Branches:
  refs/heads/master cade10bd7 -> 10b3e1cff


TS-1847: Don't trash buffer in MIOBuffer::fill


Project: http://git-wip-us.apache.org/repos/asf/trafficserver/repo
Commit: http://git-wip-us.apache.org/repos/asf/trafficserver/commit/10b3e1cf
Tree: http://git-wip-us.apache.org/repos/asf/trafficserver/tree/10b3e1cf
Diff: http://git-wip-us.apache.org/repos/asf/trafficserver/diff/10b3e1cf

Branch: refs/heads/master
Commit: 10b3e1cff6e40725562a80b39b6d52bede104616
Parents: cade10b
Author: niq <ni...@apache.org>
Authored: Tue Apr 23 22:30:27 2013 +0100
Committer: niq <ni...@apache.org>
Committed: Tue Apr 23 22:30:27 2013 +0100

----------------------------------------------------------------------
 iocore/eventsystem/P_IOBuffer.h |   11 ++++++-----
 1 files changed, 6 insertions(+), 5 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/trafficserver/blob/10b3e1cf/iocore/eventsystem/P_IOBuffer.h
----------------------------------------------------------------------
diff --git a/iocore/eventsystem/P_IOBuffer.h b/iocore/eventsystem/P_IOBuffer.h
index 0236a95..301e0c7 100644
--- a/iocore/eventsystem/P_IOBuffer.h
+++ b/iocore/eventsystem/P_IOBuffer.h
@@ -997,15 +997,16 @@ MIOBuffer::write_avail()
 TS_INLINE void
 MIOBuffer::fill(int64_t len)
 {
-  int64_t f = _writer->write_avail();
+  IOBufferBlock *my_writer = _writer;
+  int64_t f = my_writer->write_avail();
   while (f < len) {
-    _writer->fill(f);
+    my_writer->fill(f);
     len -= f;
     if (len > 0)
-      _writer = _writer->next;
-    f = _writer->write_avail();
+      my_writer = my_writer->next;
+    f = my_writer->write_avail();
   }
-  _writer->fill(len);
+  my_writer->fill(len);
 }
 
 TS_INLINE int