From 4f2821de390e172ac6413c4e57d059086cd62d0f Mon Sep 17 00:00:00 2001 From: Dmitry Volyntsev Date: Mon, 27 Nov 2023 18:43:04 -0800 Subject: [PATCH] Remove njs_timer.c forgotten in the previous commit. --- src/njs_timer.c | 133 ------------------------------------------------ src/njs_timer.h | 19 ------- 2 files changed, 152 deletions(-) delete mode 100644 src/njs_timer.c delete mode 100644 src/njs_timer.h diff --git a/src/njs_timer.c b/src/njs_timer.c deleted file mode 100644 index 8ab8c7ee..00000000 --- a/src/njs_timer.c +++ /dev/null @@ -1,133 +0,0 @@ - -/* - * Copyright (C) Dmitry Volyntsev - * Copyright (C) NGINX, Inc. - */ - - -#include - - -static njs_int_t -njs_set_timer(njs_vm_t *vm, njs_value_t *args, njs_uint_t nargs, - njs_index_t unused, njs_bool_t immediate, njs_value_t *retval) -{ - njs_uint_t n; - uint64_t delay; - njs_event_t *event; - njs_vm_ops_t *ops; - - if (njs_slow_path(nargs < 2)) { - njs_type_error(vm, "too few arguments"); - return NJS_ERROR; - } - - if (njs_slow_path(!njs_is_function(&args[1]))) { - njs_type_error(vm, "first arg must be a function"); - return NJS_ERROR; - } - - ops = vm->options.ops; - if (njs_slow_path(ops == NULL)) { - njs_internal_error(vm, "not supported by host environment"); - return NJS_ERROR; - } - - delay = 0; - - if (!immediate && nargs >= 3 && njs_is_number(&args[2])) { - delay = njs_number(&args[2]); - } - - event = njs_mp_alloc(vm->mem_pool, sizeof(njs_event_t)); - if (njs_slow_path(event == NULL)) { - goto memory_error; - } - - n = immediate ? 2 : 3; - - event->destructor = ops->clear_timer; - event->function = njs_function(&args[1]); - event->nargs = (nargs >= n) ? nargs - n : 0; - event->once = 1; - event->posted = 0; - - if (event->nargs != 0) { - event->args = njs_mp_alloc(vm->mem_pool, - sizeof(njs_value_t) * event->nargs); - if (njs_slow_path(event->args == NULL)) { - goto memory_error; - } - - memcpy(event->args, &args[n], sizeof(njs_value_t) * event->nargs); - } - - event->host_event = ops->set_timer(vm->external, delay, event); - if (njs_slow_path(event->host_event == NULL)) { - njs_internal_error(vm, "set_timer() failed"); - return NJS_ERROR; - } - - if (njs_add_event(vm, event) == NJS_OK) { - njs_set_number(retval, vm->event_id - 1); - } - - return NJS_OK; - -memory_error: - - njs_memory_error(vm); - - return NJS_ERROR; -} - - -njs_int_t -njs_set_timeout(njs_vm_t *vm, njs_value_t *args, njs_uint_t nargs, - njs_index_t unused, njs_value_t *retval) -{ - return njs_set_timer(vm, args, nargs, unused, 0, retval); -} - - -njs_int_t -njs_set_immediate(njs_vm_t *vm, njs_value_t *args, njs_uint_t nargs, - njs_index_t unused, njs_value_t *retval) -{ - return njs_set_timer(vm, args, nargs, unused, 1, retval); -} - - -njs_int_t -njs_clear_timeout(njs_vm_t *vm, njs_value_t *args, njs_uint_t nargs, - njs_index_t unused, njs_value_t *retval) -{ - u_char buf[16], *p; - njs_int_t ret; - njs_event_t *event; - njs_lvlhsh_query_t lhq; - - if (njs_fast_path(nargs < 2) || !njs_is_number(&args[1])) { - njs_set_undefined(retval); - return NJS_OK; - } - - p = njs_sprintf(buf, buf + njs_length(buf), "%uD", - (unsigned) njs_number(&args[1])); - - lhq.key.start = buf; - lhq.key.length = p - buf; - lhq.key_hash = njs_djb_hash(lhq.key.start, lhq.key.length); - lhq.proto = &njs_event_hash_proto; - lhq.pool = vm->mem_pool; - - ret = njs_lvlhsh_find(&vm->events_hash, &lhq); - if (ret == NJS_OK) { - event = lhq.value; - njs_del_event(vm, event, NJS_EVENT_RELEASE | NJS_EVENT_DELETE); - } - - njs_set_undefined(retval); - - return NJS_OK; -} diff --git a/src/njs_timer.h b/src/njs_timer.h deleted file mode 100644 index a176cebc..00000000 --- a/src/njs_timer.h +++ /dev/null @@ -1,19 +0,0 @@ - -/* - * Copyright (C) Dmitry Volyntsev - * Copyright (C) NGINX, Inc. - */ - -#ifndef _NJS_TIMER_H_INCLUDED_ -#define _NJS_TIMER_H_INCLUDED_ - - -njs_int_t njs_set_timeout(njs_vm_t *vm, njs_value_t *args, - njs_uint_t nargs, njs_index_t unused, njs_value_t *retval); -njs_int_t njs_set_immediate(njs_vm_t *vm, njs_value_t *args, - njs_uint_t nargs, njs_index_t unused, njs_value_t *retval); -njs_int_t njs_clear_timeout(njs_vm_t *vm, njs_value_t *args, - njs_uint_t nargs, njs_index_t unused, njs_value_t *retval); - - -#endif /* _NJS_TIMER_H_INCLUDED_ */ -- 2.47.3