Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit a9b2fcd9 authored by Treehugger Robot's avatar Treehugger Robot Committed by Automerger Merge Worker
Browse files

Merge "rust: Mark DeathRecipient Send and Sync" am: 593991bf am: 3d3003b3 am: bf0155a0

parents 5fe67d40 bf0155a0
Loading
Loading
Loading
Loading
+14 −0
Original line number Original line Diff line number Diff line
@@ -575,6 +575,20 @@ struct DeathRecipientVtable {
    cookie_decr_refcount: unsafe extern "C" fn(*mut c_void),
    cookie_decr_refcount: unsafe extern "C" fn(*mut c_void),
}
}


/// # Safety
///
/// A `DeathRecipient` is a wrapper around `AIBinder_DeathRecipient` and a pointer
/// to a `Fn` which is `Sync` and `Send` (the cookie field). As
/// `AIBinder_DeathRecipient` is threadsafe, this structure is too.
unsafe impl Send for DeathRecipient {}

/// # Safety
///
/// A `DeathRecipient` is a wrapper around `AIBinder_DeathRecipient` and a pointer
/// to a `Fn` which is `Sync` and `Send` (the cookie field). As
/// `AIBinder_DeathRecipient` is threadsafe, this structure is too.
unsafe impl Sync for DeathRecipient {}

impl DeathRecipient {
impl DeathRecipient {
    /// Create a new death recipient that will call the given callback when its
    /// Create a new death recipient that will call the given callback when its
    /// associated object dies.
    /// associated object dies.