aboutsummaryrefslogtreecommitdiff
path: root/nginx/ngx_http_js_module.c
diff options
context:
space:
mode:
authorIgor Sysoev <igor@sysoev.ru>2016-01-13 19:11:36 +0300
committerIgor Sysoev <igor@sysoev.ru>2016-01-13 19:11:36 +0300
commit34e4faf65a2ecd4051be6115759d319bbfc68c0e (patch)
tree4d5329ed2c24db666a582cb13a47c35699190298 /nginx/ngx_http_js_module.c
parent33fca9173302f1d34fd9fd9f11bde97c471e3ffa (diff)
downloadnjs-34e4faf65a2ecd4051be6115759d319bbfc68c0e.tar.gz
njs-34e4faf65a2ecd4051be6115759d319bbfc68c0e.zip
Segfaults are fixed when non-existent external object property was
accessed or when existent property does not support operation.
Diffstat (limited to 'nginx/ngx_http_js_module.c')
-rw-r--r--nginx/ngx_http_js_module.c16
1 files changed, 2 insertions, 14 deletions
diff --git a/nginx/ngx_http_js_module.c b/nginx/ngx_http_js_module.c
index 237971d7..591c20ad 100644
--- a/nginx/ngx_http_js_module.c
+++ b/nginx/ngx_http_js_module.c
@@ -52,8 +52,6 @@ static void *ngx_http_js_calloc(void *mem, size_t size);
static void *ngx_http_js_memalign(void *mem, size_t alignment, size_t size);
static void ngx_http_js_free(void *mem, void *p);
-static njs_ret_t ngx_http_js_ext_undefined(njs_vm_t *vm, njs_value_t *value,
- void *obj, uintptr_t data);
static njs_ret_t ngx_http_js_ext_get_string(njs_vm_t *vm, njs_value_t *value,
void *obj, uintptr_t data);
static njs_ret_t ngx_http_js_ext_set_string(njs_vm_t *vm, void *obj,
@@ -260,7 +258,7 @@ static njs_external_t ngx_http_js_ext_request[] = {
NJS_EXTERN_OBJECT,
ngx_http_js_ext_response,
nxt_nitems(ngx_http_js_ext_response),
- ngx_http_js_ext_undefined,
+ NULL,
NULL,
NULL,
NULL,
@@ -348,7 +346,7 @@ static njs_external_t ngx_http_js_externals[] = {
NJS_EXTERN_OBJECT,
ngx_http_js_ext_request,
nxt_nitems(ngx_http_js_ext_request),
- ngx_http_js_ext_undefined,
+ NULL,
NULL,
NULL,
NULL,
@@ -500,16 +498,6 @@ ngx_http_js_free(void *mem, void *p)
static njs_ret_t
-ngx_http_js_ext_undefined(njs_vm_t *vm, njs_value_t *value, void *obj,
- uintptr_t data)
-{
- njs_void_set(value);
-
- return NJS_OK;
-}
-
-
-static njs_ret_t
ngx_http_js_ext_get_string(njs_vm_t *vm, njs_value_t *value, void *obj,
uintptr_t data)
{