we cannot do a single call to convert the plain old file to be a
dehydrated virtual file placeholder
split the conversion into a separate initial API call
fix transition from releases < 3.14 to current releases that have first
class support for windows shortcuts (so called link files)
Signed-off-by: Matthieu Gallien <matthieu.gallien@nextcloud.com>
we use the proper method from QByteArray to forward the data received by
GETFileJob to the socket connected to teh fetch data CfApi callback
Close https://github.com/nextcloud/desktop/issues/6769
Signed-off-by: Matthieu Gallien <matthieu.gallien@nextcloud.com>
should avoid triggering implicit hydration from within the desktop
client
triggering an implicit hydration on our own is strictly forbidden as
that is causing issues like deadlock and failed hydration attempts
Signed-off-by: Matthieu Gallien <matthieu.gallien@nextcloud.com>
will avoid calling done method multiple times on a signle file item
causing a crash via ENFORCE function
Signed-off-by: Matthieu Gallien <matthieu.gallien@nextcloud.com>
will fix behavior on windows by properly setting the new temp file just
downloaded have the proper state (read only or read/write) and not the
already existing file that will be replaced by the newly odwnloaded one
Signed-off-by: Matthieu Gallien <matthieu.gallien@nextcloud.com>
we try to preserve complex existing permissions unless the client is
required to change them significantly
Signed-off-by: Matthieu Gallien <matthieu.gallien@nextcloud.com>
make sure that a file locked that would not be modifiable by the
current client is read-only on storage
also make sure we make a file read/write when modification can happen
again
Close#5537
Signed-off-by: Matthieu Gallien <matthieu.gallien@nextcloud.com>
those log lines can easily be skipped from info level as they are needed
in very rare occasion
Signed-off-by: Matthieu Gallien <matthieu.gallien@nextcloud.com>
in order to be able to filter some errors when showing them into the
main dialog activity list, add some more info about the error to know
the origin (like a network issue or a sync issue)
Signed-off-by: Matthieu Gallien <matthieu.gallien@nextcloud.com>
introduce a new type of conflict for case clash filename conflicts
add proper handling including a new utility class to solve them and a
new dialog for the user to pick a fix
Signed-off-by: Matthieu Gallien <matthieu.gallien@nextcloud.com>
fetch lock properties from server
decode them and store them in sync database
test to ensure we do properly handle those properties
Signed-off-by: Matthieu Gallien <matthieu.gallien@nextcloud.com>
if the server has files with invalid modtime this assert will trigger
even though the code is handling the situation
Signed-off-by: Matthieu Gallien <matthieu.gallien@nextcloud.com>