)]}'
{
  "commit": "b637795e2b7e61185aa7dc554e44c2065abeadd4",
  "tree": "7fa6436b5ba1208e26e48e872ceec02ccacf81e5",
  "parents": [
    "f69044b043f2888fd50a8c00adcd9ae9524a722f"
  ],
  "author": {
    "name": "Abseil Team",
    "email": "absl-team@google.com",
    "time": "Tue Oct 20 17:07:48 2026 -0700"
  },
  "committer": {
    "name": "Copybara-Service",
    "email": "copybara-worker@google.com",
    "time": "Tue Oct 20 17:09:15 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: 1003508078\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"
    }
  ]
}
