mirror of
https://github.com/nlohmann/json.git
synced 2025-05-12 14:11:38 +00:00
30 lines
795 B
C++
30 lines
795 B
C++
// __ _____ _____ _____
|
|
// __| | __| | | | JSON for Modern C++ (supporting code)
|
|
// | | |__ | | | | | | version 3.11.3
|
|
// |_____|_____|_____|_|___| https://github.com/nlohmann/json
|
|
//
|
|
// SPDX-FileCopyrightText: 2013-2023 Niels Lohmann <https://nlohmann.me>
|
|
// SPDX-License-Identifier: MIT
|
|
|
|
#include "doctest_compatibility.h"
|
|
|
|
#include <nlohmann/json.hpp>
|
|
using nlohmann::json;
|
|
|
|
#include <algorithm>
|
|
|
|
TEST_CASE("tests on very large JSONs")
|
|
{
|
|
SECTION("issue #1419 - Segmentation fault (stack overflow) due to unbounded recursion")
|
|
{
|
|
const auto depth = 5000000;
|
|
|
|
std::string s(static_cast<std::size_t>(2 * depth), '[');
|
|
std::fill(s.begin() + depth, s.end(), ']');
|
|
|
|
json _;
|
|
CHECK_NOTHROW(_ = nlohmann::json::parse(s));
|
|
}
|
|
}
|
|
|