, _relativeLimitCurrentMeasuredJob(nullptr)
, _currentDownloadLimit(0)
{
- _currentUploadLimit = _propagator->_uploadLimit.fetchAndAddAcquire(0);
- _currentDownloadLimit = _propagator->_downloadLimit.fetchAndAddAcquire(0);
+ _currentUploadLimit = _propagator->_uploadLimit;
+ _currentDownloadLimit = _propagator->_downloadLimit;
QObject::connect(&_switchingTimer, &QTimer::timeout, this, &BandwidthManager::switchingTimerExpired);
_switchingTimer.setInterval(10 * 1000);
void BandwidthManager::switchingTimerExpired()
{
- qint64 newUploadLimit = _propagator->_uploadLimit.fetchAndAddAcquire(0);
+ qint64 newUploadLimit = _propagator->_uploadLimit;
if (newUploadLimit != _currentUploadLimit) {
qCInfo(lcBandwidthManager) << "Upload Bandwidth limit changed" << _currentUploadLimit << newUploadLimit;
_currentUploadLimit = newUploadLimit;
}
}
}
- qint64 newDownloadLimit = _propagator->_downloadLimit.fetchAndAddAcquire(0);
+ qint64 newDownloadLimit = _propagator->_downloadLimit;
if (newDownloadLimit != _currentDownloadLimit) {
qCInfo(lcBandwidthManager) << "Download Bandwidth limit changed" << _currentDownloadLimit << newDownloadLimit;
_currentDownloadLimit = newDownloadLimit;
int OwncloudPropagator::maximumActiveTransferJob()
{
- if (_downloadLimit.fetchAndAddAcquire(0) != 0
- || _uploadLimit.fetchAndAddAcquire(0) != 0
+ if (_downloadLimit != 0
+ || _uploadLimit != 0
|| !_syncOptions._parallelNetworkJobs) {
// disable parallelism when there is a network limit.
return 1;
}
}
- if (propagator()->_abortRequested.fetchAndAddRelaxed(0) && (_item->_status == SyncFileItem::NormalError
- || _item->_status == SyncFileItem::FatalError)) {
+ if (propagator()->_abortRequested && (_item->_status == SyncFileItem::NormalError
+ || _item->_status == SyncFileItem::FatalError)) {
// an abort request is ongoing. Change the status to Soft-Error
_item->_status = SyncFileItem::SoftError;
}
const SyncOptions &syncOptions() const;
void setSyncOptions(const SyncOptions &syncOptions);
- QAtomicInt _downloadLimit;
- QAtomicInt _uploadLimit;
+ int _downloadLimit = 0;
+ int _uploadLimit = 0;
BandwidthManager _bandwidthManager;
- QAtomicInt _abortRequested; // boolean set by the main thread to abort.
+ bool _abortRequested = false;
/** The list of currently active jobs.
This list contains the jobs that are currently using ressources and is used purely to
void abort()
{
- bool alreadyAborting = _abortRequested.fetchAndStoreOrdered(true);
- if (alreadyAborting)
+ if (_abortRequested)
return;
if (_rootJob) {
// Connect to abortFinished which signals that abort has been asynchronously finished
void PropagateDownloadFile::start()
{
- if (propagator()->_abortRequested.fetchAndAddRelaxed(0))
+ if (propagator()->_abortRequested)
return;
_isEncrypted = false;
void PropagateDownloadFile::startDownload()
{
- if (propagator()->_abortRequested.fetchAndAddRelaxed(0))
+ if (propagator()->_abortRequested)
return;
// do a klaas' case clash check.
void PropagateRemoteDelete::start()
{
- if (propagator()->_abortRequested.fetchAndAddRelaxed(0))
+ if (propagator()->_abortRequested)
return;
if (!_item->_encryptedFileName.isEmpty()) {
void PropagateRemoteMkdir::start()
{
- if (propagator()->_abortRequested.fetchAndAddRelaxed(0))
+ if (propagator()->_abortRequested)
return;
qCDebug(lcPropagateRemoteMkdir) << _item->_file;
void PropagateRemoteMkdir::slotStartMkcolJob()
{
- if (propagator()->_abortRequested.fetchAndAddRelaxed(0))
+ if (propagator()->_abortRequested)
return;
qCDebug(lcPropagateRemoteMkdir) << _item->_file;
Q_UNUSED(path)
Q_UNUSED(size)
- if (propagator()->_abortRequested.fetchAndAddRelaxed(0))
+ if (propagator()->_abortRequested)
return;
qDebug() << filename;
void PropagateRemoteMove::start()
{
- if (propagator()->_abortRequested.fetchAndAddRelaxed(0))
+ if (propagator()->_abortRequested)
return;
QString origin = propagator()->adjustRenamedPath(_item->_file);
}
void PropagateUploadFileCommon::startUploadFile() {
- if (propagator()->_abortRequested.fetchAndAddRelaxed(0)) {
+ if (propagator()->_abortRequested) {
return;
}
{
qDebug() << "Trying to compute the checksum of the file";
qDebug() << "Still trying to understand if this is the local file or the uploaded one";
- if (propagator()->_abortRequested.fetchAndAddRelaxed(0)) {
+ if (propagator()->_abortRequested) {
return;
}
void PropagateUploadFileNG::startNextChunk()
{
- if (propagator()->_abortRequested.fetchAndAddRelaxed(0))
+ if (propagator()->_abortRequested)
return;
qint64 fileSize = _fileToUpload._size;
void PropagateUploadFileV1::startNextChunk()
{
- if (propagator()->_abortRequested.fetchAndAddRelaxed(0))
+ if (propagator()->_abortRequested)
return;
if (!_jobs.isEmpty() && _currentChunk + _startChunk >= _chunkCount - 1) {
{
_moveToTrash = propagator()->syncOptions()._moveFilesToTrash;
- if (propagator()->_abortRequested.fetchAndAddRelaxed(0))
+ if (propagator()->_abortRequested)
return;
QString filename = propagator()->_localDir + _item->_file;
void PropagateLocalMkdir::start()
{
- if (propagator()->_abortRequested.fetchAndAddRelaxed(0))
+ if (propagator()->_abortRequested)
return;
const auto rootPath = [=]() {
void PropagateLocalRename::start()
{
- if (propagator()->_abortRequested.fetchAndAddRelaxed(0))
+ if (propagator()->_abortRequested)
return;
QString existingFile = propagator()->getFilePath(propagator()->adjustRenamedPath(_item->_file));
_propagator->_uploadLimit = upload;
_propagator->_downloadLimit = download;
- int propDownloadLimit = _propagator->_downloadLimit.load();
- int propUploadLimit = _propagator->_uploadLimit.load();
-
- if (propDownloadLimit != 0 || propUploadLimit != 0) {
- qCInfo(lcEngine) << "Network Limits (down/up) " << propDownloadLimit << propUploadLimit;
+ if (upload != 0 || download != 0) {
+ qCInfo(lcEngine) << "Network Limits (down/up) " << upload << download;
}
}