fix double cancel