Correctly account for the Spaces array nul terminator. Thanks Chris!

llvm-svn: 79894
This commit is contained in:
Dan Gohman 2009-08-24 04:43:38 +00:00
parent e9f6a3fcdc
commit 4fdc1f8e2d

View File

@ -304,11 +304,12 @@ raw_ostream &raw_ostream::indent(unsigned NumSpaces) {
" ";
// Usually the indentation is small, handle it with a fastpath.
if (NumSpaces <= array_lengthof(Spaces))
if (NumSpaces < array_lengthof(Spaces))
return write(Spaces, NumSpaces);
while (NumSpaces) {
unsigned NumToWrite = std::min(NumSpaces, (unsigned)array_lengthof(Spaces));
unsigned NumToWrite = std::min(NumSpaces,
(unsigned)array_lengthof(Spaces)-1);
write(Spaces, NumToWrite);
NumSpaces -= NumToWrite;
}