)]}'
{
  "commit": "577d2167bbed078e99fe8b704f936be8ac7cf83d",
  "tree": "7718ef8811dfd386cc891ab2180dfecd7271386c",
  "parents": [
    "28561a655942f8e2a70a3b64e867223a60aae7b1"
  ],
  "author": {
    "name": "Simon Marchi",
    "email": "simon.marchi@efficios.com",
    "time": "Wed Dec 01 09:40:03 2021 -0500"
  },
  "committer": {
    "name": "Simon Marchi",
    "email": "simon.marchi@efficios.com",
    "time": "Wed Dec 08 21:00:39 2021 -0500"
  },
  "message": "gdb: move clearing of tp-\u003epending_follow to follow_fork_inferior\n\nA following patch will change targets so that when they detach an\ninferior, they also detach any pending fork children this inferior may\nhave.  While doing this, I hit a case where we couldn\u0027t differentiate\ntwo cases, where in one we should detach the fork detach but not in the\nother.\n\nSuppose we continue past a fork with \"follow-fork-mode \u003d\u003d child\" \u0026\u0026\n\"detach-on-fork on\".  follow_fork_inferior calls target_detach to detach\nthe parent.  In that case the target should not detach the fork\nchild, as we\u0027ll continue debugging the child.  As of now, the\ntp-\u003epending_follow field of the thread who called fork still contains\nthe details about the fork.\n\nThen, suppose we run to a fork catchpoint and the user types \"detach\".\nIn that case, the target should detach the fork child in addition to the\nparent.  In that case as well, the tp-\u003epending_follow field contains\nthe details about the fork.\n\nTo allow targets to differentiate the two cases, clear\ntp-\u003epending_follow a bit earlier, when following a fork.  Targets will\nthen see that tp-\u003epending_follow contains TARGET_WAITKIND_SPURIOUS, and\nwon\u0027t detach the fork child.\n\nAs of this patch, no behavior changes are expected.\n\nChange-Id: I537741859ed712cb531baaefc78bb934e2a28153\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "e4739ed14f665d43b78ffdece9fa086ab731cf95",
      "old_mode": 33188,
      "old_path": "gdb/infrun.c",
      "new_id": "a1264f77f9bf2db3842107a753e94f75d658db58",
      "new_mode": 33188,
      "new_path": "gdb/infrun.c"
    }
  ]
}
