fix warning

sending messages to weak is not a good,
so grab a strong ref first