)]}'
{
  "commit": "2d07a1bb14087a084592571dd32d1d58d70eb0d1",
  "tree": "abdad4971305ff9eccb5303f3edfc74ea1660125",
  "parents": [
    "5d853e3e6d8b306e8843992bc8f74089f3f8a6ca"
  ],
  "author": {
    "name": "Abseil Team",
    "email": "absl-team@google.com",
    "time": "Tue Oct 13 14:55:12 2026 -0700"
  },
  "committer": {
    "name": "Copybara-Service",
    "email": "copybara-worker@google.com",
    "time": "Tue Oct 20 12:46:57 2026 -0700"
  },
  "message": "Migrate unsafe sscanf call in str_format convert_test to safe buffers.\n\n`MatchesPointerString` parsed formatted pointers back into addresses with\n`sscanf(\"%p\")`, which is an unsafe libc call under the Safe Buffers programming\nmodel: Clang\u0027s `-Wunsafe-buffer-usage` (via\n`-Wunsafe-buffer-usage-in-libc-call`) flags every `*scanf` call, because the\ninput must be NUL-terminated and the outputs are passed through type-erased\nvarargs.\n\nMigrate the call to safe buffers by parsing the string with\n`absl::SimpleHexAtoi` into a `uintptr_t`, which takes the input as a bounded\n`absl::string_view`. absl formats a non-null `%p` as if by `%#x` (lowercase hex\nwith a `0x` prefix), padded with spaces, and `SimpleHexAtoi` trims surrounding\nASCII whitespace and accepts the optional `0x` prefix, so every width and\nprecision variant exercised by the test still parses. The matcher is also\nslightly stricter: trailing characters after the hex digits now fail to parse\ninstead of being ignored.\n\nPiperOrigin-RevId: 998910297\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "cd60ef3a72355de51406ab503d871bf05ec55006",
      "old_mode": 33188,
      "old_path": "absl/strings/internal/str_format/convert_test.cc",
      "new_id": "9aa56718581fe4029d159906ec5e64f386f0a771",
      "new_mode": 33188,
      "new_path": "absl/strings/internal/str_format/convert_test.cc"
    }
  ]
}
