Mercurial > prosody-hg
comparison util/pubsub.lua @ 14185:e23b9651145d 13.0
util.pubsub: Ensure deleted node stays in memory store deletion failed
This looks like a copy/paste fail. The in-memory representation could get out
of sync if the storage failed to delete the node (it would report an error,
but would no longer be listed until a server restart re-read it from storage).
| author | Matthew Wild <mwild1@gmail.com> |
|---|---|
| date | Mon, 25 May 2026 16:23:45 +0100 |
| parents | 888d0c52db41 |
| children | d975d280baec |
comparison
equal
deleted
inserted
replaced
| 14184:d79ef7a38fe8 | 14185:e23b9651145d |
|---|---|
| 509 self.data[node] = nil; | 509 self.data[node] = nil; |
| 510 | 510 |
| 511 if self.config.nodestore then | 511 if self.config.nodestore then |
| 512 local ok, err = delete_node_in_store(self, node); | 512 local ok, err = delete_node_in_store(self, node); |
| 513 if not ok then | 513 if not ok then |
| 514 self.nodes[node] = nil; | 514 self.nodes[node] = node_obj; |
| 515 return ok, err; | 515 return ok, err; |
| 516 end | 516 end |
| 517 end | 517 end |
| 518 | 518 |
| 519 self.events.fire_event("node-deleted", { service = self, node = node, actor = actor }); | 519 self.events.fire_event("node-deleted", { service = self, node = node, actor = actor }); |
