diff options
author | 2022-04-06 16:55:48 +0000 | |
---|---|---|
committer | 2022-04-06 16:55:48 +0000 | |
commit | 3d3003b3cf77a09cfa6c115ca9f15bdfe94f5e67 (patch) | |
tree | 1a27318a71e11dbdee4192315aa0daa23a472e80 | |
parent | 7771fa2768e1d859a6f88595727a8d81d1e66d24 (diff) | |
parent | 593991bfd9747692c09ebd980ddc50dc29d86d5d (diff) |
Merge "rust: Mark DeathRecipient Send and Sync" am: 593991bfd9
Original change: https://android-review.googlesource.com/c/platform/frameworks/native/+/2054944
Change-Id: I11f610964914ccabe2be14b522073d4c5a5ad979
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
-rw-r--r-- | libs/binder/rust/src/proxy.rs | 14 |
1 files changed, 14 insertions, 0 deletions
diff --git a/libs/binder/rust/src/proxy.rs b/libs/binder/rust/src/proxy.rs index e3e47305d4..4df557bee0 100644 --- a/libs/binder/rust/src/proxy.rs +++ b/libs/binder/rust/src/proxy.rs @@ -575,6 +575,20 @@ struct DeathRecipientVtable { 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 { /// Create a new death recipient that will call the given callback when its /// associated object dies. |