aboutsummaryrefslogtreecommitdiff
path: root/src/zjs_callbacks.c
diff options
context:
space:
mode:
authorGeoff Gustafson <geoff@linux.intel.com>2017-07-20 18:26:28 -0700
committerJimmy Huang <jimmy.huang@linux.intel.com>2017-07-20 18:26:28 -0700
commitfceee73ba032f9db498b688ded4e1c81da1a23f8 (patch)
treeec410d437546497de51805d1c323d85a0e199a4b /src/zjs_callbacks.c
parent331e23bf6f846aa8bfaffa9630204a9d28716754 (diff)
[callbacks] Adjust cb_size in new_id() instead of every call site (#1378)
Signed-off-by: Geoff Gustafson <geoff@linux.intel.com>
Diffstat (limited to 'src/zjs_callbacks.c')
-rw-r--r--src/zjs_callbacks.c13
1 files changed, 3 insertions, 10 deletions
diff --git a/src/zjs_callbacks.c b/src/zjs_callbacks.c
index 33e9b52..5c7d306 100644
--- a/src/zjs_callbacks.c
+++ b/src/zjs_callbacks.c
@@ -140,6 +140,9 @@ static zjs_callback_id new_id(void)
while (cb_map[id] != NULL) {
id++;
}
+ if (id >= cb_size) {
+ cb_size = id + 1;
+ }
return id;
}
@@ -309,10 +312,6 @@ zjs_callback_id add_callback_list_priv(jerry_value_t js_func,
new_cb->func_list[0] = jerry_acquire_value(js_func);
cb_map[new_cb->id] = new_cb;
- if (new_cb->id >= cb_size - 1) {
- cb_size++;
- }
-
#ifdef DEBUG_BUILD
set_info_string(cb_map[new_cb->id]->creator, file, func);
#endif
@@ -355,9 +354,6 @@ zjs_callback_id add_callback_priv(jerry_value_t js_func,
// Add callback to list
cb_map[new_cb->id] = new_cb;
- if (new_cb->id >= cb_size - 1) {
- cb_size++;
- }
DBG_PRINT("adding new callback id %d, js_func=%u, once=%u\n", new_cb->id,
new_cb->js_func, once);
@@ -515,9 +511,6 @@ zjs_callback_id zjs_add_c_callback(void *handle, zjs_c_callback_func callback)
// Add callback to list
cb_map[new_cb->id] = new_cb;
- if (new_cb->id >= cb_size - 1) {
- cb_size++;
- }
DBG_PRINT("adding new C callback id %d\n", new_cb->id);
UNLOCK();