mirror of
https://github.com/chatmail/core.git
synced 2026-04-17 21:46:35 +03:00
Remove dc_array_get_raw
It does not work with typed arrays, such as locations and messages. Use dc_array_get_id in a loop instead.
This commit is contained in:
committed by
link2xt
parent
09833eb74d
commit
42f6a7c77c
@@ -2285,17 +2285,6 @@ int dc_array_is_independent (const dc_array_t* array, size_t in
|
|||||||
int dc_array_search_id (const dc_array_t* array, uint32_t needle, size_t* ret_index);
|
int dc_array_search_id (const dc_array_t* array, uint32_t needle, size_t* ret_index);
|
||||||
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Get raw pointer to the data.
|
|
||||||
*
|
|
||||||
* @memberof dc_array_t
|
|
||||||
* @param array The array object.
|
|
||||||
* @return Raw pointer to the array. You MUST NOT free the data. You MUST NOT access the data beyond the current item count.
|
|
||||||
* It is not possible to enlarge the array this way. Calling any other dc_array*()-function may discard the returned pointer.
|
|
||||||
*/
|
|
||||||
const uint32_t* dc_array_get_raw (const dc_array_t* array);
|
|
||||||
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @class dc_chatlist_t
|
* @class dc_chatlist_t
|
||||||
*
|
*
|
||||||
|
|||||||
@@ -38,14 +38,6 @@ impl dc_array_t {
|
|||||||
pub(crate) fn search_id(&self, needle: u32) -> Option<usize> {
|
pub(crate) fn search_id(&self, needle: u32) -> Option<usize> {
|
||||||
(0..self.len()).find(|i| self.get_id(*i) == needle)
|
(0..self.len()).find(|i| self.get_id(*i) == needle)
|
||||||
}
|
}
|
||||||
|
|
||||||
pub(crate) fn as_ptr(&self) -> *const u32 {
|
|
||||||
if let dc_array_t::Uint(v) = self {
|
|
||||||
v.as_ptr()
|
|
||||||
} else {
|
|
||||||
panic!("Attempt to convert array of something other than uints to raw");
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
impl From<Vec<u32>> for dc_array_t {
|
impl From<Vec<u32>> for dc_array_t {
|
||||||
|
|||||||
@@ -2049,16 +2049,6 @@ pub unsafe extern "C" fn dc_array_search_id(
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
#[no_mangle]
|
|
||||||
pub unsafe extern "C" fn dc_array_get_raw(array: *const dc_array_t) -> *const u32 {
|
|
||||||
if array.is_null() {
|
|
||||||
eprintln!("ignoring careless call to dc_array_get_raw()");
|
|
||||||
return ptr::null_mut();
|
|
||||||
}
|
|
||||||
|
|
||||||
(*array).as_ptr()
|
|
||||||
}
|
|
||||||
|
|
||||||
// Return the independent-state of the location at the given index.
|
// Return the independent-state of the location at the given index.
|
||||||
// Independent locations do not belong to the track of the user.
|
// Independent locations do not belong to the track of the user.
|
||||||
// Returns 1 if location belongs to the track of the user,
|
// Returns 1 if location belongs to the track of the user,
|
||||||
|
|||||||
Reference in New Issue
Block a user