From b4e0a3eb62aea175fd6a332df30df32d6be6275d Mon Sep 17 00:00:00 2001 From: SpiritCroc Date: Thu, 12 May 2022 16:12:17 +0200 Subject: [PATCH] Fix push for m.read events badge_count_last_call was always zero when the response for push notifications included a "rejected" key which mapped to an empty list. --- changelog.d/12721.bugfix | 1 + synapse/push/httppusher.py | 2 +- 2 files changed, 2 insertions(+), 1 deletion(-) create mode 100644 changelog.d/12721.bugfix diff --git a/changelog.d/12721.bugfix b/changelog.d/12721.bugfix new file mode 100644 index 000000000000..6987f7ab15e1 --- /dev/null +++ b/changelog.d/12721.bugfix @@ -0,0 +1 @@ +Fix push to dismiss notifications when read on another client. Contributed by @SpiritCroc @ Beeper. diff --git a/synapse/push/httppusher.py b/synapse/push/httppusher.py index 5818344520f5..d5603596c004 100644 --- a/synapse/push/httppusher.py +++ b/synapse/push/httppusher.py @@ -405,7 +405,7 @@ async def dispatch_push( rejected = [] if "rejected" in resp: rejected = resp["rejected"] - else: + if not rejected: self.badge_count_last_call = badge return rejected