cli: preserve sub-second mtime on the BSDs (fixes #1515) HAVE_UTIMENSAT was only set when _POSIX_C_SOURCE >= 200809L or _ATFILE_SOURCE was defined. FreeBSD, OpenBSD, NetBSD and DragonFly BSD provide utimensat()/futimens() and nanosecond-resolution stat timestamps by default without defining either macro, so the CLI fell back to utime() and truncated the copied mtime to whole seconds (visible as .br files with a .000000000 nanosecond field next to the source). Detect those platforms explicitly. The existing non-Apple ATIME_NSEC / MTIME_NSEC macros already use the st_atim / st_mtim spelling that the BSDs expose, so no further change is needed.
Recent Commits to brotli:master
-
cli: preserve sub-second mtime on the BSDs (fixes #1515)
-
Merge pull request #1526 from eustas:fix_lint
Merge pull request #1526 from eustas:fix_lint PiperOrigin-RevId: 973810649
-
Merge branch 'master' into fix_lint
Merge branch 'master' into fix_lint
-
Merge pull request #1527 from rootkiller6788:fix-parseparams-empty-ar…
Merge pull request #1527 from rootkiller6788:fix-parseparams-empty-args-oob PiperOrigin-RevId: 971820982
-
Fix new ruff findings
Fix new ruff findings
-
Fix out-of-bounds write in ParseParams for empty-string arguments
Fix out-of-bounds write in ParseParams for empty-string arguments Empty-string CLI arguments were recorded in params->not_input_indices before the "too many options" bounds check ran, so passing more than MAX_OPTIONS empty-string arguments wrote past the end of the fixed-size array and corrupted the stack (reproducible crash). Move the bounds check to the top of the argument loop so every write site is guarded.
-
Add params to brotli to manually enable or disable the SIMD hashers.

Add params to brotli to manually enable or disable the SIMD hashers. PiperOrigin-RevId: 959173169