Merge pull request #418 from iamqizhao/master

put ctx cancel into the right place