From 5e5d45fb0a2349976feaf17e519c1f0c36ef90b3 Mon Sep 17 00:00:00 2001 From: Simon Laux Date: Sun, 9 Feb 2020 00:23:54 +0100 Subject: [PATCH] better fallbacks --- deltachat-ffi/src/lib.rs | 8 ++++++-- src/chat.rs | 6 +++++- 2 files changed, 11 insertions(+), 3 deletions(-) diff --git a/deltachat-ffi/src/lib.rs b/deltachat-ffi/src/lib.rs index 3b2446982..a125037ef 100644 --- a/deltachat-ffi/src/lib.rs +++ b/deltachat-ffi/src/lib.rs @@ -1199,9 +1199,13 @@ pub unsafe extern "C" fn dc_archive_chat( } let ffi_context = &*context; let archive_state = match archive { - 2 => ArchiveState::Pinned, + 0 => ArchiveState::Normal, 1 => ArchiveState::Archived, - _ => ArchiveState::Normal, + 2 => ArchiveState::Pinned, + _ => { + eprintln!("ignoring careless call to dc_archive_chat(): unknown archived state"); + return; + } }; ffi_context .with_inner(|ctx| { diff --git a/src/chat.rs b/src/chat.rs index 75c087bba..8ff005822 100644 --- a/src/chat.rs +++ b/src/chat.rs @@ -965,7 +965,11 @@ impl rusqlite::types::FromSql for ArchiveState { match val { 2 => ArchiveState::Pinned, 1 => ArchiveState::Archived, - _ => ArchiveState::Normal, + 0 => ArchiveState::Normal, + _ => { + println!("unknown archived state, falling back to normal state (was this db opened with a newer deltachat version?)"); + ArchiveState::Normal + }, } }) })