                 
                 self.reportProgress()
                 
-                if self.cancelled {
+                if self.stopped {
                     if self.tasks.isEmpty {
                         let pendingResources = self.prefetchResources[self.requestedCount..<self.prefetchResources.count]
                         self.failedResources += Array(pendingResources)

        // Since we want to handle the resources cancellation in main thread only.
        dispatch_async_safely_to_main_queue { () -> () in
            
            guard !self.cancelled else {
                assertionFailure("You can not restart the same prefetcher. Try to create a new prefetcher.")
                self.handleComplete()
                return

                return
            }
            
            self.stopped = true
            self.tasks.forEach { (_, task) -> () in
                task.cancel()
            }
