To prevent corruption, our focus listener needs to be removed even when the surface is destroyed. So, bailing out when pointer->focus->resource is NULL just isn't good enough.