summaryrefslogtreecommitdiffstats
path: root/llvm/lib/Support/raw_ostream.cpp
diff options
context:
space:
mode:
authorOwen Anderson <resistor@mac.com>2008-08-21 22:39:33 +0000
committerOwen Anderson <resistor@mac.com>2008-08-21 22:39:33 +0000
commit3ad8ac90b6b12f5486a8ce205b0aa7974f3a68fc (patch)
tree15e2a3aee502a6f03f4788ee3b7cf7a0ede58220 /llvm/lib/Support/raw_ostream.cpp
parent2fd7dbaf1d17adf193b3c42208789a203fe25a53 (diff)
downloadbcm5719-llvm-3ad8ac90b6b12f5486a8ce205b0aa7974f3a68fc.tar.gz
bcm5719-llvm-3ad8ac90b6b12f5486a8ce205b0aa7974f3a68fc.zip
Fix write() when the string being written is larger than the buffer. This broke various ObjC testcases
with very long symbol names. llvm-svn: 55148
Diffstat (limited to 'llvm/lib/Support/raw_ostream.cpp')
-rw-r--r--llvm/lib/Support/raw_ostream.cpp1
1 files changed, 1 insertions, 0 deletions
diff --git a/llvm/lib/Support/raw_ostream.cpp b/llvm/lib/Support/raw_ostream.cpp
index b1209a2da73..a5cf629b071 100644
--- a/llvm/lib/Support/raw_ostream.cpp
+++ b/llvm/lib/Support/raw_ostream.cpp
@@ -116,6 +116,7 @@ raw_ostream &raw_ostream::write(const char *Ptr, unsigned Size) {
assert(OutBufCur == OutBufStart);
memcpy(OutBufStart, Ptr, NumToEmit);
Ptr += NumToEmit;
+ Size -= NumToEmit;
OutBufCur = OutBufStart + NumToEmit;
flush_impl();
}
OpenPOWER on IntegriCloud