Convert CFX_BitStream to store a span<>

Looks like this was partially converted, but still was using
raw pointer arithmetic under the covers.

Change-Id: I7f712b8c3b3917f86ce59d0974d6496db9786899
Reviewed-on: https://pdfium-review.googlesource.com/c/pdfium/+/101030
Commit-Queue: Tom Sepez <tsepez@chromium.org>
Reviewed-by: Lei Zhang <thestig@chromium.org>
Auto-Submit: Tom Sepez <tsepez@chromium.org>
diff --git a/core/fxcrt/cfx_bitstream.cpp b/core/fxcrt/cfx_bitstream.cpp
index e343deb..a1719da 100644
--- a/core/fxcrt/cfx_bitstream.cpp
+++ b/core/fxcrt/cfx_bitstream.cpp
@@ -13,8 +13,8 @@
 #include "third_party/base/check_op.h"
 
 CFX_BitStream::CFX_BitStream(pdfium::span<const uint8_t> pData)
-    : m_BitSize(pData.size() * 8), m_pData(pData.data()) {
-  CHECK_LE(pData.size(), std::numeric_limits<size_t>::max() / 8);
+    : m_BitSize(pData.size() * 8), m_pData(pData) {
+  CHECK_LE(m_pData.size(), std::numeric_limits<size_t>::max() / 8);
 }
 
 CFX_BitStream::~CFX_BitStream() = default;
@@ -31,8 +31,7 @@
 
   const uint32_t bit_pos = m_BitPos % 8;
   size_t byte_pos = m_BitPos / 8;
-  const uint8_t* data = m_pData;
-  uint8_t current_byte = data[byte_pos];
+  uint8_t current_byte = m_pData[byte_pos];
 
   if (nBits == 1) {
     uint32_t bit = (current_byte & (1 << (7 - bit_pos))) ? 1 : 0;
@@ -55,10 +54,10 @@
   }
   while (bit_left >= 8) {
     bit_left -= 8;
-    result |= data[byte_pos++] << bit_left;
+    result |= m_pData[byte_pos++] << bit_left;
   }
   if (bit_left)
-    result |= data[byte_pos] >> (8 - bit_left);
+    result |= m_pData[byte_pos] >> (8 - bit_left);
   m_BitPos += nBits;
   return result;
 }
diff --git a/core/fxcrt/cfx_bitstream.h b/core/fxcrt/cfx_bitstream.h
index a476e8e..c60cf0a 100644
--- a/core/fxcrt/cfx_bitstream.h
+++ b/core/fxcrt/cfx_bitstream.h
@@ -10,7 +10,6 @@
 #include <stddef.h>
 #include <stdint.h>
 
-#include "core/fxcrt/unowned_ptr.h"
 #include "third_party/base/span.h"
 
 class CFX_BitStream {
@@ -34,7 +33,7 @@
  private:
   size_t m_BitPos = 0;
   const size_t m_BitSize;
-  UnownedPtr<const uint8_t> const m_pData;
+  pdfium::span<const uint8_t> const m_pData;
 };
 
 #endif  // CORE_FXCRT_CFX_BITSTREAM_H_