]> git.ipfire.org Git - thirdparty/pdns.git/commitdiff
Use get_view() instead of get_data() 15668/head
authorOtto Moerbeek <otto.moerbeek@open-xchange.com>
Tue, 24 Jun 2025 08:53:37 +0000 (10:53 +0200)
committerOtto Moerbeek <otto.moerbeek@open-xchange.com>
Tue, 24 Jun 2025 08:53:37 +0000 (10:53 +0200)
Signed-off-by: Otto Moerbeek <otto.moerbeek@open-xchange.com>
pdns/protozero-trace.hh

index 12fc115e8f512048af83f0547bd7cb1c081059e0..36fcaad53a65c0b0e01d305e4c637bcd6dc4106e 100644 (file)
@@ -280,9 +280,9 @@ inline void encode(protozero::pbf_writer& writer, uint8_t field, const TraceID&
 inline TraceID decodeTraceID(protozero::pbf_reader& reader)
 {
   TraceID bytes;
-  auto [data, len] = reader.get_data();
-  len = std::min(bytes.size(), static_cast<size_t>(len));
-  std::copy(data, data + len, bytes.begin());
+  const auto data = reader.get_view();
+  const auto len = std::min(bytes.size(), data.size());
+  std::copy(data.data(), data.data() + len, bytes.begin()); // NOLINT(cppcoreguidelines-pro-bounds-pointer-arithmetic)
   return bytes;
 }
 
@@ -294,9 +294,9 @@ inline void encode(protozero::pbf_writer& writer, uint8_t field, const SpanID& v
 inline SpanID decodeSpanID(protozero::pbf_reader& reader)
 {
   SpanID bytes;
-  auto [data, len] = reader.get_data();
-  len = std::min(bytes.size(), static_cast<size_t>(len));
-  std::copy(data, data + len, bytes.begin());
+  const auto data = reader.get_view();
+  const auto len = std::min(bytes.size(), data.size());
+  std::copy(data.data(), data.data() + len, bytes.begin()); // NOLINT(cppcoreguidelines-pro-bounds-pointer-arithmetic)
   return bytes;
 }