diff options
author | Dmitry Volyntsev <xeioex@nginx.com> | 2022-06-07 21:30:57 -0700 |
---|---|---|
committer | Dmitry Volyntsev <xeioex@nginx.com> | 2022-06-07 21:30:57 -0700 |
commit | 3152e35ee0f7df305763af6b693e0d5e1180e4a4 (patch) | |
tree | 1248b9c9fbe4f8e8f512b696b7eec297a858fe67 /nginx/ngx_http_js_module.c | |
parent | 1186657c662a5d92d61a4c10486e98cdf5a0724e (diff) | |
download | njs-3152e35ee0f7df305763af6b693e0d5e1180e4a4.tar.gz njs-3152e35ee0f7df305763af6b693e0d5e1180e4a4.zip |
HTTP: returing undefined for Content-Type when the header is absent.
This unifies empty response value type for r.headersOut.
Diffstat (limited to 'nginx/ngx_http_js_module.c')
-rw-r--r-- | nginx/ngx_http_js_module.c | 12 |
1 files changed, 12 insertions, 0 deletions
diff --git a/nginx/ngx_http_js_module.c b/nginx/ngx_http_js_module.c index cc3ece3d..0c0d9114 100644 --- a/nginx/ngx_http_js_module.c +++ b/nginx/ngx_http_js_module.c @@ -1978,6 +1978,12 @@ ngx_http_js_content_type(njs_vm_t *vm, ngx_http_request_t *r, if (retval != NULL && setval == NULL) { hdr = &r->headers_out.content_type; + + if (hdr->len == 0) { + njs_value_undefined_set(retval); + return NJS_OK; + } + return njs_vm_value_string_set(vm, retval, hdr->data, hdr->len); } @@ -3764,6 +3770,12 @@ ngx_http_js_content_type(njs_vm_t *vm, ngx_http_request_t *r, if (retval != NULL && setval == NULL) { hdr = &r->headers_out.content_type; + + if (hdr->len == 0) { + njs_value_undefined_set(retval); + return NJS_OK; + } + return njs_vm_value_string_set(vm, retval, hdr->data, hdr->len); } |