The current code captures a char* from a wayland event in a lambda.
By creating the QString first when we capture that by value we'll
implicitly shallow copy it.
The other issue was
Even though where the iterator points to is still valid, the iterator
itself is an object that gets modified in erase which ASAN didn't like.