)]}'
{
  "commit": "471e462c1642b38a815eae15d7e4d3fe0a008495",
  "tree": "c1ba2dbc26a26180b177c0af24cdbea60b0276c2",
  "parents": [
    "5cc108885e8606a776121977d36d4339f7b1d0bc"
  ],
  "author": {
    "name": "Roman Arutyunyan",
    "email": "arut@nginx.com",
    "time": "Wed Aug 29 15:56:42 2018 +0300"
  },
  "committer": {
    "name": "Roman Arutyunyan",
    "email": "arut@nginx.com",
    "time": "Wed Aug 29 15:56:42 2018 +0300"
  },
  "message": "Stream: avoid potential infinite loop at preread phase.\n\nPreviously the preread phase code ignored NGX_AGAIN value returned from\nc-\u003erecv() and relied only on c-\u003eread-\u003eready.  But this flag is not reliable and\nshould only be checked for optimization purposes.  For example, when using\nSSL, c-\u003eread-\u003eready may be set when no input is available.  This can lead to\ncalling preread handler infinitely in a loop.\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "96e7c9ac844f826cb5070e027dc4b873cd408902",
      "old_mode": 33188,
      "old_path": "src/stream/ngx_stream_core_module.c",
      "new_id": "3c4027b770915648b1a6088d29bce6c11a109556",
      "new_mode": 33188,
      "new_path": "src/stream/ngx_stream_core_module.c"
    }
  ]
}
