Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Lack of handling on _requires_ack if this.store throws error leads to infinite this._message_identifier increment #260

Open
elcreator opened this issue Oct 3, 2024 · 0 comments

Comments

@elcreator
Copy link

if (this._message_identifier === this.maxMessageIdentifier) {

should be

 if (this._message_identifier >= this.maxMessageIdentifier) { 

because

			while(this._sentMessages[this._message_identifier] !== undefined) {
				this._message_identifier++;
			}

increments before this.store("Sent:", wireMessage); is called and this.store("Sent:", wireMessage); can throw an error, after which this._message_identifier remains incremented. Next time when this._requires_ack will be called it will be incremented again and this comparison will not work!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant