)]}'
{
  "commit": "b3e461e63c39875e63c40f9d620d1a4ece2a9134",
  "tree": "268e18dd02b9c7fb07fdc608222dad71e3deb62d",
  "parents": [
    "90a7a8f5d98b464b675c883383185a5048fc22db"
  ],
  "author": {
    "name": "Maxim Dounin",
    "email": "mdounin@mdounin.ru",
    "time": "Mon Jan 30 07:39:47 2012 +0000"
  },
  "committer": {
    "name": "Maxim Dounin",
    "email": "mdounin@mdounin.ru",
    "time": "Mon Jan 30 07:39:47 2012 +0000"
  },
  "message": "Fixed AIO error handling on FreeBSD.\n\nThe aio_return() must be called regardless of the error returned by\naio_error().  Not calling it resulted in various problems up to segmentation\nfaults (as AIO events are level-triggered and were reported again and again).\n\nAdditionally, in \"aio sendfile\" case r-\u003eblocked was incremented in case of\nerror returned from ngx_file_aio_read(), thus causing request hangs.\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "2d197c6e61008459b44c7bfd1f17cb38a53a83c0",
      "old_mode": 33188,
      "old_path": "src/http/ngx_http_copy_filter_module.c",
      "new_id": "d52fbebe869afd2dfa959b18357a7f1cab42103b",
      "new_mode": 33188,
      "new_path": "src/http/ngx_http_copy_filter_module.c"
    },
    {
      "type": "modify",
      "old_id": "5973b5b7111fbc19584c2a0b9bc4e90e43ca8c1e",
      "old_mode": 33188,
      "old_path": "src/os/unix/ngx_file_aio_read.c",
      "new_id": "0bb383de5515f96a0b57324c1913599405ccc6bf",
      "new_mode": 33188,
      "new_path": "src/os/unix/ngx_file_aio_read.c"
    }
  ]
}
