The previous check didn't take into the account that .sync-exclude.lst
might be empty which would crash at Q_ASSERT(_allExcludes.contains(basePath))
in the prepare function. It also takes into account that
_allExcludes[basePath] was creating new items in the list.
Signed-off-by: Camila <hello@camila.codes>
if (!f.open(QIODevice::ReadOnly))
return false;
+ QList<QByteArray> patterns;
while (!f.atEnd()) {
QByteArray line = f.readLine().trimmed();
if (line.isEmpty() || line.startsWith('#'))
continue;
csync_exclude_expand_escapes(line);
- _allExcludes[basePath].append(line);
+ patterns.append(line);
}
+ _allExcludes.insert(basePath, patterns);
// nothing to prepare if the user decided to not exclude anything
- if(_allExcludes.size())
+ if (!_allExcludes.value(basePath).isEmpty()){
prepare(basePath);
+ }
return true;
}