From b1363fce8e60ba49fa104f1776b63c352ae7ce68 Mon Sep 17 00:00:00 2001 From: ashtrayoz <33517241+ashtrayoz@users.noreply.github.com> Date: Tue, 25 Mar 2025 07:35:20 +1100 Subject: [PATCH] Fix logic inversion for dynamic media (server-side fix) (#15870) --- src/server.cpp | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/src/server.cpp b/src/server.cpp index af6fed3a0..68b27513d 100644 --- a/src/server.cpp +++ b/src/server.cpp @@ -3750,7 +3750,11 @@ bool Server::dynamicAddMedia(const DynamicMediaArgs &a) // Push file to existing clients if (m_env) { NetworkPacket pkt(TOCLIENT_MEDIA_PUSH, 0); - pkt << raw_hash << filename << static_cast(a.ephemeral); + pkt << raw_hash << filename; + // NOTE: the meaning of a.ephemeral was accidentally inverted between proto 39 and 40, + // when dynamic_add_media v2 was added. As of 5.12.0 the server sends it correctly again. + // Compatibility code on the client-side was not added. + pkt << static_cast(!a.ephemeral); NetworkPacket legacy_pkt = pkt;