Merge changes from topic "fmq_not_full" into main
* changes:
fmq_unit_tests: Write a log msg before tracking open FDs
Update AIDL EventFlagBits to have the correct values
diff --git a/Android.bp b/Android.bp
index 0bcbe48..bbd36e6 100644
--- a/Android.bp
+++ b/Android.bp
@@ -30,11 +30,7 @@
],
apex_available: [
"//apex_available:platform",
- "com.android.btservices",
- "com.android.media.swcodec",
- "com.android.neuralnetworks",
- "test_com.android.media.swcodec",
- "test_com.android.neuralnetworks",
+ "//apex_available:anyapex",
],
export_include_dirs: ["include"],
local_include_dirs: ["include"],
diff --git a/ErasedMessageQueue.cpp b/ErasedMessageQueue.cpp
index c84b554..a0637fb 100644
--- a/ErasedMessageQueue.cpp
+++ b/ErasedMessageQueue.cpp
@@ -112,6 +112,6 @@
return inner->commitRead(nMessages);
}
-ErasedMessageQueueDesc* ErasedMessageQueue::dupeDesc() {
+ErasedMessageQueueDesc* ErasedMessageQueue::dupeDesc() const {
return new ErasedMessageQueueDesc(inner->dupeDesc());
}
diff --git a/ErasedMessageQueue.hpp b/ErasedMessageQueue.hpp
index b3c4357..b4b5931 100644
--- a/ErasedMessageQueue.hpp
+++ b/ErasedMessageQueue.hpp
@@ -161,5 +161,5 @@
* @return ErasedMessageQueueDesc The copied descriptor, which must be freed
* by passing it to freeDesc.
*/
- ErasedMessageQueueDesc* dupeDesc();
+ ErasedMessageQueueDesc* dupeDesc() const;
};
diff --git a/include/fmq/AidlMessageQueue.h b/include/fmq/AidlMessageQueue.h
index 138760f..e4c3d84 100644
--- a/include/fmq/AidlMessageQueue.h
+++ b/include/fmq/AidlMessageQueue.h
@@ -115,7 +115,7 @@
android::base::unique_fd bufferFd, size_t bufferSize,
std::enable_if_t<std::is_same_v<V, MQErased>, size_t> quantum);
- MQDescriptor<T, U> dupeDesc();
+ MQDescriptor<T, U> dupeDesc() const;
private:
AidlMessageQueue(const AidlMessageQueue& other) = delete;
@@ -144,7 +144,7 @@
quantum) {}
template <typename T, typename U>
-MQDescriptor<T, U> AidlMessageQueue<T, U>::dupeDesc() {
+MQDescriptor<T, U> AidlMessageQueue<T, U>::dupeDesc() const {
auto* shim = MessageQueueBase<AidlMQDescriptorShim, T, FlavorTypeToValue<U>::value>::getDesc();
if (shim) {
std::vector<aidl::android::hardware::common::fmq::GrantorDescriptor> grantors;
diff --git a/libfmq.rs b/libfmq.rs
index a215a02..b743df1 100644
--- a/libfmq.rs
+++ b/libfmq.rs
@@ -202,7 +202,7 @@
/// Obtain a copy of the MessageQueue's descriptor, which may be used to
/// access it remotely.
- pub fn dupe_desc(&mut self) -> MQDescriptor<T, SynchronizedReadWrite> {
+ pub fn dupe_desc(&self) -> MQDescriptor<T, SynchronizedReadWrite> {
// SAFETY: dupeDesc may be called on any valid ErasedMessageQueue; it
// simply forwards to dupeDesc on the inner AidlMessageQueue and wraps
// in a heap allocation.
diff --git a/tests/msgq_rust_test_client.rs b/tests/msgq_rust_test_client.rs
index bad57a7..a78000a 100644
--- a/tests/msgq_rust_test_client.rs
+++ b/tests/msgq_rust_test_client.rs
@@ -33,7 +33,7 @@
let num_elements_in_sync_queue: usize = (page_size - 16) / std::mem::size_of::<i32>();
/* Create a queue on the client side. */
- let mut mq = MessageQueue::<i32>::new(
+ let mq = MessageQueue::<i32>::new(
num_elements_in_sync_queue,
true, /* configure event flag word */
);