The binary to re-exec for `post-update`: the freshly installed one when the upgrade reported where it landed, otherwise the usual resolution. Never `which_tracedecay()` alone — its current-exe-first order can point at the OLD binary (e.g. a stale Homebrew keg) right after an upgrade.
(installed: Option<&Path>)
| 217 | /// Never `which_tracedecay()` alone — its current-exe-first order can point |
| 218 | /// at the OLD binary (e.g. a stale Homebrew keg) right after an upgrade. |
| 219 | fn post_update_binary(installed: Option<&Path>) -> tracedecay::errors::Result<String> { |
| 220 | match installed.filter(|path| path.exists()) { |
| 221 | Some(path) => Ok(path.to_string_lossy().into_owned()), |
| 222 | None => tracedecay_bin_on_path(), |
| 223 | } |
| 224 | } |
| 225 | |
| 226 | fn run_post_update_subcommand( |
| 227 | no_heal: bool, |