)]}'
{
  "commit": "ea1fd481b4e689f143142662a82fb62c9b2efb65",
  "tree": "a9e2475bf714d67eafee037aa710023495cad21e",
  "parents": [
    "d78374e578a1837ee73c45f944c420c6f3f64deb",
    "c29b3962af3df80a43fab4ead4875bd2ca275e4c"
  ],
  "author": {
    "name": "Junio C Hamano",
    "email": "gitster@pobox.com",
    "time": "Wed Mar 25 12:54:27 2015 -0700"
  },
  "committer": {
    "name": "Junio C Hamano",
    "email": "gitster@pobox.com",
    "time": "Wed Mar 25 12:54:27 2015 -0700"
  },
  "message": "Merge branch \u0027jk/run-command-capture\u0027\n\nThe run-command interface was easy to abuse and make a pipe for us\nto read from the process, wait for the process to finish and then\nattempt to read its output, which is a pattern that lead to a\ndeadlock.  Fix such uses by introducing a helper to do this\ncorrectly (i.e. we need to read first and then wait the process to\nfinish) and also add code to prevent such abuse in the run-command\nhelper.\n\n* jk/run-command-capture:\n  run-command: forbid using run_command with piped output\n  trailer: use capture_command\n  submodule: use capture_command\n  wt-status: use capture_command\n  run-command: introduce capture_command helper\n  wt_status: fix signedness mismatch in strbuf_read call\n  wt-status: don\u0027t flush before running \"submodule status\"\n",
  "tree_diff": []
}
