)]}'
{
  "commit": "80d6c79866f16cb2e184ea4952e2ca7f797dee44",
  "tree": "de8017639d3ae3426666392f08e8d899eea40fe2",
  "parents": [
    "454f8b67a85130b6d6f6a7c987d868183b411369"
  ],
  "author": {
    "name": "Tom de Vries",
    "email": "tdevries@suse.de",
    "time": "Mon Mar 20 17:06:49 2023 +0100"
  },
  "committer": {
    "name": "Tom de Vries",
    "email": "tdevries@suse.de",
    "time": "Mon Mar 20 17:06:49 2023 +0100"
  },
  "message": "[gdb/testsuite] Handle remotedir in remote_upload\n\nDejagnu\u0027s remotedir implementation has support in remote_exec and\nremote_download, but not remote_upload.\n\nConsider the following scenario:\n- downloading an executable to target,\n- running it,\n- uploading a file produced by the executable\nwhile assuming remote target user remote-target with homedir\n/home/remote-target and remotedir set to /home/remote-target/tmp.\n\nConcretely, it looks like this:\n...\n # binfile \u003d\u003d \"$outputs/gdb.abc/a.out\"\n set target_binfile [remote_download target $binfile]\n # target_binfile \u003d\u003d \"/home/remote-target/tmp/a.out\"\n remote_exec target $target_binfile\n # Running $target_binfile produced /home/remote-target/tmp/result.txt.\n set result [remote_upload target /home/remote-target/tmp/result.txt \\\n                 $outputs/gdb.abc/result.txt]\n # result \u003d\u003d $outputs/gdb.abc/result.txt.\n...\n\nAdd a remote_upload implementation that also handles remotedir in lib/gdb.exp,\noverriding dejagnu\u0027s remote_upload, such that we can simplify the\nremote_upload call to:\n...\n set result [remote_upload target result.txt $outputs/gdb.abc/result.txt]\n...\n\nTested on x86_64-linux.\n\nPR testsuite/30250\nBug: https://sourceware.org/bugzilla/show_bug.cgi?id\u003d30250\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "d6402262f602ac97501ae21c4e65cb496128b996",
      "old_mode": 33188,
      "old_path": "gdb/testsuite/gdb.testsuite/board-sanity.exp",
      "new_id": "eb19db8699b958a152cec34392cef8810b7351bd",
      "new_mode": 33188,
      "new_path": "gdb/testsuite/gdb.testsuite/board-sanity.exp"
    },
    {
      "type": "modify",
      "old_id": "86a05156e0a0fcd0c727e5b68fce5b10fc73ebf8",
      "old_mode": 33188,
      "old_path": "gdb/testsuite/lib/gdb.exp",
      "new_id": "111a158e7ce63d41d33709db20e4b4f24295509a",
      "new_mode": 33188,
      "new_path": "gdb/testsuite/lib/gdb.exp"
    }
  ]
}
