Remove explicit template argument from ScopedSetInsertion users
Update ScopedSetInsertion users to do automatic type deduction, since
modern compilers can figure it out. Whereas compilers in 2016 could not.
Change-Id: I2bf3224980eb3466b0a9542da9df351c421de2bb
Reviewed-on: https://pdfium-review.googlesource.com/c/pdfium/+/131179
Commit-Queue: Lei Zhang <thestig@chromium.org>
Reviewed-by: Tom Sepez <tsepez@chromium.org>
diff --git a/core/fpdfapi/page/cpdf_colorspace.cpp b/core/fpdfapi/page/cpdf_colorspace.cpp
index 7893df3..4a0aebe 100644
--- a/core/fpdfapi/page/cpdf_colorspace.cpp
+++ b/core/fpdfapi/page/cpdf_colorspace.cpp
@@ -512,7 +512,7 @@
return nullptr;
}
- ScopedSetInsertion<const CPDF_Object*> insertion(pVisited, pObj);
+ ScopedSetInsertion insertion(pVisited, pObj);
if (pObj->IsName()) {
return GetStockCSForName(pObj->GetString());
diff --git a/core/fpdfapi/page/cpdf_docpagedata.cpp b/core/fpdfapi/page/cpdf_docpagedata.cpp
index c832aac..a27fcc9 100644
--- a/core/fpdfapi/page/cpdf_docpagedata.cpp
+++ b/core/fpdfapi/page/cpdf_docpagedata.cpp
@@ -310,7 +310,7 @@
return nullptr;
}
- ScopedSetInsertion<const CPDF_Object*> insertion(pVisitedInternal, pCSObj);
+ ScopedSetInsertion insertion(pVisitedInternal, pCSObj);
if (pCSObj->IsName()) {
ByteString name = pCSObj->GetString();
diff --git a/core/fpdfapi/page/cpdf_function.cpp b/core/fpdfapi/page/cpdf_function.cpp
index 8b0ccdb..3d5d174 100644
--- a/core/fpdfapi/page/cpdf_function.cpp
+++ b/core/fpdfapi/page/cpdf_function.cpp
@@ -58,7 +58,7 @@
return nullptr;
}
- ScopedSetInsertion<VisitedSet::value_type> insertion(pVisited, pFuncObj);
+ ScopedSetInsertion insertion(pVisited, pFuncObj);
int iType = -1;
if (const CPDF_Stream* pStream = pFuncObj->AsStream()) {
diff --git a/core/fpdfapi/page/cpdf_streamcontentparser.cpp b/core/fpdfapi/page/cpdf_streamcontentparser.cpp
index 826d7c7..3ad222b 100644
--- a/core/fpdfapi/page/cpdf_streamcontentparser.cpp
+++ b/core/fpdfapi/page/cpdf_streamcontentparser.cpp
@@ -1647,8 +1647,8 @@
stream_start_offsets_ = stream_start_offsets;
- ScopedSetInsertion<const uint8_t*> scoped_insert(
- &recursion_state_->parsed_set, pDataStart.data());
+ ScopedSetInsertion scoped_insert(&recursion_state_->parsed_set,
+ pDataStart.data());
uint32_t init_obj_count = object_holder_->GetPageObjectCount();
AutoNuller<std::unique_ptr<CPDF_StreamParser>> auto_clearer(&syntax_);
diff --git a/core/fpdfapi/parser/cpdf_document.cpp b/core/fpdfapi/parser/cpdf_document.cpp
index add8788..e13c159 100644
--- a/core/fpdfapi/parser/cpdf_document.cpp
+++ b/core/fpdfapi/parser/cpdf_document.cpp
@@ -90,8 +90,7 @@
NodeType kid_type = GetNodeType(kid_dict);
if (kid_type == NodeType::kBranch) {
// Use |visited_pages| to help detect circular references of pages.
- ScopedSetInsertion<RetainPtr<CPDF_Dictionary>> local_add(visited_pages,
- kid_dict);
+ ScopedSetInsertion local_add(visited_pages, kid_dict);
std::optional<int> local_count =
CountPages(std::move(kid_dict), visited_pages);
if (!local_count.has_value()) {
@@ -553,7 +552,7 @@
return false;
}
- ScopedSetInsertion<RetainPtr<CPDF_Dictionary>> insertion(visited, kid_dict);
+ ScopedSetInsertion insertion(visited, kid_dict);
if (!InsertDeletePDFPage(std::move(kid_dict), pages_to_go, page_dict,
is_insert, visited)) {
return false;
diff --git a/core/fpdfapi/parser/cpdf_parser.cpp b/core/fpdfapi/parser/cpdf_parser.cpp
index 66f19e3..e181187 100644
--- a/core/fpdfapi/parser/cpdf_parser.cpp
+++ b/core/fpdfapi/parser/cpdf_parser.cpp
@@ -1070,7 +1070,7 @@
return nullptr;
}
- ScopedSetInsertion<uint32_t> local_insert(&parsing_obj_nums_, objnum);
+ ScopedSetInsertion local_insert(&parsing_obj_nums_, objnum);
const auto* info = cross_ref_table_->GetObjectInfo(objnum);
if (!info) {
return nullptr;
@@ -1119,7 +1119,7 @@
}
// Keep track of `object_number` before doing more parsing.
- ScopedSetInsertion<uint32_t> local_insert(&parsing_obj_nums_, object_number);
+ ScopedSetInsertion local_insert(&parsing_obj_nums_, object_number);
RetainPtr<CPDF_Object> object =
ParseIndirectObjectAt(object_pos, object_number);
diff --git a/core/fxcrt/scoped_set_insertion_unittest.cpp b/core/fxcrt/scoped_set_insertion_unittest.cpp
index 6a6b990..3b188cd 100644
--- a/core/fxcrt/scoped_set_insertion_unittest.cpp
+++ b/core/fxcrt/scoped_set_insertion_unittest.cpp
@@ -4,17 +4,19 @@
#include "core/fxcrt/scoped_set_insertion.h"
+#include <set>
+
#include "testing/gmock/include/gmock/gmock.h"
#include "testing/gtest/include/gtest/gtest.h"
TEST(fxcrt, ScopedSetInsertion) {
std::set<int> container;
{
- ScopedSetInsertion<int> insertion(&container, 5);
+ ScopedSetInsertion insertion(&container, 5);
EXPECT_THAT(container, testing::UnorderedElementsAreArray({5}));
{
- ScopedSetInsertion<int> insertion2(&container, 6);
+ ScopedSetInsertion insertion2(&container, 6);
EXPECT_THAT(container, testing::UnorderedElementsAreArray({5, 6}));
}