summaryrefslogtreecommitdiff
path: root/yjit_iface.c
diff options
context:
space:
mode:
authorNoah Gibbs <noah.gibbs@shopify.com>2021-06-30 10:00:07 +0100
committerAlan Wu <XrXr@users.noreply.github.com>2021-10-20 18:19:37 -0400
commit6998246233e42a05883a7bfc9364bb5918456107 (patch)
tree55f6c68a6170d8dec337b08cbb7a8830126683d0 /yjit_iface.c
parente2fe7e4aff27f498d56e44586276558355da34dd (diff)
Use snprintf rather than double strncpy.
Diffstat (limited to 'yjit_iface.c')
-rw-r--r--yjit_iface.c3
1 files changed, 1 insertions, 2 deletions
diff --git a/yjit_iface.c b/yjit_iface.c
index ed47112052..76eb4876c8 100644
--- a/yjit_iface.c
+++ b/yjit_iface.c
@@ -766,10 +766,9 @@ get_yjit_stats(rb_execution_context_t *ec, VALUE self)
// where the value is the count of side exits for that instruction.
char key_string[rb_vm_max_insn_name_size + 6]; // Leave room for "exit_" and a final NUL
- strncpy(key_string, "exit_", 6); // Copy 6 characters to include the NUL.
for (int i = 0; i < VM_INSTRUCTION_SIZE; i++) {
const char *i_name = insn_name(i); // Look up Ruby's NUL-terminated insn name string
- strncpy(key_string + 5, i_name, rb_vm_max_insn_name_size + 1);
+ snprintf(key_string, rb_vm_max_insn_name_size + 6, "%s%s", "exit_", i_name);
VALUE key = ID2SYM(rb_intern(key_string));
VALUE value = LL2NUM((long long)exit_op_count[i]);