)]}' { "commit": "ed970f7c38381309e9306982efa8dcfac1201269", "tree": "3d53484c2da90f764eeee4b53be01e21489cbed4", "parents": [ "d4b44e07d0bfd96bb361042d7b4bada0ded663a0" ], "author": { "name": "QUICHE team", "email": "quiche-dev@google.com", "time": "Tue Dec 14 16:38:34 2021 -0800" }, "committer": { "name": "Copybara-Service", "email": "copybara-worker@google.com", "time": "Tue Dec 14 16:39:58 2021 -0800" }, "message": "Allow visitor_.OnFrameSent() to propagate a fatal send error, and do not retry sending on fatal send errors.\n\nThis CL makes OgHttp2Session::AfterFrameSent() return a bool to reflect an\nerror value from visitor_.OnFrameSent(), which is treated as a fatal connection\nerror and propagated to OgHttp2Session::Send(). This propagation is helpful for\ncompatibility with nghttp2 and Envoy.\n\nFor reference, the only (practically considered) error code nghttp2 returns for\nfailed sends is a fatal error:\nhttps://nghttp2.org/documentation/nghttp2_session_send.html\n\nThis CL also makes a change to not let OgHttp2Session::Send() send data when it\nhas previously returned an error value. This is not consistent with nghttp2,\nbut it feels right and does not negatively affect current codec_impl_tests.\n\nWith this CL, codec_impl_tests Sponge (ProtocolErrorForTest now passes):\nhttp://sponge2/279619fd-ba65-4ba9-ad96-367b4606cfc8\n\nPiperOrigin-RevId: 416424214\n", "tree_diff": [ { "type": "modify", "old_id": "6410b97f7fcaa2d9fe33c48c8d1472dc82f4c872", "old_mode": 33188, "old_path": "http2/adapter/nghttp2_adapter_test.cc", "new_id": "fc5dbd2dcb29dc05d8546f10642d02d476caf9e9", "new_mode": 33188, "new_path": "http2/adapter/nghttp2_adapter_test.cc" }, { "type": "modify", "old_id": "50dce2c40fd802750f643c27a5d68a234433c65a", "old_mode": 33188, "old_path": "http2/adapter/oghttp2_adapter_test.cc", "new_id": "8d62da9e0c7b9a761eca527e04c225dad18c9375", "new_mode": 33188, "new_path": "http2/adapter/oghttp2_adapter_test.cc" }, { "type": "modify", "old_id": "346035a9f5737ecd2b378c7d9dc87c16889f8f30", "old_mode": 33188, "old_path": "http2/adapter/oghttp2_session.cc", "new_id": "0519ceed566735b824c361bb71ea21828e91f802", "new_mode": 33188, "new_path": "http2/adapter/oghttp2_session.cc" }, { "type": "modify", "old_id": "74dedac1a79489702ca22ab5597f77c9fe63222a", "old_mode": 33188, "old_path": "http2/adapter/oghttp2_session.h", "new_id": "aea67492041c3b123db403662639d77bcd93e329", "new_mode": 33188, "new_path": "http2/adapter/oghttp2_session.h" } ] }