MJDownload icon indicating copy to clipboard operation
MJDownload copied to clipboard

bug fix 不能通过 get 取旧的状态, 否则下载完成后 self.state == state 进来, return无法发送通知

Open NJHu opened this issue 7 years ago • 0 comments

- (MJDownloadState)state
{
    // 如果是下载完毕
    if (self.totalBytesExpectedToWrite && self.totalBytesWritten == self.totalBytesExpectedToWrite) {
        return MJDownloadStateCompleted;
    }
    
    // 如果下载失败
    if (self.task.error) return MJDownloadStateNone;
    
    return _state;
}

#pragma mark - 状态控制
- (void)setState:(MJDownloadState)state
{
    // MJDownloadState oldState = self.state; 
   // 修改后:
       MJDownloadState oldState = _state; 
    if (state == oldState) return;
    
    _state = state;
    
    // 发通知
    [self notifyStateChange];
}

NJHu avatar Feb 27 '18 07:02 NJHu