When using the "Limit automatically" limit, we wait for 25% of the time
it took to upload something.
However, if we go to sleep while uploading, the time it took to upload may take
days. And waiting for 25% of a day is too long.
So never wait for more than 10 seconds
This may be related to issue #1880
If the local folder changes, the sync has to be reinitialized as
well. Until now we did not detect that, which led to the case that
the sync folder was not reinitialized in case only the local folder
changed in the setup dialog.
Before, we would only detect it if all the files were removed, and no
file where added or changed. This may not be enough because there might
be a welcome.txt file. Now, we check that none of the file stays the same,
and some files are removed.
Relates issue #1948
Earlier clients used QtKeychain without a QSettings object, which made
QtKeychain to write the password encrypted into a settings default
location, ie. the registry under windows.
If we can not find a password at the new location it is tried to read
the password from the old default location once. That makes people
happy in migration scenarios.
If we don't have the cookie in the keychain (e.g. the keychain is
unavailable) but there is still session cookie in the cookie jar,
showing the browser won't ask for authentication.
The legacy job might still need the neon session and the propagator.
We need to make sure the thread exits before.
This fixes crash when pausing a sync made with the legacy jobs
(for example when there is network limitation)
This should fix https://github.com/owncloud/enterprise/issues/200
If the Folder::Map object is kept locally in the wizard, changes to
the map are not reflected there, as they happen when signing out.
This fixes bug #1875
Direcotries are removed at the end, and we don't want to update
parent directory etag before the delete is performed, or the next
sync may read from db and think the files are not removed.
Issue #1845
When we detect a precondition failed, it is possible that it is
because the etag in the database is wrong. We must therefore not
read from the database on the next sync. In order to avoid that, we
reset the etag of parent directories to invalid values
Fixes#1767
Or an url with '#'
Fixes#1838
The problem is a bug fixed in Qt5 now breaks.
In Qt4, QUrl::setPath() did not properly handle path with '#' in them
and QUrl::toString would restitute the '#'.
But csync will blindly do "uri + path" before passing the path to
VIO. because csync_update has no idea that the VIO plugin need special
encoding, the encoding cannot be done there. But csync_owncloud then
encodes the full path. So if the uri contains '#', it must not be already
encoded or there will be two encoding.