fix {event,timer,signal}_assign() bug