&& item->_type == ItemTypeFile
&& opts._vfs->mode() != Vfs::Off
&& _pinState != PinState::AlwaysLocal
-#ifdef Q_OS_WIN
- && !FileSystem::isLnkFile(path._server)
-#endif
) {
item->_type = ItemTypeVirtualFile;
+#ifdef Q_OS_WIN
+ if(FileSystem::isLnkFile(path._server)) {
+ item->_type = ItemTypeVirtualFileDownload;
+ }
+#endif
if (isVfsWithSuffix())
addVirtualFileSuffix(tmp_path._original);
}
rec._serverHasIgnoredFiles |= prev._serverHasIgnoredFiles;
// Ensure it's a placeholder file on disk
- if (item->_type == ItemTypeFile
-#ifdef Q_OS_WIN
- && !FileSystem::isLnkFile(filePath)
-#endif
- ) {
+ if (item->_type == ItemTypeFile) {
const auto result = _syncOptions._vfs->convertToPlaceholder(filePath, *item);
if (!result) {
item->_instruction = CSYNC_INSTRUCTION_ERROR;
stat->type = ItemTypeVirtualFileDownload;
return true;
} else if (!isSparseFile && isUnpinned){
- stat->type = ItemTypeVirtualFileDehydration;
+ if (!FileSystem::isLnkFile(stat->path)) {
+ stat->type = ItemTypeVirtualFileDehydration;
+ }
return true;
} else if (isSparseFile) {
stat->type = ItemTypeVirtualFile;