)]}'
{
  "commit": "926cbddc185e035a4266f25203e81eec8960f114",
  "tree": "ebceaaa4eedfdb8e6e590fc164c4db755b90bbe9",
  "parents": [
    "8f3c8dabc64517132c9c438ff467e75f39fbf8a6"
  ],
  "author": {
    "name": "Andrew Haberlandt",
    "email": "ndrewh@users.noreply.github.com",
    "time": "Tue Dec 09 13:22:54 2025 -0800"
  },
  "committer": {
    "name": "GitHub",
    "email": "noreply@github.com",
    "time": "Tue Dec 09 21:22:54 2025 +0000"
  },
  "message": "[sanitizer_common] child_stdin_fd_ should only be set on posix_spawn path (#171508)\n\n#170809 added the child_stdin_fd_ field on SymbolizerProcess to allow\nthe parent process to hold on to the read in of the child\u0027s stdin pipe.\nThis was to avoid SIGPIPE.\n\nHowever, the `StartSubprocess` path still closes the stdin fd in the\nparent here:\n\nhttps://github.com/llvm/llvm-project/blob/7f5ed91684c808444ede24eb01ad9af73b5806e5/compiler-rt/lib/sanitizer_common/sanitizer_posix_libcdep.cpp#L525-L535\n\nThis could cause a double-close of this fd (problematic in the case of\nfd reuse).\n\nThis moves the `child_stdin_fd_` field to only be initialized on the\nposix_spawn path. This should ensure #170809 only truly affects Darwin.",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "29c73e3e1cac198b4b0943895360f91cd5c0cf87",
      "old_mode": 33188,
      "old_path": "compiler-rt/lib/sanitizer_common/sanitizer_symbolizer_posix_libcdep.cpp",
      "new_id": "ab6aee7c9fba779810353b9737194160668cd0b2",
      "new_mode": 33188,
      "new_path": "compiler-rt/lib/sanitizer_common/sanitizer_symbolizer_posix_libcdep.cpp"
    }
  ]
}
