summaryrefslogtreecommitdiffhomepage
path: root/src/nxt_http_request.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/nxt_http_request.c')
-rw-r--r--src/nxt_http_request.c13
1 files changed, 8 insertions, 5 deletions
diff --git a/src/nxt_http_request.c b/src/nxt_http_request.c
index c8adb499..bbc138a7 100644
--- a/src/nxt_http_request.c
+++ b/src/nxt_http_request.c
@@ -83,13 +83,16 @@ nxt_http_request_content_length(void *ctx, nxt_http_field_t *field,
nxt_http_request_t *r;
r = ctx;
- r->content_length = field;
- n = nxt_off_t_parse(field->value, field->value_length);
+ if (nxt_fast_path(r->content_length == NULL)) {
+ r->content_length = field;
- if (nxt_fast_path(n >= 0)) {
- r->content_length_n = n;
- return NXT_OK;
+ n = nxt_off_t_parse(field->value, field->value_length);
+
+ if (nxt_fast_path(n >= 0)) {
+ r->content_length_n = n;
+ return NXT_OK;
+ }
}
return NXT_ERROR;