NoAvailableAlias / nano-signal-slot

Pure C++17 Signals and Slots
MIT License
407 stars 60 forks source link

Indirect disconnect crashes when disconnect is currently emitting slot. #7

Closed NoAvailableAlias closed 9 years ago

NoAvailableAlias commented 9 years ago

Description is the title. The issue affects both branches. The fix will only be pursued for the FT branch as that is close to merging with the master branch. The issue is caused by deleting a slot node that is currently being emitted because there is an access to node->next as part of the emission loop. The fix is to access node->next prior to calling the slot.

offa commented 9 years ago

So this issue is actually fixed?

NoAvailableAlias commented 9 years ago

This has been fixed only for the FT branch. This issue was not automatically closed because the commit was for the FT branch and will be finally closed when the branch is merged with master. However, I'm going to end up pushing a fix for the master branch as I am running into time management issues and cannot find the time to do final verification of the FT merge.