Fix for listenToOnce mem. leak

This is a failing test demonstrating #3226, then a patch that makes the test pass.
We would lose the arguments passed to `callback` if we used wrap, right?