Skip to content

Commit 2d9183e

Browse files
committed
refactor: use cstr_to_string + other simplifications in collect_parameter_values()
1 parent 39be3a4 commit 2d9183e

File tree

1 file changed

+4
-8
lines changed
  • gems/codetracer-ruby-recorder/ext/native_tracer/src

1 file changed

+4
-8
lines changed

gems/codetracer-ruby-recorder/ext/native_tracer/src/lib.rs

Lines changed: 4 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -567,15 +567,11 @@ unsafe fn collect_parameter_values(
567567
if NIL_P(name_sym) {
568568
continue;
569569
}
570-
let name_id = rb_sym2id(name_sym);
571-
let name_c = rb_id2name(name_id);
572-
if name_c.is_null() {
573-
continue;
570+
if let Some(name) = cstr_to_string(rb_id2name(rb_sym2id(name_sym))) {
571+
let value = rb_funcall(binding, recorder.id.local_variable_get, 1, name_sym);
572+
let val_rec = to_value(recorder, value, 10);
573+
result.push((name, val_rec));
574574
}
575-
let name = CStr::from_ptr(name_c).to_str().unwrap_or("").to_string();
576-
let value = rb_funcall(binding, recorder.id.local_variable_get, 1, name_sym);
577-
let val_rec = to_value(recorder, value, 10);
578-
result.push((name, val_rec));
579575
}
580576
result
581577
}

0 commit comments

Comments
 (0)