diff --git a/crates/ark/src/variables/variable.rs b/crates/ark/src/variables/variable.rs index 8019f98df..f4e16d96d 100644 --- a/crates/ark/src/variables/variable.rs +++ b/crates/ark/src/variables/variable.rs @@ -1431,28 +1431,9 @@ impl PositronVariable { let list = List::new(value.sexp)?; let n = unsafe { list.len() }; - let r_names = unsafe { RObject::new(Rf_getAttrib(value.sexp, R_NamesSymbol)) }; - let names = if r_is_null(r_names.sexp) { - vec![None; n] - } else { - let names = unsafe { CharacterVector::new_unchecked(r_names) }; - if unsafe { names.len() } != n { - vec![None; n] - } else { - names - .iter() - .map(|v| match v { - None => None, - Some(s) => { - if s.len() == 0 { - None - } else { - Some(s) - } - }, - }) - .collect() - } + let names = match value.names() { + None => vec![None; n], + Some(names) => names, }; let variables = list