diff --git a/include/dwarfs/writer/internal/detail/multi_queue_block_merger_impl.h b/include/dwarfs/writer/internal/detail/multi_queue_block_merger_impl.h index 160ae34c..2699145f 100644 --- a/include/dwarfs/writer/internal/detail/multi_queue_block_merger_impl.h +++ b/include/dwarfs/writer/internal/detail/multi_queue_block_merger_impl.h @@ -277,9 +277,12 @@ class multi_queue_block_merger_impl : public block_merger_base, cached_max_worst_case_source_block_size_.reset(); } + // NOLINTBEGIN(cppcoreguidelines-avoid-do-while) + // This really becomes harder to read if we don't use a do-while loop do { active_slot_index_ = (active_slot_index_ + 1) % active_slots_.size(); } while (active_slot_index_ != ix && !active_slots_[active_slot_index_]); + // NOLINTEND(cppcoreguidelines-avoid-do-while) if constexpr (debug) { if (not_last) { diff --git a/src/tool/pager.cpp b/src/tool/pager.cpp index 2efd5c35..21f1849a 100644 --- a/src/tool/pager.cpp +++ b/src/tool/pager.cpp @@ -80,10 +80,12 @@ std::optional find_pager_program(os_access const& os) { void show_in_pager(pager_program const& pager, std::string text) { boost::asio::io_context ios; + // NOLINTBEGIN(clang-analyzer-unix.BlockInCriticalSection) bp::child proc(pager.name.wstring(), bp::args(pager.args), bp::std_in = boost::asio::const_buffer(text.data(), text.size()), bp::std_out > stdout, ios); + // NOLINTEND(clang-analyzer-unix.BlockInCriticalSection) ios.run(); proc.wait(); }