)]}'
{
  "commit": "7f4d52907377bdaac139d3ae29cb73a5a9068c66",
  "tree": "f84fc374d2671404f860cbd237c4f85c45139d5c",
  "parents": [
    "acd5b0b4dff7bb03ac44eff37c0ba65b9d3f01f3"
  ],
  "author": {
    "name": "Roland McGrath",
    "email": "mcgrathr@fuchsia.infra.roller.google.com",
    "time": "Tue May 20 17:25:43 2025 -0700"
  },
  "committer": {
    "name": "Copybara-Service",
    "email": "copybara-worker@google.com",
    "time": "Tue May 20 17:28:14 2025 -0700"
  },
  "message": "[roll] Roll fuchsia [libc] Rework ThreadAllocator into ThreadStorage\n\nThreadAllocator was originally designed as a temporary object\nthat owns the storage only during the setup phase and does not\nrecord all the information necessary to use that storage.  It now\nseems more useful to have a long-lived ThreadStorage object that\nis optimized for compactly storing all the necessary information.\nFor now, the ownership is moved between ThreadStorage and the\nlegacy C `struct pthread`.  When that\u0027s replaced by a proper C++\nThread object, it will just have a ThreadStorage member instead\nto track the ownership over the whole lifetime of the thread.\n\nOriginal-Bug: 342469121\nOriginal-Reviewed-on: https://fuchsia-review.googlesource.com/c/fuchsia/+/1275705\nOriginal-Revision: b91e5b158a69ef469aa7d318a0c8a72d249e8413\nGitOrigin-RevId: 1449c68f27b73fad2d88b24b1e467d6399d3d599\nChange-Id: I1205990abf95c4d050642437eab8740bdfd00325\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "590a668782f5e18c438582670d34fe7e361d52b7",
      "old_mode": 33188,
      "old_path": "stem",
      "new_id": "6d4fb6af284317b2594de2ee258d06afb7d27309",
      "new_mode": 33188,
      "new_path": "stem"
    }
  ]
}
