Markus Goetz
2a45ebde33
Networkjobs: Fix Qt 4 compile (again)
2015-05-12 17:19:17 +02:00
Markus Goetz
cdfafa2180
Propagator: Mention name of conflict file (for debugging)
2015-05-12 17:11:21 +02:00
Olivier Goffart
c2dacd03a5
BandwidthManager: fix warnings
...
Unused variables
2015-05-12 16:35:27 +02:00
Markus Goetz
00a075b0d8
Merge branch '1.9'
2015-05-12 13:49:55 +02:00
Markus Goetz
3b34d5b54e
Account: Fix Qt4 compile
2015-05-12 13:49:07 +02:00
Jocelyn Turcotte
0f51de20c4
Fix the neon build
2015-05-12 13:04:47 +02:00
Jocelyn Turcotte
ea39e457f5
Fix the build
2015-05-12 10:35:57 +02:00
Daniel Molkentin
b54f2b3b31
Merge remote-tracking branch 'origin/1.9'
...
Conflicts:
VERSION.cmake
src/libsync/propagatedownload.cpp
src/libsync/propagateupload.cpp
2015-05-12 10:03:38 +02:00
Daniel Molkentin
a36df4aa4b
Merge remote-tracking branch 'origin/1.8' into 1.9
2015-05-12 09:57:22 +02:00
Markus Goetz
9e7779a476
Bandwidth Manager: Comment out qDebug
...
We have not received any grave bug reports for it, not needed anymore.
2015-05-11 16:07:34 +02:00
Markus Goetz
625e61516f
Propagator: Limit length of temporary file name #2789 (fixup)
...
Fix 22c35c4d15
2015-05-11 15:42:35 +02:00
Markus Goetz
22c35c4d15
Propagator: Limit length of temporary file name #2789
2015-05-08 16:42:03 +02:00
Markus Goetz
f2004da867
SSL: Re-use encryption session for different TCP connections #3159
...
This also improves the SSL configuration creation and fixes #3027
2015-05-08 14:21:27 +02:00
Christian Kamm
b9eafaaf24
Wizard: Allow SSL cert dialog to show twice. #3168
...
Normally we never ask twice for the same url, but in the setup wizard
it makes sense to do so.
2015-05-08 12:32:14 +02:00
Markus Goetz
0359c775e0
Discovery: Test better, treat invalid hrefs as error #3176
2015-05-07 17:19:48 +02:00
Jocelyn Turcotte
1053153ec4
Fix the Qt4 build
...
Following a6500d8068
Qt4's moc doesn't expand macros and wouldn't evaluate QT_VERSION_CHECK.
2015-05-07 14:49:01 +02:00
Christian Kamm
79ac61684c
Propagator: Overwrite local data only if unchanged. #3156
2015-05-07 14:43:33 +02:00
Christian Kamm
73e2254a80
AccountState: Treat *any* 503 as a temporary error. #3113
2015-05-07 09:21:52 +02:00
Jocelyn Turcotte
7ea1baaf2d
Merge pull request #2920 from remixtj/utility_SHGetKnownFolderPath
...
Use dynamic library loading for detecting the correct path for links
2015-05-06 17:22:46 +02:00
Jocelyn Turcotte
a6500d8068
Work around the Qt PUT corruption bug with Qt < 5.4.2 #2425
...
Since QNonContiguousByteDeviceThreadForwardImpl::reset will
call UploadDevice::reset with a BlockingQueuedConnection, this
allows us to reset the HTTP channel along with its buffers
before they get the chance to be reused with a subsequent request.
2015-05-06 16:56:50 +02:00
Luca Lorenzetto
027365aaa6
Additional code cleanup
2015-05-06 15:09:41 +02:00
Daniel Molkentin
bceb40ed80
Disable setSslConfiguration calls for older Qt version
...
This is only required for client certs, which currently have
no GUI anyway and are experimental.
2015-05-06 11:20:16 +02:00
Daniel Molkentin
f315423811
Merge remote-tracking branch 'origin/1.8'
...
Conflicts:
VERSION.cmake
2015-05-06 10:04:22 +02:00
Markus Goetz
07ffff3d77
SyncEngine: Fix accidental re-discovery because of broken version table
...
Bug had been triggered by d63abef718
Broken version table in there since some time it seems like.
2015-05-05 17:07:13 +02:00
Luca Lorenzetto
f3bdfef9cf
Integrating feedbacks provided by jturcotte
2015-05-05 16:42:34 +02:00
Klaas Freitag
d63abef718
SyncEngine: Handle upgrade case from 1.8.0
...
If 1.8.0 caused missing data in the local tree, this patch gets it
back. For that, the usage of the journal for remote repository is
disabled at the first start.
2015-05-04 13:40:25 +02:00
Markus Goetz
4700c604b1
Proxy: Register meta type #3170
2015-04-29 14:54:08 +02:00
Olivier Goffart
ae17f58b80
HTTP Creds: Do not send the password at every request
2015-04-27 16:28:37 +02:00
Olivier Goffart
ddfb7f3b7a
Merge remote-tracking branch 'origin/1.8'
2015-04-27 12:20:11 +02:00
Markus Goetz
3a52db46ad
Discovery: Fix another empty-local-directory bug
2015-04-23 16:15:13 +02:00
Christian Kamm
7c1281dd06
Windows: Fix rename of finished file. #3073
...
The file was still open and therefore couldn't be renamed...
2015-04-22 14:46:04 +02:00
Christian Kamm
96ecdb866d
Time estimate: Refactor remaining time guess. #2328
2015-04-22 11:20:31 +02:00
Christian Kamm
7d68c628db
Time estimation: Use a consistent check for size dependence. #2328
2015-04-22 10:45:41 +02:00
Christian Kamm
509b83e73e
Time estimation: Avoid a progress reset before finish. #2328
...
The current algorithm doesn't care much, but resetting progress
to 0 just before completing a job is confusing anyway.
2015-04-22 10:45:41 +02:00
Olivier Goffart
cf5100a20b
Merge remote-tracking branch 'origin/1.8'
2015-04-20 14:58:45 +02:00
Jocelyn Turcotte
ffbf2fb6ce
Fix the neon build
2015-04-20 11:31:02 +02:00
Olivier Goffart
b039c2ce86
More change to compile with 5.5
...
The problem is again that QStringList no longer include QDataStream
2015-04-20 09:47:25 +02:00
Olivier Goffart
ba65187ad3
Fix compilation with Qt 5.5
...
Because of commit 90e7cc172a7521396bb2d49720ee4ceb9a9390b3 in qtbase,
we now need to explicitly include QDataStream
Fixes #2809
2015-04-19 11:02:43 +02:00
Jocelyn Turcotte
12d7484b85
Pass SyncFileItems by pointer instead of by value
...
Use a QSharedPointer to keep the same ownership and
continue passing the SyncFileItems as a const& when
ownership isn't taken. This allows sharing the same
allocations between the jobs and the result vectors.
This saves about 20MB of memory (off 120MB) once all
jobs are created.
2015-04-18 14:26:40 +02:00
Olivier Goffart
6c73f25747
HTTP creds: Fix translation of the password input dialog
...
tr() needs Q_OBJECT
2015-04-17 12:19:37 +02:00
Olivier Goffart
8bb4af067a
Propagate download: Fix restoring files for which the conflict file exists
...
For issue #3106
1) Always use the actual timestamp from the file in the file system
to create the conflict file. This is important because if one edit a
file several time, they should have different name. Also it makes more
sens to have the mtime of the modified file.
2) Give the correct size to the job so we know when the temporary file
is complete in case of resuming.
2015-04-16 11:36:01 +02:00
Olivier Goffart
458f336405
PropagateDownload: Read the mtime from the file system after writing it
...
Because file system like FAT only have two second accuracy and would result
in a upload if the mtime in the database is not the same as the one that was
downloaded
Issue #3103
2015-04-15 15:50:20 +02:00
Markus Goetz
7c9cffa5ae
ConfigFile: Remove unused functions
2015-04-15 14:58:27 +02:00
Markus Goetz
2866e56c51
LsColXMLParser: More testing 2
2015-04-14 14:56:25 +02:00
Klaas Freitag
4283ab3b44
LsColJob: Create a XML parser object for better unit testability.
2015-04-14 13:43:05 +02:00
Klaas Freitag
c579069071
LsColXMLParser: let parse return bool.
2015-04-14 13:41:51 +02:00
Markus Goetz
9ffacd4ecd
Discovery: Explicitly check for XML parser errors
...
..instead of relying that our state machine does not do anything in that case.
2015-04-13 16:04:24 +02:00
Markus Goetz
9d5f5ea3bc
Discovery: Initialize error with EIO in constructor
...
This is safer, initializing it in remote_vio_opendir_hook was enough though.
2015-04-13 15:54:08 +02:00
Markus Goetz
2dbd27af76
Discovery: Initialize error with EIO
2015-04-13 15:36:07 +02:00
Markus Goetz
0634a4d0c6
Discovery: Add a sanity check when results are parsed
2015-04-13 15:10:04 +02:00
Klaas Freitag
ec81cdefb0
Networkjobs: Only log a subset of the account url.
...
This avoids disclosing of user and password in the logfile which can
happen in some cases.
2015-04-12 12:37:14 +02:00
Christian Kamm
d9ea6936ab
Handle redirect of auth request. #3082
2015-04-10 09:18:15 +02:00
Christian Kamm
adcf40afc3
Discovery: Speed up initial run. #2796
2015-04-08 15:43:49 +02:00
Christian Kamm
d986011067
Sync: Fix sync of deletions during 503. #2894
2015-04-08 10:50:08 +02:00
Jocelyn Turcotte
4a890eae38
SyncEngine: Fix a crash caused by an invalid DiscoveryDirectoryResult::iterator #3051
...
The default constructor of the iterator points to NULL, which makes
it != end() but invalid to dereference.
Use an integer index instead to keep 0 as a valid default value that
can always correctly be checked against size().
Also make sure that no data is shared between threads by making the
csync_vio_file_stat_t copyable and passing it as const.
2015-04-08 09:35:43 +02:00
Olivier Goffart
e15b9b5358
Merge remote-tracking branch into 1.8
2015-04-07 10:42:27 +02:00
Olivier Goffart
1617c9d482
PropfindJob: fix xml parsing
...
It would only find the first property
2015-04-07 10:35:27 +02:00
Olivier Goffart
50ba73860c
Merge remote-tracking branch into 1.8
2015-04-07 08:02:55 +02:00
Markus Goetz
750cdc1910
AbstractSslErrorHandler: Also give QSslConfiguration
2015-04-06 21:46:03 +02:00
Olivier Goffart
71d9f23068
theme: fix compilation of libsync without QtGui
2015-04-03 11:27:06 +02:00
Markus Goetz
7f2213416a
Discovery: Add warning if returned etag is 0
...
There will be another bugfix which fixes
https://gist.github.com/jturcotte/3d5a7874d26bc27b1be9
directory.
2015-04-02 16:57:53 +02:00
Markus Goetz
9b9f0bdd4d
SyncEngine: Show more timing measurements #3064
2015-04-02 15:18:46 +02:00
Markus Goetz
ef89582d7e
Propagator: Fix compile
2015-03-30 08:41:53 +02:00
Christian Kamm
ba0c3256fa
Remove unused HttpConfigFile.
2015-03-27 13:20:10 +01:00
Markus Goetz
b6fe5d2cff
Propagator: Debug output regarding OC-ETag
...
We can remove this in some time, but currently it is interesting
to see for what server setup is no ETag but an OC-ETag.
2015-03-27 13:16:11 +01:00
Markus Goetz
c6bc388001
Proxy: More debug, always set returned system proxy
2015-03-27 11:53:58 +01:00
Christian Kamm
2578832002
Fix clang warnings about deleting incomplete 'Account'.
2015-03-27 11:11:44 +01:00
Markus Goetz
cfada67aa6
Proxy: Fix compile harder
2015-03-27 11:02:19 +01:00
Christian Kamm
5483682281
CookieJar: Don't accidentally overwrite cookies. #2808
...
Calling save() in the CookieJar destructor was problematic. For instance
we sometimes create a new QNAM with a new CookieJar and then call
setCookieJar() on it to assign some other jar. That destroy the fresh
jar and potentially overwrite cookies.
Also explicitly saving the account's cookies when the account is saved
is more explicit and thus more reliable than counting on the Account
destructor to do it.
2015-03-27 10:49:24 +01:00
Christian Kamm
2a8c23aac3
Account: Destroy on exit.
...
During shutdown we want the account object to be deleted and
therefore we need to be able to remove the strong reference
in AccountManager.
2015-03-27 10:43:14 +01:00
Christian Kamm
88bc96fc4c
ConValidator: Delete instance if no credentials.
2015-03-27 10:43:14 +01:00
Christian Kamm
588129d852
HttpCreds: Delete password from old location. #2186
2015-03-27 10:40:19 +01:00
Markus Goetz
5c87a35fe4
Proxy: Fix compile
2015-03-26 18:36:37 +01:00
Markus Goetz
418185af9a
Qt4: Fix compile
2015-03-26 15:17:16 +01:00
Christian Kamm
3cef771868
HttpCreds: Fill pw dialog with previous password. #2848 #2879
2015-03-26 09:25:45 +01:00
Christian Kamm
a9a24c96fc
Themes: Cache icons instead of rebuilding a lot.
2015-03-25 14:59:28 +01:00
Markus Goetz
a202203325
Proxy: Fix issues with previous patch
...
This is for #2993 and #2802
2015-03-25 12:25:49 +01:00
Markus Goetz
83c3d76966
Proxy: Look up system proxy from different thread
...
We should actually upstream this into QNAM.
This is for #2993 and #2802
2015-03-25 08:52:23 +01:00
Markus Goetz
99734f8d72
Account: Unusued variable
2015-03-25 08:52:23 +01:00
Olivier Goffart
dafc2d2b73
Sync engine: Check the blacklist for the right tree
...
When the operation is download, we have a INSTRUCTION_NONE for the local
tree, but we should not check the blacklist just yet.
2015-03-24 12:23:04 +01:00
Daniel Molkentin
c7eb85ef78
Activity: Correctly restore column sizes
...
Fixes : #3005
2015-03-23 18:22:25 +01:00
Jocelyn Turcotte
3c9acdf724
Fix a crash when accessing a dangling UploadDevice pointer #2984
...
This is largely a guess, but this is the only place where we use
a QIODevice to push data through QNAM and that the QIODevice isn't
a direct child of the QNetworkReply.
Fix the issue by making sure that we don't go back to the event loop
and possibly handle network events between the destruction of the
upload QIODevice and the QNetworkReply, which might lead to QNAM
dereferencing a dangling QIODevice pointer.
2015-03-23 16:14:54 +01:00
Olivier Goffart
e81d1ab9b8
application: --confdir option with invalid direcotry now exit
...
Show an error and exit if an invalid directory (eg, a file) is passed to --confdir
Fixes : #2453
2015-03-23 15:02:27 +01:00
Christian Kamm
4ef0ce112c
CookieJar: Session cookies should *not* be stored in cookies.db.
2015-03-19 11:57:25 +01:00
Christian Kamm
57c14a0eba
Windows: Reset QNAM as a workaround. #2899 #2895 #2973
...
The QNetworkAccessManager is reset when we are disconnected, just
before attempting to fetch the server's status.php.
This may help fix the problem described in various issues where we
get 'Connection closed' or timeout errors after the OS has woken
from sleep.
2015-03-19 11:40:47 +01:00
Christian Kamm
89f831e7d4
Remote delete: Consider 404 a success. #2919
2015-03-19 10:04:02 +01:00
Markus Goetz
06a2f58c51
Propagator: Introduce custom property to make error soft
...
This can be set by a custom credential QNAM.
2015-03-17 23:31:30 +01:00
Luca Lorenzetto
9351c5eefa
Cleaner creation of link path. Using QDir ensures that every needed / is present
2015-03-13 16:23:43 +01:00
Markus Goetz
c42c9f0002
Propagator: Add comment
2015-03-13 15:48:35 +01:00
Jocelyn Turcotte
0f84510e6f
Fix the build with GCC 4.7
...
Disable bitfields completely in SyncFileItem with that compiler.
2015-03-12 14:54:11 +01:00
Christian Kamm
1dd3488973
Uploads: Fix big seeks on Windows. #2954
2015-03-12 13:18:08 +01:00
Christian Kamm
9249d6c2f9
Logging: Print instruction when job completed.
2015-03-12 10:26:44 +01:00
Christian Kamm
3992fba168
Activity: Set a message for conflicts. #2792
...
Also show size when conflicting files are downloaded.
2015-03-12 10:00:45 +01:00
Christian Kamm
efe9f1b442
Lnk: Work around QFile::rename() #2792
...
QFile::rename() fails if the source file is a shortcut to a file
or directory that does not exist.
2015-03-11 12:29:33 +01:00
Jocelyn Turcotte
db7919dc2f
Shrink sizeof(SyncFileItem) by 20%
...
Move all small fields together in the struct and make them use bitfields.
Also remove the unused log::_other_remotePerm field.
2015-03-11 11:49:11 +01:00
Olivier Goffart
4a01644625
Disable parallel uploads for server versions <= 8.0.2
...
Issue #2938
2015-03-11 11:31:51 +01:00
Klaas Freitag
071177cee2
Output a more sensible error message for auth errors
2015-03-10 12:14:14 +01:00
Klaas Freitag
c88742fad3
Revert "SetupW: Display proper error messages if password or user was wrong."
...
This reverts commit 396f38598f
.
This adds redundant code and potentially breaks Shibboleth
2015-03-10 11:17:35 +01:00
Markus Goetz
3b12b9d81d
Revert "Propagator: Delete job on finish"
...
Needs a bit more thinking.
This reverts commit 8746914f3b
.
2015-03-09 16:19:16 +01:00
Markus Goetz
31e4009737
Propagator: Use QBA for responseTimestamp instead of QString
2015-03-09 15:52:52 +01:00