diff --git a/Libraries/LibAudio/AClientConnection.cpp b/Libraries/LibAudio/AClientConnection.cpp index 3cd78c0aa89..3d9c46405d3 100644 --- a/Libraries/LibAudio/AClientConnection.cpp +++ b/Libraries/LibAudio/AClientConnection.cpp @@ -25,6 +25,13 @@ void AClientConnection::enqueue(const ABuffer& buffer) } } +bool AClientConnection::try_enqueue(const ABuffer& buffer) +{ + const_cast(buffer).shared_buffer().share_with(server_pid()); + auto response = send_sync(buffer.shared_buffer_id()); + return response->success(); +} + int AClientConnection::get_main_mix_volume() { return send_sync()->volume(); diff --git a/Libraries/LibAudio/AClientConnection.h b/Libraries/LibAudio/AClientConnection.h index 1978a7f00d7..95e406fd20d 100644 --- a/Libraries/LibAudio/AClientConnection.h +++ b/Libraries/LibAudio/AClientConnection.h @@ -12,6 +12,7 @@ public: virtual void handshake() override; void enqueue(const ABuffer&); + bool try_enqueue(const ABuffer&); int get_main_mix_volume(); void set_main_mix_volume(int);