I got notices of "matches" accumulating while using another library [1] using this library for dbus communication. Traced it until MessageBus._addMatch/MessageBus._removeMatch which seems to get called properly. However, the dbus messages AddMatch and RemoveMatch does not. That is, I could not observe a RemoveMatch message for every AddMatch message.
This PR attempts to correct the property check on the counter. Should be the same as this._matchRules.hasOwnProperty(match) as far as I can see.
For my test case the proper RemoveMatch messages get sent as well after this change.
I didn't have a deeper look at the logic. If not the proper solution, maybe it can serve as a description of the issue :)
Hello,
I got notices of "matches" accumulating while using another library [1] using this library for dbus communication. Traced it until
MessageBus._addMatch
/MessageBus._removeMatch
which seems to get called properly. However, the dbus messagesAddMatch
andRemoveMatch
does not. That is, I could not observe aRemoveMatch
message for everyAddMatch
message.This PR attempts to correct the property check on the counter. Should be the same as
this._matchRules.hasOwnProperty(match)
as far as I can see.For my test case the proper
RemoveMatch
messages get sent as well after this change.I didn't have a deeper look at the logic. If not the proper solution, maybe it can serve as a description of the issue :)
[1] https://github.com/chrvadala/node-ble/issues/36