diff --git a/src/dc_chat.rs b/src/dc_chat.rs index 2d0ade23d..b815f7a82 100644 --- a/src/dc_chat.rs +++ b/src/dc_chat.rs @@ -1307,7 +1307,9 @@ pub unsafe fn dc_get_next_media( } } - dc_array_unref(list); + if !list.is_null() { + dc_array_unref(list); + } dc_msg_unref(msg); ret_msg_id } diff --git a/src/dc_receive_imf.rs b/src/dc_receive_imf.rs index 08197ca9f..bd15add0d 100644 --- a/src/dc_receive_imf.rs +++ b/src/dc_receive_imf.rs @@ -1506,8 +1506,12 @@ unsafe fn create_or_lookup_adhoc_group( ret_chat_id_blocked: *mut libc::c_int, chat_id: u32, chat_id_blocked: i32| { - dc_array_unref(member_ids); - dc_array_unref(chat_ids); + if !member_ids.is_null() { + dc_array_unref(member_ids); + } + if !chat_ids.is_null() { + dc_array_unref(chat_ids); + } free(chat_ids_str as *mut libc::c_void); free(grpid as *mut libc::c_void); free(grpname as *mut libc::c_void);