unwrap mailinglist addr option in cffi

so rust api and jsonrpc return the option
This commit is contained in:
Simon Laux
2022-10-31 18:51:52 +01:00
committed by link2xt
parent 3150d2b94b
commit 1bd53de1f7
4 changed files with 6 additions and 6 deletions

View File

@@ -2852,7 +2852,7 @@ pub unsafe extern "C" fn dc_chat_get_mailinglist_addr(chat: *mut dc_chat_t) -> *
return "".strdup(); return "".strdup();
} }
let ffi_chat = &*chat; let ffi_chat = &*chat;
ffi_chat.chat.get_mailinglist_addr().strdup() ffi_chat.chat.get_mailinglist_addr().unwrap_or_default().strdup()
} }
#[no_mangle] #[no_mangle]

View File

@@ -37,7 +37,7 @@ pub struct FullChat {
ephemeral_timer: u32, //TODO look if there are more important properties in newer core versions ephemeral_timer: u32, //TODO look if there are more important properties in newer core versions
can_send: bool, can_send: bool,
was_seen_recently: bool, was_seen_recently: bool,
mailing_list_address: String, mailing_list_address: Option<String>,
} }
impl FullChat { impl FullChat {
@@ -81,7 +81,7 @@ impl FullChat {
false false
}; };
let mailing_list_address = chat.get_mailinglist_addr().to_string(); let mailing_list_address = chat.get_mailinglist_addr().map(|s|s.to_string());
Ok(FullChat { Ok(FullChat {
id: chat_id, id: chat_id,

View File

@@ -22,7 +22,7 @@ export type Contact={"address":string;"color":string;"authName":string;"status":
* the contact's last seen timestamp * the contact's last seen timestamp
*/ */
"lastSeen":I64;"wasSeenRecently":boolean;}; "lastSeen":I64;"wasSeenRecently":boolean;};
export type FullChat={"id":U32;"name":string;"isProtected":boolean;"profileImage":(string|null);"archived":boolean;"chatType":U32;"isUnpromoted":boolean;"isSelfTalk":boolean;"contacts":(Contact)[];"contactIds":(U32)[];"color":string;"freshMessageCounter":Usize;"isContactRequest":boolean;"isDeviceChat":boolean;"selfInGroup":boolean;"isMuted":boolean;"ephemeralTimer":U32;"canSend":boolean;"wasSeenRecently":boolean;"mailingListAddress":string;}; export type FullChat={"id":U32;"name":string;"isProtected":boolean;"profileImage":(string|null);"archived":boolean;"chatType":U32;"isUnpromoted":boolean;"isSelfTalk":boolean;"contacts":(Contact)[];"contactIds":(U32)[];"color":string;"freshMessageCounter":Usize;"isContactRequest":boolean;"isDeviceChat":boolean;"selfInGroup":boolean;"isMuted":boolean;"ephemeralTimer":U32;"canSend":boolean;"wasSeenRecently":boolean;"mailingListAddress":(string|null);};
/** /**
* cheaper version of fullchat, omits: * cheaper version of fullchat, omits:

View File

@@ -1130,8 +1130,8 @@ impl Chat {
} }
/// Returns mailing list address where messages are sent to. /// Returns mailing list address where messages are sent to.
pub fn get_mailinglist_addr(&self) -> &str { pub fn get_mailinglist_addr(&self) -> Option<&str> {
self.param.get(Param::ListPost).unwrap_or_default() self.param.get(Param::ListPost)
} }
/// Returns profile image path for the chat. /// Returns profile image path for the chat.