mailcap: don't drop File before opening it

Created temporary file was incorrectly set to be deleted on Drop, but
this is not what we want to do when spawning an external command and pass
the file as the argument.

Fixes: #548 ("mailcap handling")

Resolves: <https://git.meli-email.org/meli/meli/issues/548>
Signed-off-by: Manos Pitsidianakis <manos@pitsidianak.is>
This commit is contained in:
Manos Pitsidianakis 2024-12-04 16:20:22 +02:00
parent a1c9524f74
commit 84564f44a3
No known key found for this signature in database
GPG key ID: 7729C7707F7E09D0

View file

@ -167,14 +167,14 @@ impl MailcapEntry {
.map(|arg| match *arg {
"%s" => {
needs_stdin = false;
let _f = File::create_temp_file(
let file = File::create_temp_file(
&a.decode(Default::default()),
None,
None,
None,
true,
false,
)?;
let p = _f.path().display().to_string();
let p = file.path().display().to_string();
Ok(p)
}
"%t" => Ok(a.content_type().to_string()),