)]}'
{
  "commit": "30e7528001e17d0a03e33797010b146ae1ec2d89",
  "tree": "a9a1d184e096f149e717461787b86be38c951d6b",
  "parents": [
    "4bcbc6ac0509cc8b0d0d84618cfd518dd945c114"
  ],
  "author": {
    "name": "Hong Xu",
    "email": "hong@topbug.net",
    "time": "Wed Nov 12 00:07:06 2025 -0800"
  },
  "committer": {
    "name": "GitHub",
    "email": "noreply@github.com",
    "time": "Wed Nov 12 00:07:06 2025 -0800"
  },
  "message": "Return false in Reader::readValue when stack limit is exceeded (#1619)\n\njsoncpp, as a shared library, should not call `abort` merely because there\u0027s an error reading a value.\n\nSee https://en.cppreference.com/w/c/program/abort, `abort` should only be called to **abnormally** cause the program to exit. Functions inserted by `atexit` are also not called, meaning that the host program may have not cleaned up resources properly. But here, exceeding stack limit isn\u0027t a sign of abnormalty.\n\n`exit` is not a good substitute either, see the `exit-in-shared-library` from Debian:\nhttps://lintian.debian.org/tags/exit-in-shared-library.html\n\nFix #1618\n\nIn this case, returning false seems like a better idea.\n\nCo-authored-by: Jordan Bayles \u003cbayles.jordan@gmail.com\u003e",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "93bb82240c8c952ee5962edbde1e02c70e600633",
      "old_mode": 33188,
      "old_path": "src/lib_json/json_reader.cpp",
      "new_id": "265b030541f888210bf37d7ff16be861e7d02359",
      "new_mode": 33188,
      "new_path": "src/lib_json/json_reader.cpp"
    }
  ]
}
