propertyMapToFileStat(map, file_stat.get());
if (file_stat->type == ItemTypeDirectory)
file_stat->size = 0;
- if (file_stat->type == ItemTypeSkip
+ if (remotePerm.hasPermission(RemotePermissions::IsShared) && file_stat->etag.isEmpty()) {
+ /* Handle broken shared file error gracefully instead of stopping sync in the desktop client.
+ DO not set _error */
+ qCWarning(lcDiscovery)
+ << "Missing path to a share :" << file << file_stat->path << file_stat->type << file_stat->size
+ << file_stat->modtime << file_stat->remotePerm.toString()
+ << file_stat->etag << file_stat->file_id;
+ } else if (file_stat->type == ItemTypeSkip
|| file_stat->size == -1
|| file_stat->remotePerm.isNull()
|| file_stat->etag.isEmpty()