diff --git a/crates/engine/src/cmd/file/open.rs b/crates/engine/src/cmd/file/open.rs index b6e154c35..ea9a0d90a 100644 --- a/crates/engine/src/cmd/file/open.rs +++ b/crates/engine/src/cmd/file/open.rs @@ -30,11 +30,9 @@ pub(super) fn open_recent(s: &mut Session, p: &Value) -> Result { allow(&path, Access::Read)?; Some(path) } - (None, Some(i)) => { - if !(i >= 0.0 && i.fract() == 0.0) { - return Err(bad(CMD, "no such recent file")); - } - Some(s.prefs.recent_files.iter().filter(|r| listed(r)).nth(i as usize).cloned().ok_or_else(|| bad(CMD, "no such recent file"))?) + (None, Some(_)) => { + let i = req_index(CMD, p, "index")?; + Some(s.prefs.recent_files.iter().filter(|r| listed(r)).nth(i).cloned().ok_or_else(|| bad(CMD, "no such recent file"))?) } _ => None, };