Make CFX_RenderDevice::GetBitmap() const-correct
Split GetBitmap() into const and non-const versions. Use the const
version in a couple of spots where it is applicable.
Bug: pdfium:2115
Change-Id: I580acfe53569738d23b455c6c5763a47ee6c6fc7
Reviewed-on: https://pdfium-review.googlesource.com/c/pdfium/+/115410
Reviewed-by: Tom Sepez <tsepez@chromium.org>
Commit-Queue: Lei Zhang <thestig@chromium.org>
diff --git a/core/fxge/cfx_renderdevice.cpp b/core/fxge/cfx_renderdevice.cpp
index 4009e98..e0025de 100644
--- a/core/fxge/cfx_renderdevice.cpp
+++ b/core/fxge/cfx_renderdevice.cpp
@@ -533,7 +533,11 @@
return m_pDeviceDriver->GetDeviceCaps(caps_id);
}
-RetainPtr<CFX_DIBitmap> CFX_RenderDevice::GetBitmap() const {
+RetainPtr<CFX_DIBitmap> CFX_RenderDevice::GetBitmap() {
+ return m_pBitmap;
+}
+
+RetainPtr<const CFX_DIBitmap> CFX_RenderDevice::GetBitmap() const {
return m_pBitmap;
}
diff --git a/core/fxge/cfx_renderdevice.h b/core/fxge/cfx_renderdevice.h
index 8295a06..fdc577d 100644
--- a/core/fxge/cfx_renderdevice.h
+++ b/core/fxge/cfx_renderdevice.h
@@ -62,7 +62,8 @@
DeviceType GetDeviceType() const { return m_DeviceType; }
int GetRenderCaps() const { return m_RenderCaps; }
int GetDeviceCaps(int id) const;
- RetainPtr<CFX_DIBitmap> GetBitmap() const;
+ RetainPtr<CFX_DIBitmap> GetBitmap();
+ RetainPtr<const CFX_DIBitmap> GetBitmap() const;
[[nodiscard]] bool CreateCompatibleBitmap(const RetainPtr<CFX_DIBitmap>& pDIB,
int width,
int height) const;
diff --git a/xfa/fgas/graphics/cfgas_gegraphics.cpp b/xfa/fgas/graphics/cfgas_gegraphics.cpp
index 6f255d6..5b5da61 100644
--- a/xfa/fgas/graphics/cfgas_gegraphics.cpp
+++ b/xfa/fgas/graphics/cfgas_gegraphics.cpp
@@ -242,7 +242,7 @@
const CFGAS_GEPath& path,
const CFX_FillRenderOptions& fill_options,
const CFX_Matrix& matrix) {
- RetainPtr<CFX_DIBitmap> bitmap = m_renderDevice->GetBitmap();
+ RetainPtr<const CFX_DIBitmap> bitmap = m_renderDevice->GetBitmap();
int32_t width = bitmap->GetWidth();
int32_t height = bitmap->GetHeight();
auto bmp = pdfium::MakeRetain<CFX_DIBitmap>();
@@ -281,7 +281,7 @@
const CFGAS_GEPath& path,
const CFX_FillRenderOptions& fill_options,
const CFX_Matrix& matrix) {
- RetainPtr<CFX_DIBitmap> bitmap = m_renderDevice->GetBitmap();
+ RetainPtr<const CFX_DIBitmap> bitmap = m_renderDevice->GetBitmap();
int32_t width = bitmap->GetWidth();
int32_t height = bitmap->GetHeight();
float start_x = m_info.fillColor.GetShading()->GetBeginPoint().x;