)]}'
{
  "commit": "81900d2bac07b85d76efb3739bd631cdd709d092",
  "tree": "532474495111ca1cb1cb31a7501f906efb8013cc",
  "parents": [
    "a648fe307354235f2460e004c164f99e4ad297f6"
  ],
  "author": {
    "name": "Nick Alcock",
    "email": "nick.alcock@oracle.com",
    "time": "Mon Jul 29 12:45:09 2024 +0100"
  },
  "committer": {
    "name": "Nick Alcock",
    "email": "nick.alcock@oracle.com",
    "time": "Thu Aug 01 20:39:28 2024 +0100"
  },
  "message": "libctf: fix ref leak of names of newly-inserted non-root-visible types\n\nA bug in ctf_dtd_delete led to refs in the string table to the\nnames of non-root-visible types not being removed when the DTD\nwas.  This seems harmless, but actually it would lead to a write\ndown a pointer into freed memory if such a type was ctf_rollback()ed\nover and then the dict was serialized (updating all the refs as the\nstrtab was serialized in turn).\n\nBug introduced in commit fe4c2d55634c700ba527ac4183e05c66e9f93c62\n(\"libctf: create: non-root-visible types should not appear in name tables\")\nwhich is included in binutils 2.35.\n\nlibctf/\n\t* ctf-create.c (ctf_dtd_delete): Remove refs for all types\n\twith names, not just root-visible ones.\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "e0fce13afc1bc1586ebb8149d01fa89337b11cf1",
      "old_mode": 33188,
      "old_path": "libctf/ctf-create.c",
      "new_id": "e1afefe80c3e5af2efb46bfc995af14fd3cd4919",
      "new_mode": 33188,
      "new_path": "libctf/ctf-create.c"
    }
  ]
}
