)]}'
{
  "commit": "32e581636f66504daa1a76afcc766be2a4b8a9de",
  "tree": "392fac38db241bd8e50a90a6bb21b1e6fc1af1e8",
  "parents": [
    "684b34ca8db0de1277b9b5359e0d1d822b53b6a2"
  ],
  "author": {
    "name": "Gaurav-Aggarwal-AWS",
    "email": "33462878+aggarg@users.noreply.github.com",
    "time": "Thu Jul 24 11:07:27 2025 +0530"
  },
  "committer": {
    "name": "GitHub",
    "email": "noreply@github.com",
    "time": "Thu Jul 24 11:07:27 2025 +0530"
  },
  "message": "Delete thread key on process exit (#1297)\n\nPreviously, the shared thread key was deleted in xPortStartScheduler\nafter scheduler was ended. This created a race condition where\nprvThreadKeyDestructor (responsible for freeing thread-specific heap\nmemory) would not be called if xPortStartScheduler deleted the key\nbefore the last task deletion, as destructors are not invoked after key\ndeletion (see https://github.com/walac/glibc/blob/master/nptl/pthread_create.c#L145-L150).\n\nMove thread key deletion to process exit to ensure all thread-specific\nmemory is properly freed.\n\nSigned-off-by: Gaurav Aggarwal \u003caggarg@amazon.com\u003e",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "d0b81dc1e4b33d7b2423bcd3fd795e67a124d0d9",
      "old_mode": 33188,
      "old_path": "portable/ThirdParty/GCC/Posix/port.c",
      "new_id": "2342f6034bf74e272b76efe8fd2deed3a5782e3e",
      "new_mode": 33188,
      "new_path": "portable/ThirdParty/GCC/Posix/port.c"
    }
  ]
}
