)]}'
{
  "commit": "f8e514c74a039209488ef56948c784c00a1d87b3",
  "tree": "f5ac5280752a8e6cd60ba0b95853318afe53fbb0",
  "parents": [
    "e6e9073fc790009f4f7c1b31e5cfea1474972ecc"
  ],
  "author": {
    "name": "David Ostrovsky",
    "email": "david@ostrovsky.org",
    "time": "Sat Sep 15 21:09:51 2018 +0200"
  },
  "committer": {
    "name": "David Pursehouse",
    "email": "david.pursehouse@gmail.com",
    "time": "Sat Sep 15 19:20:55 2018 -0500"
  },
  "message": "ObjectDownloadListener: Return from onWritePossible when data is written\n\nWhen buffer was written not only call AsyncContext#complete() but also\nreturn from the ObjectDownloadListener#onWritePossible(). This avoids\nendless loop after upgrading from Jetty 9.3.x to 9.4.x lines.\n\nIn Jetty example implementation:[1] the return statemnt is also used:\n\n  // If we are at EOF then complete\n  if (len \u003c 0)\n  {\n    async.complete();\n    return;\n  }\n\nSee also this issue upstream: [2].\n\n[1] https://webtide.com/servlet-3-1-async-io-and-jetty\n[2] https://github.com/eclipse/jetty.project/issues/2911\n\nChange-Id: Iac73fb25e67d40228a378a8e34103f1d28b72a76\nSigned-off-by: David Ostrovsky \u003cdavid@ostrovsky.org\u003e\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "cc4350090f337b635b786da785b01183ed2df0af",
      "old_mode": 33188,
      "old_path": "org.eclipse.jgit.lfs.server/src/org/eclipse/jgit/lfs/server/fs/ObjectDownloadListener.java",
      "new_id": "0b9642642059aa598a71ecb4640c7dc8a985c9cd",
      "new_mode": 33188,
      "new_path": "org.eclipse.jgit.lfs.server/src/org/eclipse/jgit/lfs/server/fs/ObjectDownloadListener.java"
    }
  ]
}
