)]}'
{
  "commit": "93258b5fa6eb08b2d06cc3b1ffd93e5ce30eed7c",
  "tree": "bb614c5ad29c081805552fdb68f6eeba79458549",
  "parents": [
    "76ee822b86e86a548d00849202c10fdc0b397ac1"
  ],
  "author": {
    "name": "Simon Marchi",
    "email": "simon.marchi@polymtl.ca",
    "time": "Wed Mar 05 00:06:43 2025 -0500"
  },
  "committer": {
    "name": "Simon Marchi",
    "email": "simon.marchi@efficios.com",
    "time": "Wed Mar 05 11:58:31 2025 -0500"
  },
  "message": "gdb/dwarf: store dwo_file_up in dwo_file_set\n\nHeap-allocated dwo_file objects, stored in dwarf2_per_bfd::dwo_files,\nare never freed.  They are created in one of the\ncreate_dwo_unit_in_dwp_* or lookup_dwo_cutu functions.  I confirmed this\nby running:\n\n  $ make check TESTS\u003d\"gdb.cp/anon-ns.exp\" RUNTESTFLAGS\u003d\"--target_board\u003dfission-dwp\"\n  $ ./gdb -q -nx --data-directory\u003ddata-directory testsuite/outputs/gdb.cp/anon-ns/anon-ns -ex \"p main\" -ex \"file\" -batch\n\n... and checking the ASan leak report.  I also debugged this invocation\nof GDB, placed a breakpoint on ~dwo_file, and didn\u0027t see any hit.\n\nChange the dwo_file set to hold dwo_file_up objects.  When the\ndwarf2_per_bfd object gets destroyed, dwo_file objects will\nautomatically get destroyed.  With this change, I see the related leaks\ndisappear in the ASan leak report, and my ~dwo_file breakpoint gets hit\nwhen debugging GDB.\n\nChange-Id: Icb38539c3f9e553f3625c625a00fc63dd6e9f3c5\nApproved-By: Tom Tromey \u003ctom@tromey.com\u003e\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "f87d0d900afa04c523206e8690afccd86cc5dfac",
      "old_mode": 33188,
      "old_path": "gdb/dwarf2/read.c",
      "new_id": "916381820920df56cec421a12d054349bcb87bd2",
      "new_mode": 33188,
      "new_path": "gdb/dwarf2/read.c"
    },
    {
      "type": "modify",
      "old_id": "164f9ae114097bef34002d0a0635aca79ed9a769",
      "old_mode": 33188,
      "old_path": "gdb/dwarf2/read.h",
      "new_id": "44747bf7ccdd15b104e2355a380db4a343df400f",
      "new_mode": 33188,
      "new_path": "gdb/dwarf2/read.h"
    }
  ]
}
