Make more dictionaries const in fpdf_signature.cpp
Since the signature dictionaries are only being read from, they should
be const.
Change-Id: I9016cf6775f0f6299f8352917e240414478481d4
Reviewed-on: https://pdfium-review.googlesource.com/c/pdfium/+/104091
Commit-Queue: Lei Zhang <thestig@chromium.org>
Reviewed-by: Nigi <nigi@chromium.org>
diff --git a/fpdfsdk/fpdf_signature.cpp b/fpdfsdk/fpdf_signature.cpp
index 0a078b0..2e7d267 100644
--- a/fpdfsdk/fpdf_signature.cpp
+++ b/fpdfsdk/fpdf_signature.cpp
@@ -17,8 +17,9 @@
namespace {
-std::vector<RetainPtr<CPDF_Dictionary>> CollectSignatures(CPDF_Document* doc) {
- std::vector<RetainPtr<CPDF_Dictionary>> signatures;
+std::vector<RetainPtr<const CPDF_Dictionary>> CollectSignatures(
+ CPDF_Document* doc) {
+ std::vector<RetainPtr<const CPDF_Dictionary>> signatures;
const CPDF_Dictionary* root = doc->GetRoot();
if (!root)
return signatures;
@@ -33,7 +34,7 @@
CPDF_ArrayLocker locker(std::move(fields));
for (auto& field : locker) {
- RetainPtr<CPDF_Dictionary> field_dict = field->GetMutableDict();
+ RetainPtr<const CPDF_Dictionary> field_dict = field->GetDict();
if (field_dict && field_dict->GetNameFor(pdfium::form_fields::kFT) ==
pdfium::form_fields::kSig) {
signatures.push_back(std::move(field_dict));
@@ -58,7 +59,8 @@
if (!doc)
return nullptr;
- std::vector<RetainPtr<CPDF_Dictionary>> signatures = CollectSignatures(doc);
+ std::vector<RetainPtr<const CPDF_Dictionary>> signatures =
+ CollectSignatures(doc);
if (!fxcrt::IndexInBounds(signatures, index))
return nullptr;