Skip to content

Commit

Permalink
refactor: use nullptr
Browse files Browse the repository at this point in the history
  • Loading branch information
e-kwsm committed Jan 25, 2025
1 parent 9d7fcbf commit 18e34dc
Show file tree
Hide file tree
Showing 12 changed files with 269 additions and 280 deletions.
398 changes: 199 additions & 199 deletions src/pugixml.cpp

Large diffs are not rendered by default.

19 changes: 4 additions & 15 deletions src/pugixml.hpp
Original file line number Diff line number Diff line change
Expand Up @@ -125,17 +125,6 @@
# endif
#endif

// If C++ is 2011 or higher, use 'nullptr'
#ifndef PUGIXML_NULL
# if __cplusplus >= 201103
# define PUGIXML_NULL nullptr
# elif defined(_MSC_VER) && _MSC_VER >= 1600
# define PUGIXML_NULL nullptr
# else
# define PUGIXML_NULL 0
# endif
#endif

// Character interface macros
#ifdef PUGIXML_WCHAR_MODE
# define PUGIXML_TEXT(t) L ## t
Expand Down Expand Up @@ -744,15 +733,15 @@ namespace pugi

#ifndef PUGIXML_NO_XPATH
// Select single node by evaluating XPath query. Returns first node from the resulting node set.
xpath_node select_node(const char_t* query, xpath_variable_set* variables = PUGIXML_NULL) const;
xpath_node select_node(const char_t* query, xpath_variable_set* variables = nullptr) const;
xpath_node select_node(const xpath_query& query) const;

// Select node set by evaluating XPath query
xpath_node_set select_nodes(const char_t* query, xpath_variable_set* variables = PUGIXML_NULL) const;
xpath_node_set select_nodes(const char_t* query, xpath_variable_set* variables = nullptr) const;
xpath_node_set select_nodes(const xpath_query& query) const;

// (deprecated: use select_node instead) Select single node by evaluating XPath query.
PUGIXML_DEPRECATED xpath_node select_single_node(const char_t* query, xpath_variable_set* variables = PUGIXML_NULL) const;
PUGIXML_DEPRECATED xpath_node select_single_node(const char_t* query, xpath_variable_set* variables = nullptr) const;
PUGIXML_DEPRECATED xpath_node select_single_node(const xpath_query& query) const;

#endif
Expand Down Expand Up @@ -1307,7 +1296,7 @@ namespace pugi
public:
// Construct a compiled object from XPath expression.
// If PUGIXML_NO_EXCEPTIONS is not defined, throws xpath_exception on compilation errors.
explicit xpath_query(const char_t* query, xpath_variable_set* variables = PUGIXML_NULL);
explicit xpath_query(const char_t* query, xpath_variable_set* variables = nullptr);

// Constructor
xpath_query();
Expand Down
4 changes: 2 additions & 2 deletions tests/allocator.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -102,7 +102,7 @@ namespace
size_t aligned_size = align_to_page(size);

void* ptr = allocate_page_aligned(aligned_size + page_size);
if (!ptr) return 0;
if (!ptr) return nullptr;

char* end = static_cast<char*>(ptr) + aligned_size;

Expand Down Expand Up @@ -147,7 +147,7 @@ const size_t memory_alignment = sizeof(double) > sizeof(void*) ? sizeof(double)
void* memory_allocate(size_t size)
{
void* result = allocate(size + memory_alignment);
if (!result) return 0;
if (!result) return nullptr;

memcpy(result, &size, sizeof(size_t));

Expand Down
8 changes: 4 additions & 4 deletions tests/main.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -18,7 +18,7 @@
# include <windows.h>
#endif

test_runner* test_runner::_tests = 0;
test_runner* test_runner::_tests = nullptr;
size_t test_runner::_memory_fail_threshold = 0;
bool test_runner::_memory_fail_triggered = false;
jmp_buf test_runner::_failure_buffer;
Expand All @@ -36,12 +36,12 @@ static void* custom_allocate(size_t size)
g_memory_fail_triggered = true;
test_runner::_memory_fail_triggered = true;

return 0;
return nullptr;
}
else
{
void* ptr = memory_allocate(size);
if (!ptr) return 0;
if (!ptr) return nullptr;

g_memory_total_size += memory_size(ptr);
g_memory_total_count++;
Expand Down Expand Up @@ -183,7 +183,7 @@ int main(int, char** argv)
unsigned int total = 0;
unsigned int passed = 0;

test_runner* test = 0; // gcc3 "variable might be used uninitialized in this function" bug workaround
test_runner* test = nullptr; // gcc3 "variable might be used uninitialized in this function" bug workaround

for (test = test_runner::_tests; test; test = test->_next)
{
Expand Down
2 changes: 1 addition & 1 deletion tests/test.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -164,7 +164,7 @@ xpath_node_set_tester::xpath_node_set_tester(const pugi::xpath_node_set& set, co

if (result.empty())
{
document_order = 0;
document_order = nullptr;
document_size = 0;
}
else
Expand Down
54 changes: 27 additions & 27 deletions tests/test_document.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -889,7 +889,7 @@ TEST(document_parse_result_description)
{
result.status = static_cast<xml_parse_status>(i);

CHECK(result.description() != 0);
CHECK(result.description() != nullptr);
CHECK(result.description()[0] != 0);
}
}
Expand Down Expand Up @@ -1098,11 +1098,11 @@ TEST(document_contents_preserve)
{
file_data_t files[] =
{
{"tests/data/utftest_utf16_be_clean.xml", encoding_utf16_be, 0, 0},
{"tests/data/utftest_utf16_le_clean.xml", encoding_utf16_le, 0, 0},
{"tests/data/utftest_utf32_be_clean.xml", encoding_utf32_be, 0, 0},
{"tests/data/utftest_utf32_le_clean.xml", encoding_utf32_le, 0, 0},
{"tests/data/utftest_utf8_clean.xml", encoding_utf8, 0, 0}
{"tests/data/utftest_utf16_be_clean.xml", encoding_utf16_be, nullptr, 0},
{"tests/data/utftest_utf16_le_clean.xml", encoding_utf16_le, nullptr, 0},
{"tests/data/utftest_utf32_be_clean.xml", encoding_utf32_be, nullptr, 0},
{"tests/data/utftest_utf32_le_clean.xml", encoding_utf32_le, nullptr, 0},
{"tests/data/utftest_utf8_clean.xml", encoding_utf8, nullptr, 0}
};

// load files in memory
Expand Down Expand Up @@ -1136,8 +1136,8 @@ TEST(document_contents_preserve_latin1)
{
file_data_t files[] =
{
{"tests/data/latintest_utf8.xml", encoding_utf8, 0, 0},
{"tests/data/latintest_latin1.xml", encoding_latin1, 0, 0}
{"tests/data/latintest_utf8.xml", encoding_utf8, nullptr, 0},
{"tests/data/latintest_latin1.xml", encoding_latin1, nullptr, 0}
};

// load files in memory
Expand Down Expand Up @@ -1239,15 +1239,15 @@ TEST(document_load_buffer_empty)

xml_document doc;
CHECK(doc.load_buffer(buffer, 0, parse_default, encoding).status == status_no_document_element && !doc.first_child());
CHECK(doc.load_buffer(0, 0, parse_default, encoding).status == status_no_document_element && !doc.first_child());
CHECK(doc.load_buffer(nullptr, 0, parse_default, encoding).status == status_no_document_element && !doc.first_child());

CHECK(doc.load_buffer_inplace(buffer, 0, parse_default, encoding).status == status_no_document_element && !doc.first_child());
CHECK(doc.load_buffer_inplace(0, 0, parse_default, encoding).status == status_no_document_element && !doc.first_child());
CHECK(doc.load_buffer_inplace(nullptr, 0, parse_default, encoding).status == status_no_document_element && !doc.first_child());

void* own_buffer = get_memory_allocation_function()(1);

CHECK(doc.load_buffer_inplace_own(own_buffer, 0, parse_default, encoding).status == status_no_document_element && !doc.first_child());
CHECK(doc.load_buffer_inplace_own(0, 0, parse_default, encoding).status == status_no_document_element && !doc.first_child());
CHECK(doc.load_buffer_inplace_own(nullptr, 0, parse_default, encoding).status == status_no_document_element && !doc.first_child());
}
}

Expand Down Expand Up @@ -1275,27 +1275,27 @@ TEST(document_load_buffer_empty_fragment)

xml_document doc;
CHECK(doc.load_buffer(buffer, 0, parse_fragment, encoding) && !doc.first_child());
CHECK(doc.load_buffer(0, 0, parse_fragment, encoding) && !doc.first_child());
CHECK(doc.load_buffer(nullptr, 0, parse_fragment, encoding) && !doc.first_child());

CHECK(doc.load_buffer_inplace(buffer, 0, parse_fragment, encoding) && !doc.first_child());
CHECK(doc.load_buffer_inplace(0, 0, parse_fragment, encoding) && !doc.first_child());
CHECK(doc.load_buffer_inplace(nullptr, 0, parse_fragment, encoding) && !doc.first_child());

void* own_buffer = get_memory_allocation_function()(1);

CHECK(doc.load_buffer_inplace_own(own_buffer, 0, parse_fragment, encoding) && !doc.first_child());
CHECK(doc.load_buffer_inplace_own(0, 0, parse_fragment, encoding) && !doc.first_child());
CHECK(doc.load_buffer_inplace_own(nullptr, 0, parse_fragment, encoding) && !doc.first_child());
}
}

TEST(document_load_buffer_null)
{
xml_document doc;

CHECK(doc.load_buffer(0, 12).status == status_io_error && !doc.first_child());
CHECK(doc.load_buffer(0, 12, parse_fragment).status == status_io_error && !doc.first_child());
CHECK(doc.load_buffer(nullptr, 12).status == status_io_error && !doc.first_child());
CHECK(doc.load_buffer(nullptr, 12, parse_fragment).status == status_io_error && !doc.first_child());

CHECK(doc.load_buffer_inplace(0, 12).status == status_io_error && !doc.first_child());
CHECK(doc.load_buffer_inplace_own(0, 12).status == status_io_error && !doc.first_child());
CHECK(doc.load_buffer_inplace(nullptr, 12).status == status_io_error && !doc.first_child());
CHECK(doc.load_buffer_inplace_own(nullptr, 12).status == status_io_error && !doc.first_child());
}

TEST(document_progressive_truncation)
Expand Down Expand Up @@ -1350,7 +1350,7 @@ TEST(document_load_buffer_short)
CHECK(doc.load_buffer(data + 2, 2).status == status_no_document_element);
CHECK(doc.load_buffer(data + 3, 1).status == status_no_document_element);
CHECK(doc.load_buffer(data + 4, 0).status == status_no_document_element);
CHECK(doc.load_buffer(0, 0).status == status_no_document_element);
CHECK(doc.load_buffer(nullptr, 0).status == status_no_document_element);

delete[] data;
}
Expand All @@ -1367,7 +1367,7 @@ TEST(document_load_buffer_short_fragment)
CHECK(doc.load_buffer(data + 2, 2, parse_fragment) && test_string_equal(doc.text().get(), STR("cd")));
CHECK(doc.load_buffer(data + 3, 1, parse_fragment) && test_string_equal(doc.text().get(), STR("d")));
CHECK(doc.load_buffer(data + 4, 0, parse_fragment) && !doc.first_child());
CHECK(doc.load_buffer(0, 0, parse_fragment) && !doc.first_child());
CHECK(doc.load_buffer(nullptr, 0, parse_fragment) && !doc.first_child());

delete[] data;
}
Expand All @@ -1384,7 +1384,7 @@ TEST(document_load_buffer_inplace_short)
CHECK(doc.load_buffer_inplace(data + 2, 2).status == status_no_document_element);
CHECK(doc.load_buffer_inplace(data + 3, 1).status == status_no_document_element);
CHECK(doc.load_buffer_inplace(data + 4, 0).status == status_no_document_element);
CHECK(doc.load_buffer_inplace(0, 0).status == status_no_document_element);
CHECK(doc.load_buffer_inplace(nullptr, 0).status == status_no_document_element);

delete[] data;
}
Expand Down Expand Up @@ -1597,12 +1597,12 @@ TEST(document_convert_out_of_memory)
{
file_data_t files[] =
{
{"tests/data/utftest_utf16_be_clean.xml", encoding_utf16_be, 0, 0},
{"tests/data/utftest_utf16_le_clean.xml", encoding_utf16_le, 0, 0},
{"tests/data/utftest_utf32_be_clean.xml", encoding_utf32_be, 0, 0},
{"tests/data/utftest_utf32_le_clean.xml", encoding_utf32_le, 0, 0},
{"tests/data/utftest_utf8_clean.xml", encoding_utf8, 0, 0},
{"tests/data/latintest_latin1.xml", encoding_latin1, 0, 0}
{"tests/data/utftest_utf16_be_clean.xml", encoding_utf16_be, nullptr, 0},
{"tests/data/utftest_utf16_le_clean.xml", encoding_utf16_le, nullptr, 0},
{"tests/data/utftest_utf32_be_clean.xml", encoding_utf32_be, nullptr, 0},
{"tests/data/utftest_utf32_le_clean.xml", encoding_utf32_le, nullptr, 0},
{"tests/data/utftest_utf8_clean.xml", encoding_utf8, nullptr, 0},
{"tests/data/latintest_latin1.xml", encoding_latin1, nullptr, 0}
};

// load files in memory
Expand Down
4 changes: 2 additions & 2 deletions tests/test_dom_modify.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -1515,8 +1515,8 @@ TEST_XML(dom_node_append_buffer_empty, "<node />")
CHECK(node.append_buffer("", 0).status == status_no_document_element);
CHECK(node.append_buffer("", 0, parse_fragment).status == status_ok);

CHECK(node.append_buffer(0, 0).status == status_no_document_element);
CHECK(node.append_buffer(0, 0, parse_fragment).status == status_ok);
CHECK(node.append_buffer(nullptr, 0).status == status_no_document_element);
CHECK(node.append_buffer(nullptr, 0, parse_fragment).status == status_ok);

CHECK_NODE(doc, STR("<node/>"));
}
Expand Down
20 changes: 10 additions & 10 deletions tests/test_dom_traverse.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -1065,14 +1065,14 @@ TEST_XML(dom_internal_object, "<node attr='value'>value</node>")
xml_attribute attr = node.first_attribute();
xml_node value = node.first_child();

CHECK(xml_node().internal_object() == 0);
CHECK(xml_attribute().internal_object() == 0);
CHECK(xml_node().internal_object() == nullptr);
CHECK(xml_attribute().internal_object() == nullptr);

CHECK(node.internal_object() != 0);
CHECK(value.internal_object() != 0);
CHECK(node.internal_object() != nullptr);
CHECK(value.internal_object() != nullptr);
CHECK(node.internal_object() != value.internal_object());

CHECK(attr.internal_object() != 0);
CHECK(attr.internal_object() != nullptr);

xml_node node_copy = node;
CHECK(node_copy.internal_object() == node.internal_object());
Expand Down Expand Up @@ -1184,24 +1184,24 @@ TEST_XML(dom_unspecified_bool_coverage, "<node attr='value'>text</node>")
xml_node node = doc.first_child();

CHECK(node);
static_cast<void (*)(xml_node***)>(node)(0);
static_cast<void (*)(xml_node***)>(node)(nullptr);

CHECK(node.first_attribute());
static_cast<void (*)(xml_attribute***)>(node.first_attribute())(0);
static_cast<void (*)(xml_attribute***)>(node.first_attribute())(nullptr);

CHECK(node.text());
static_cast<void (*)(xml_text***)>(node.text())(0);
static_cast<void (*)(xml_text***)>(node.text())(nullptr);

#ifndef PUGIXML_NO_XPATH
xpath_query q(STR("/node"));

CHECK(q);
static_cast<void (*)(xpath_query***)>(q)(0);
static_cast<void (*)(xpath_query***)>(q)(nullptr);

xpath_node qn = q.evaluate_node(doc);

CHECK(qn);
static_cast<void (*)(xpath_node***)>(qn)(0);
static_cast<void (*)(xpath_node***)>(qn)(nullptr);
#endif
}

Expand Down
Loading

0 comments on commit 18e34dc

Please sign in to comment.