# HG changeset patch # User Sergey Kandaurov # Date 1669125934 -14400 # Node ID a26897674420906f37878b45156a8d5fa8f61310 # Parent 0f5fc7a320db621da8731a8832f486c7167b236b QUIC: fixed C4706 warnings with MSVC 2010. The fix is to avoid assignments within conditional expression. diff --git a/src/event/quic/ngx_event_quic_transport.c b/src/event/quic/ngx_event_quic_transport.c --- a/src/event/quic/ngx_event_quic_transport.c +++ b/src/event/quic/ngx_event_quic_transport.c @@ -804,11 +804,23 @@ ngx_quic_parse_frame(ngx_quic_header_t * case NGX_QUIC_FT_ACK: case NGX_QUIC_FT_ACK_ECN: - if (!((p = ngx_quic_parse_int(p, end, &f->u.ack.largest)) - && (p = ngx_quic_parse_int(p, end, &f->u.ack.delay)) - && (p = ngx_quic_parse_int(p, end, &f->u.ack.range_count)) - && (p = ngx_quic_parse_int(p, end, &f->u.ack.first_range)))) - { + p = ngx_quic_parse_int(p, end, &f->u.ack.largest); + if (p == NULL) { + goto error; + } + + p = ngx_quic_parse_int(p, end, &f->u.ack.delay); + if (p == NULL) { + goto error; + } + + p = ngx_quic_parse_int(p, end, &f->u.ack.range_count); + if (p == NULL) { + goto error; + } + + p = ngx_quic_parse_int(p, end, &f->u.ack.first_range); + if (p == NULL) { goto error; } @@ -818,10 +830,11 @@ ngx_quic_parse_frame(ngx_quic_header_t * for (i = 0; i < f->u.ack.range_count; i++) { p = ngx_quic_parse_int(p, end, &varint); - if (p) { - p = ngx_quic_parse_int(p, end, &varint); + if (p == NULL) { + goto error; } + p = ngx_quic_parse_int(p, end, &varint); if (p == NULL) { goto error; } @@ -833,10 +846,18 @@ ngx_quic_parse_frame(ngx_quic_header_t * if (f->type == NGX_QUIC_FT_ACK_ECN) { - if (!((p = ngx_quic_parse_int(p, end, &f->u.ack.ect0)) - && (p = ngx_quic_parse_int(p, end, &f->u.ack.ect1)) - && (p = ngx_quic_parse_int(p, end, &f->u.ack.ce)))) - { + p = ngx_quic_parse_int(p, end, &f->u.ack.ect0); + if (p == NULL) { + goto error; + } + + p = ngx_quic_parse_int(p, end, &f->u.ack.ect1); + if (p == NULL) { + goto error; + } + + p = ngx_quic_parse_int(p, end, &f->u.ack.ce); + if (p == NULL) { goto error; } @@ -989,11 +1010,18 @@ ngx_quic_parse_frame(ngx_quic_header_t * case NGX_QUIC_FT_RESET_STREAM: - if (!((p = ngx_quic_parse_int(p, end, &f->u.reset_stream.id)) - && (p = ngx_quic_parse_int(p, end, &f->u.reset_stream.error_code)) - && (p = ngx_quic_parse_int(p, end, - &f->u.reset_stream.final_size)))) - { + p = ngx_quic_parse_int(p, end, &f->u.reset_stream.id); + if (p == NULL) { + goto error; + } + + p = ngx_quic_parse_int(p, end, &f->u.reset_stream.error_code); + if (p == NULL) { + goto error; + } + + p = ngx_quic_parse_int(p, end, &f->u.reset_stream.final_size); + if (p == NULL) { goto error; }