From de9a1b2ecd04fa9d3a807a8c3f55f91d15688ff0 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ren=C3=A9=20Kijewski?= Date: Fri, 15 Sep 2023 13:47:08 +0200 Subject: [PATCH] Re-add `sign --force` --- src/sign.rs | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/src/sign.rs b/src/sign.rs index b66f9f2..ac557e0 100644 --- a/src/sign.rs +++ b/src/sign.rs @@ -70,6 +70,8 @@ struct CommonArgs { pub(crate) enum Error { #[error("could not determine `context` string by the input name")] Context(#[from] ImplicitContextError), + #[error("output exists, use `--force` allow replacing a file")] + Exists, #[error("could not gather signature data")] GatherSignatureData(#[from] GatherSignatureDataError), #[error("could not open input file")] @@ -99,6 +101,9 @@ pub(crate) fn main(args: Cli) -> Result<(), Error> { let keys = read_signing_keys(keys)?; let output_path = args.output.as_deref().unwrap_or(&args.input).normalize(); + if args.output.is_some() && !args.force { + return Err(Error::Exists); + } let output_dir = output_path.parent().unwrap_or(Path::new(".")); let mut output_file = tempfile::Builder::new() .prefix(".zipsign.")