summaryrefslogtreecommitdiff
path: root/payload_generator/extent_ranges.cc
diff options
context:
space:
mode:
Diffstat (limited to 'payload_generator/extent_ranges.cc')
-rw-r--r--payload_generator/extent_ranges.cc9
1 files changed, 9 insertions, 0 deletions
diff --git a/payload_generator/extent_ranges.cc b/payload_generator/extent_ranges.cc
index 4600efe7..2098639b 100644
--- a/payload_generator/extent_ranges.cc
+++ b/payload_generator/extent_ranges.cc
@@ -202,6 +202,15 @@ void ExtentRanges::SubtractRepeatedExtents(
}
}
+bool ExtentRanges::OverlapsWithExtent(const Extent& extent) const {
+ for (const auto& entry : extent_set_) {
+ if (ExtentsOverlap(entry, extent)) {
+ return true;
+ }
+ }
+ return false;
+}
+
bool ExtentRanges::ContainsBlock(uint64_t block) const {
auto lower = extent_set_.lower_bound(ExtentForRange(block, 1));
// The block could be on the extent before the one in |lower|.