From 585d5f32bf23f3877f28d7dfb06d410a7988a40b Mon Sep 17 00:00:00 2001 From: Ian Jackson Date: Sat, 13 Feb 2021 23:08:38 +0000 Subject: [PATCH] hidden: Refactor describe_occulter * Do not rely on shadowing of variables - very fragile * Break out `bad` No functional change. Signed-off-by: Ian Jackson --- src/hidden.rs | 11 +++++------ 1 file changed, 5 insertions(+), 6 deletions(-) diff --git a/src/hidden.rs b/src/hidden.rs index b40d3687..86cae4b4 100644 --- a/src/hidden.rs +++ b/src/hidden.rs @@ -305,13 +305,12 @@ pub fn recalculate_occultation( let describe_occulter = |oni| { let h = occulteds[oni].as_ref().ok_or_else( || internal_logic_error("most obscure not obscure"))?; - let piece = h.occ.occulter; - let ipc = ipieces.get(h.occ.occulter).ok_or_else( - || internal_logic_error( + let opiece = h.occ.occulter; + let bad = || internal_logic_error( format!("missing occulter piece {:?} for occid {:?}", - piece, h.occid) - ))?; - Ok::<_,IE>(ipc.describe_html(None)) + opiece, h.occid)); + let oipc = ipieces.get(opiece).ok_or_else(bad)?; + Ok::<_,IE>(oipc.describe_html(None)) }; let most_obscure = most_obscure.unwrap_or(&OccK::Visible); // no players! -- 2.30.2