Remove usage of mem::take

This commit is contained in:
Mo 2023-02-23 01:52:50 +01:00
parent 132d002d3c
commit 230b4a6ba9
2 changed files with 7 additions and 13 deletions

View file

@ -4,7 +4,6 @@ use lettre::message::{Mailbox, MessageBuilder};
use lettre::transport::smtp::authentication::Credentials; use lettre::transport::smtp::authentication::Credentials;
use lettre::Transport; use lettre::Transport;
use lettre::{Message, SmtpTransport}; use lettre::{Message, SmtpTransport};
use std::mem;
use crate::config; use crate::config;
@ -16,8 +15,8 @@ pub struct Mailer {
impl Mailer { impl Mailer {
pub fn new(config: &mut config::Config) -> Result<Self> { pub fn new(config: &mut config::Config) -> Result<Self> {
let creds = Credentials::new( let creds = Credentials::new(
mem::take(&mut config.email_server.email), config.email_server.email.clone(),
mem::take(&mut config.email_server.password), config.email_server.password.clone(),
); );
let mailer = SmtpTransport::relay(&config.email_server.server_name) let mailer = SmtpTransport::relay(&config.email_server.server_name)

View file

@ -2,7 +2,6 @@ use anyhow::{Context, Result};
use askama_axum::IntoResponse; use askama_axum::IntoResponse;
use axum::extract::{Form, State}; use axum::extract::{Form, State};
use axum::response::Response; use axum::response::Response;
use std::mem;
use std::sync::Arc; use std::sync::Arc;
use tracing::{error, info}; use tracing::{error, info};
@ -69,21 +68,17 @@ async fn failed_submission(
config: Arc<config::Config>, config: Arc<config::Config>,
captcha_solutions: Arc<captcha_solutions::SharedCaptchaSolutions>, captcha_solutions: Arc<captcha_solutions::SharedCaptchaSolutions>,
error_message: &str, error_message: &str,
mut form: forms::ContactForm, form: forms::ContactForm,
) -> Result<Response, errors::AppError> { ) -> Result<Response, errors::AppError> {
let name = mem::take(&mut form.name);
let email = mem::take(&mut form.email);
let telefon = mem::take(&mut form.telefon);
let message = mem::take(&mut form.message);
let params = IndexParams { let params = IndexParams {
config, config,
captcha_solutions, captcha_solutions,
was_validated: true, was_validated: true,
name: Some(name), name: Some(form.name),
email: Some(email), email: Some(form.email),
telefon: Some(telefon), telefon: Some(form.telefon),
message: Some(message), message: Some(form.message),
error_message: Some(error_message), error_message: Some(error_message),
}; };