diff --git a/src/job.rs b/src/job.rs index fef3ad728..38e17cce8 100644 --- a/src/job.rs +++ b/src/job.rs @@ -156,9 +156,7 @@ impl Job { /* if there is a msg-id and it does not exist in the db, cancel sending. this happends if dc_delete_msgs() was called before the generated mime was sent out */ - if 0 != self.foreign_id - && 0 == unsafe { dc_msg_exists(context, self.foreign_id) } - { + if 0 != self.foreign_id && !dc_msg_exists(context, self.foreign_id) { warn!( context, 0, "Message {} for job {} does not exist", self.foreign_id, self.job_id, diff --git a/src/message.rs b/src/message.rs index c08171cac..b0e9a3251 100644 --- a/src/message.rs +++ b/src/message.rs @@ -1032,25 +1032,23 @@ The value is also used for CC:-summaries */ // Context functions to work with messages -pub unsafe fn dc_msg_exists(context: &Context, msg_id: u32) -> libc::c_int { - if msg_id <= 9 { - return 0; +pub fn dc_msg_exists(context: &Context, msg_id: u32) -> bool { + if msg_id <= DC_CHAT_ID_LAST_SPECIAL { + return false; } - let chat_id: Option = context.sql.query_row_col( + let chat_id: Option = context.sql.query_row_col( context, "SELECT chat_id FROM msgs WHERE id=?;", - params![msg_id as i32], + params![msg_id], 0, ); if let Some(chat_id) = chat_id { - if chat_id != 3 { - return 1; - } + chat_id != DC_CHAT_ID_TRASH + } else { + false } - - 0 } pub fn dc_update_msg_move_state(