• Home
  • Features
  • Pricing
  • Docs
  • Announcements
  • Sign In

open-source-parsers / jsoncpp
90%
master: 90%

Build:
Build:
LAST BUILD BRANCH: fix/1341-no-int64-signed-parsing
DEFAULT BRANCH: master
Repo Added 18 Oct 2019 02:45AM UTC
Files 8
Badge
Embed ▾
README BADGES
x

If you need to use a raster PNG badge, change the '.svg' to '.png' in the link

Markdown

Textile

RDoc

HTML

Rst

LAST BUILD ON BRANCH fix-fuzz-settings-keys
branch: fix-fuzz-settings-keys
CHANGE BRANCH
x
Reset
  • fix-fuzz-settings-keys
  • 00.11.0
  • 00.11.z
  • 1.9.2
  • 1.9.3
  • 1.9.4
  • 1.9.7
  • Add-project-status-to-README-to-set-expectations
  • BillyDonahue-avoid-isprint
  • BillyDonahue-patch-1
  • add-runtime-version
  • allow-dropped-placeholders
  • baylesj-patch-1
  • baylesj-patch-6
  • baylesj-patch-7
  • baylesj-patch-8
  • baylesj-patch-9
  • ci/bump-node24-actions
  • ci/test-secure-memory
  • cmake-version
  • coverage
  • czstring-copy-assign-double-free
  • docs/remove-pkg-managers
  • doxygen-modernize
  • drop_cpptl_support
  • example-branch
  • feature-amalgamation
  • fix-cpp20-build
  • fix-cxx11-abi-break
  • fix-czstring
  • fix-fuzzer
  • fix-github-actions-warnings
  • fix-issue-1627
  • fix-meson-coverage-coveralls
  • fix-missing-prototype-1705
  • fix-secure-memory-build
  • fix-zizmor-branch
  • fix/1341-no-int64-signed-parsing
  • fix/1427-subnormal-roundtrip
  • fix/1500-trailing-comma-comment
  • fix/1611-dense-array-index
  • fix/1694-soversion-bump
  • fix/cmake-disable-install-metadata
  • fix/cmake-dll-build-scope
  • fix/cmake-test-output-directory
  • fix/legacy-empty-array-comments-1238
  • fix/locale-number-parsing
  • fix/ourreader-stack-limit
  • fix/reader-dangling-ptr
  • fix/reject-control-chars
  • fix/remove-member-embedded-nul
  • fix/string-view-abi
  • fixup-project-version-updater
  • fixup-tests
  • fuzzer-fix1
  • improve-formatting
  • improve-qualifier-support
  • inc
  • issue1591
  • json-dll-build
  • jsoncpp_test
  • master
  • members
  • oss-fuzz-fuzzers-upstream
  • patch-1
  • patch-renu555
  • pre-v2.y.z
  • pypi
  • refs/pull/1214/merge
  • refs/pull/1339/merge
  • refs/pull/1383/merge
  • refs/pull/1409/merge
  • refs/pull/1419/merge
  • refs/pull/1424/merge
  • refs/pull/1435/merge
  • refs/pull/1448/merge
  • refs/pull/1457/merge
  • refs/pull/1462/merge
  • refs/pull/1467/merge
  • refs/pull/1478/merge
  • refs/pull/1479/merge
  • refs/pull/1480/merge
  • refs/pull/1486/merge
  • refs/pull/1491/merge
  • refs/pull/1499/merge
  • refs/pull/1516/merge
  • refs/pull/1527/merge
  • refs/pull/1528/merge
  • refs/pull/1534/merge
  • refs/pull/1567/merge
  • refs/pull/1570/merge
  • refs/pull/1572/merge
  • refs/pull/1574/merge
  • refs/pull/1575/merge
  • refs/pull/1578/merge
  • refs/pull/1579/merge
  • refs/pull/1584/merge
  • refs/pull/1593/merge
  • refs/pull/1596/merge
  • refs/pull/1597/merge
  • refs/pull/1599/merge
  • refs/pull/1600/merge
  • refs/pull/1601/merge
  • refs/pull/1602/merge
  • refs/pull/1615/merge
  • refs/pull/1619/merge
  • refs/pull/1622/merge
  • refs/pull/1625/merge
  • refs/pull/1635/merge
  • refs/pull/1637/merge
  • refs/pull/1639/merge
  • refs/pull/1648/merge
  • refs/pull/1649/merge
  • refs/pull/1654/merge
  • refs/pull/1657/merge
  • refs/pull/1658/merge
  • refs/pull/1659/merge
  • refs/pull/1660/merge
  • refs/pull/1661/merge
  • refs/pull/1662/merge
  • refs/pull/1663/merge
  • refs/pull/1665/merge
  • refs/pull/1666/merge
  • refs/pull/1667/merge
  • refs/pull/1674/merge
  • refs/pull/1677/merge
  • refs/pull/1678/merge
  • refs/pull/1679/merge
  • refs/pull/1680/merge
  • refs/pull/1683/merge
  • refs/pull/1685/merge
  • refs/pull/1686/merge
  • refs/pull/1689/merge
  • refs/pull/1691/merge
  • refs/pull/1693/merge
  • refs/pull/1695/merge
  • refs/pull/1696/merge
  • refs/pull/1697/merge
  • refs/pull/1698/merge
  • refs/pull/1699/merge
  • refs/pull/1700/merge
  • refs/pull/1701/merge
  • refs/pull/1703/merge
  • refs/pull/1706/merge
  • refs/tags/1.9.6
  • refs/tags/1.9.7
  • refs/tags/1.9.8
  • refs/tags/1.9.8-rc1
  • revert-1662-fix/locale-number-parsing
  • revert-soversion-change
  • skip-bom-fix
  • stack-depth
  • v1.9.3
  • validate-surrogate-halves
  • version-header
  • writer-utf8-continuation-bytes
  • zizmor

26 Oct 2026 02:42PM UTC coverage: 89.926% (+0.02%) from 89.907%
40342106111

Pull #1730

github

baylesj
fix(fuzz): use the real reader settings keys in the fuzzer

The fuzzer set most CharReaderBuilder settings under names with a
trailing underscore ("allowComments_", "strictRoot_", ...), which
newCharReader() does not read, and set failIfExtra twice. As a result
only failIfExtra and collectComments ever varied; every other reader
mode was stuck at its default.

Use the real key names, give the duplicate failIfExtra bit to skipBom,
and add an optional small stackLimit (bit 11, value from the upper 16
bits) so the depth-limit error paths are reachable. Abort if
CharReaderBuilder::validate() rejects the settings, so a misspelled key
fails loudly instead of silently disabling a mode.

The FuzzTest unit test only passed "{}", which is shorter than the
4-byte settings header and returned before touching any settings.
Exercise no settings, all settings, and a tiny stack limit.

In a local 2-minute libFuzzer run from test/data seeds, json_reader.cpp
edge coverage goes from 465 to 570 of 1996.
Pull Request #1730: fix(fuzz): use the real reader settings keys in the fuzzer

2223 of 2640 branches covered (84.2%)

Branch coverage included in aggregate %.

2615 of 2740 relevant lines covered (95.44%)

23835.16 hits per line

Relevant lines Covered
Build:
Build:
2740 RELEVANT LINES 2615 COVERED LINES
23835.16 HITS PER LINE
Source Files on fix-fuzz-settings-keys
  • Tree
  • List 8
  • Changed 1
  • Source Changed 0
  • Coverage Changed 1
Coverage ∆ File Lines Relevant Covered Missed Hits/Line Branch Hits Branch Misses

Recent builds

Builds Branch Commit Type Ran Committer Via Coverage
40342106111 fix-fuzz-settings-keys fix(fuzz): use the real reader settings keys in the fuzzer The fuzzer set most CharReaderBuilder settings under names with a trailing underscore ("allowComments_", "strictRoot_", ...), which newCharReader() does not read, and set failIfExtra twic... Pull #1730 26 Oct 2026 02:43PM UTC baylesj github
89.93
See All Builds (1068)
  • Repo on GitHub
STATUS · Troubleshooting · Open an Issue · Sales · Support · CAREERS · ENTERPRISE · START FREE TRIAL · SCHEDULE DEMO
ANNOUNCEMENTS · TWITTER · TOS & SLA · Supported CI Services · What's a CI service? · Automated Testing

© 2026 Coveralls, Inc