Skip to content

Commit

Permalink
Bugfix multiple event listeners with the same name (coral-xyz#2165)
Browse files Browse the repository at this point in the history
* Bugfix multiple event listeners with the same name

* Changelog

* changelog
  • Loading branch information
filipzeta authored and henrye committed Dec 6, 2022
1 parent 8067711 commit 2c47bc7
Show file tree
Hide file tree
Showing 2 changed files with 3 additions and 1 deletion.
1 change: 1 addition & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -34,6 +34,7 @@ The minor version will be incremented upon a breaking change and the patch versi
* lang: Fix parsing for bytes literals in the IDL. ([#2261](https://github.com/coral-xyz/anchor/pull/2261))
* lang: Fix IDL `seed` generation for byte string literals. ([#2125](https://github.com/coral-xyz/anchor/pull/2125))
* ts: Update seeds inference to allow nested user defined structs within the seeds ([#2198](https://github.com/coral-xyz/anchor/pull/2198))
* event: Fix multiple event listeners with the same name. ([#2165](https://github.com/coral-xyz/anchor/pull/2165))

## [0.25.0] - 2022-07-05

Expand Down
3 changes: 2 additions & 1 deletion ts/packages/anchor/src/program/event.ts
Original file line number Diff line number Diff line change
Expand Up @@ -78,7 +78,7 @@ export class EventManager {
this._listenerIdCount += 1;

// Store the listener into the event map.
if (!(eventName in this._eventCallbacks)) {
if (!this._eventListeners.has(eventName)) {
this._eventListeners.set(eventName, []);
}
this._eventListeners.set(
Expand Down Expand Up @@ -138,6 +138,7 @@ export class EventManager {
// Update both maps.
this._eventCallbacks.delete(listener);
listeners = listeners.filter((l) => l !== listener);
this._eventListeners.set(eventName, listeners);
if (listeners.length === 0) {
this._eventListeners.delete(eventName);
}
Expand Down

0 comments on commit 2c47bc7

Please sign in to comment.