mirror of
https://github.com/nextcloud/desktop.git
synced 2024-11-26 23:28:14 +03:00
Merge pull request #3882 from nextcloud/bugfix/sync-exclude
Add .sync-exclude.lst to exclude files
This commit is contained in:
commit
7206d626ee
2 changed files with 9 additions and 6 deletions
|
@ -232,18 +232,16 @@ ExcludedFiles::ExcludedFiles(const QString &localPath)
|
||||||
// We're in a detached exclude probably coming from a partial sync or test
|
// We're in a detached exclude probably coming from a partial sync or test
|
||||||
if (_localPath.isEmpty())
|
if (_localPath.isEmpty())
|
||||||
return;
|
return;
|
||||||
|
|
||||||
// Load exclude file from base dir
|
|
||||||
QFileInfo fi(_localPath + QStringLiteral(".sync-exclude.lst"));
|
|
||||||
if (fi.isReadable())
|
|
||||||
addInTreeExcludeFilePath(fi.absoluteFilePath());
|
|
||||||
}
|
}
|
||||||
|
|
||||||
ExcludedFiles::~ExcludedFiles() = default;
|
ExcludedFiles::~ExcludedFiles() = default;
|
||||||
|
|
||||||
void ExcludedFiles::addExcludeFilePath(const QString &path)
|
void ExcludedFiles::addExcludeFilePath(const QString &path)
|
||||||
{
|
{
|
||||||
_excludeFiles[_localPath].append(path);
|
auto &excludeFilesLocalPath = _excludeFiles[_localPath];
|
||||||
|
if (std::find(excludeFilesLocalPath.cbegin(), excludeFilesLocalPath.cend(), path) == excludeFilesLocalPath.cend()) {
|
||||||
|
excludeFilesLocalPath.append(path);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
void ExcludedFiles::addInTreeExcludeFilePath(const QString &path)
|
void ExcludedFiles::addInTreeExcludeFilePath(const QString &path)
|
||||||
|
|
|
@ -544,6 +544,11 @@ void SyncEngine::startSync()
|
||||||
_discoveryPhase.reset(new DiscoveryPhase);
|
_discoveryPhase.reset(new DiscoveryPhase);
|
||||||
_discoveryPhase->_account = _account;
|
_discoveryPhase->_account = _account;
|
||||||
_discoveryPhase->_excludes = _excludedFiles.data();
|
_discoveryPhase->_excludes = _excludedFiles.data();
|
||||||
|
const QString excludeFilePath = _localPath + QStringLiteral(".sync-exclude.lst");
|
||||||
|
if (QFile::exists(excludeFilePath)) {
|
||||||
|
_discoveryPhase->_excludes->addExcludeFilePath(excludeFilePath);
|
||||||
|
_discoveryPhase->_excludes->reloadExcludeFiles();
|
||||||
|
}
|
||||||
_discoveryPhase->_statedb = _journal;
|
_discoveryPhase->_statedb = _journal;
|
||||||
_discoveryPhase->_localDir = _localPath;
|
_discoveryPhase->_localDir = _localPath;
|
||||||
if (!_discoveryPhase->_localDir.endsWith('/'))
|
if (!_discoveryPhase->_localDir.endsWith('/'))
|
||||||
|
|
Loading…
Reference in a new issue