Return selected account by ID

Otherwise you do not know which account needs unlocking if the
selected account is locked.
This commit is contained in:
Floris Bruynooghe
2022-02-07 21:19:48 +01:00
parent 2d14f1e187
commit 8bd58a0d51
2 changed files with 14 additions and 17 deletions

View File

@@ -4068,18 +4068,17 @@ pub unsafe extern "C" fn dc_accounts_get_account(
}
#[no_mangle]
pub unsafe extern "C" fn dc_accounts_get_selected_account(
pub unsafe extern "C" fn dc_accounts_get_selected_account_id(
accounts: *mut dc_accounts_t,
) -> *mut dc_context_t {
) -> u32 {
if accounts.is_null() {
eprintln!("ignoring careless call to dc_accounts_get_selected_account()");
return ptr::null_mut();
return 0;
}
let accounts = &*accounts;
block_on(async move { accounts.read().await.get_selected_account().await })
.map(|ctx| Box::into_raw(Box::new(ctx)))
.unwrap_or_else(std::ptr::null_mut)
block_on(async move { accounts.read().await.get_selected_account_id().await })
.unwrap_or(0)
}
#[no_mangle]