public override long Seek(long offset, SeekOrigin origin) { try { return(Stream.Seek(offset, origin)); } catch (ObjectDisposedException ex) { Stream = new QueueStream(); Cancel(); StartDownload(); return(Stream.Seek(offset, origin)); } }