Skip to content

Commit 3442498

Browse files
committed
Still more cleanup: simplify handling of Offsets and Lengths
1 parent e9a71f2 commit 3442498

File tree

1 file changed

+10
-13
lines changed

1 file changed

+10
-13
lines changed

clang/tools/clang-format/ClangFormat.cpp

Lines changed: 10 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -279,27 +279,24 @@ static bool fillRanges(MemoryBuffer *Code,
279279

280280
if (Offsets.empty())
281281
Offsets.push_back(0);
282-
if (Offsets.size() != Lengths.size() &&
283-
!(Offsets.size() == 1 && Lengths.empty())) {
282+
if (Offsets.size() == 1 && Lengths.empty()) {
283+
Lengths.push_back(Sources.getFileOffset(Sources.getLocForEndOfFile(ID)) -
284+
Offsets[0]);
285+
} else if (Offsets.size() != Lengths.size()) {
284286
errs() << "error: number of -offset and -length arguments must match.\n";
285287
return true;
286288
}
287-
for (unsigned I = 0, E = Offsets.size(), Size = Lengths.size(); I < E; ++I) {
289+
for (unsigned I = 0, E = Offsets.size(); I < E; ++I) {
288290
const auto Offset = Offsets[I];
289291
if (Offset >= Code->getBufferSize()) {
290292
errs() << "error: offset " << Offset << " is outside the file\n";
291293
return true;
292294
}
293-
unsigned Length;
294-
if (I < Size) {
295-
Length = Lengths[I];
296-
if (Offset + Length > Code->getBufferSize()) {
297-
errs() << "error: invalid length " << Length << ", offset + length ("
298-
<< Offset + Length << ") is outside the file.\n";
299-
return true;
300-
}
301-
} else {
302-
Length = Sources.getFileOffset(Sources.getLocForEndOfFile(ID)) - Offset;
295+
const auto Length = Lengths[I];
296+
if (Offset + Length > Code->getBufferSize()) {
297+
errs() << "error: invalid length " << Length << ", offset + length ("
298+
<< Offset + Length << ") is outside the file.\n";
299+
return true;
303300
}
304301
Ranges.push_back(tooling::Range(Offset, Length));
305302
}

0 commit comments

Comments
 (0)