1
0
mirror of https://github.com/rtbrick/bngblaster.git synced 2024-05-06 15:54:57 +00:00

use less expensive strncpy() rather than snprintf() for formatting a timer name

This commit is contained in:
Hannes Gredler
2022-01-20 09:54:18 +00:00
committed by Christian Giese
parent a96c096c66
commit 553e7e9b18

View File

@ -420,10 +420,10 @@ timer_add (timer_root_s *root,
timer_requeue(timer, sec, nsec);
/*
* Update data and cb if there was a change.
* Do the reformatting of name only during a change due to snprintf() being expensive.
* Do the reformatting of name only during a change.
*/
if (timer->data != data || timer->cb != cb) {
snprintf(timer->name, sizeof(timer->name), "%s", name);
strncpy(timer->name, name, sizeof(timer->name));
timer->data = data;
timer->cb = cb;
}
@ -444,7 +444,7 @@ timer_add (timer_root_s *root,
timer = CIRCLEQ_FIRST(&root->timer_gc_qhead);
CIRCLEQ_REMOVE(&root->timer_gc_qhead, timer, timer_qnode);
root->gc--;
memset(timer, 0, sizeof(timer_s));
memset(timer, 0, sizeof(timer_s));
}
if (!timer) {
@ -454,7 +454,7 @@ timer_add (timer_root_s *root,
/*
* Store name, data, callback and misc. data.
*/
snprintf(timer->name, sizeof(timer->name), "%s", name);
strncpy(timer->name, name, sizeof(timer->name));
timer->data = data;
timer->cb = cb;
timer_set_expire(timer, sec, nsec);
@ -736,4 +736,4 @@ timer_test (void *ctx)
timer_smear_bucket(&root, 10, 0);
timer_walk(&root);
}
}