Olivier Goffart
bea8896012
Merge remote-tracking branch 'origin/master' into new-ui
2015-06-14 10:39:30 +02:00
Olivier Goffart
1dabdc7df1
discoveryphase: initialize DiscoveryMainThread::_currentGetSizeResult
2015-06-12 14:43:18 +02:00
Olivier Goffart
11c8415cd6
Coverity do not support non-static data initializer
...
Fixes #3337
2015-06-12 13:57:17 +02:00
Olivier Goffart
cc3543dbd2
Confirm feature: The UI part in the selective sync view
...
Folder that are over the threshold will appear in red in the
selective sync view and will be deselected by default
2015-06-11 15:46:01 +02:00
Olivier Goffart
e9e11d251f
Fix compilation after merge of the confirm and the new-ui branch
2015-06-10 16:22:14 +02:00
Olivier Goffart
139b28b471
Merge branch 'master' into new-ui
...
Conflicts:
src/gui/folder.cpp
src/gui/folder.h
src/gui/folderman.cpp
2015-06-10 15:57:55 +02:00
Olivier Goffart
16786eed54
Merge pull request #3281 from owncloud/confirm
...
Confirm feature (sync engine part only)
2015-06-10 13:39:52 +02:00
Olivier Goffart
e135d4cccf
Merge remote-tracking branch 'origin/1.8'
2015-06-10 13:42:02 +02:00
Olivier Goffart
6df7551bdd
DiscoveryPhase: Fix the unlikely case the server resturns utf-8 in permissions
...
UTF-8 size might be bigger than the size of the QString
In that case we would end up with a non-nill terminated permissions.
2015-06-08 15:40:06 +02:00
Olivier Goffart
1b9d82679c
OwnSQL: fix initialisation of variables
2015-06-08 15:30:39 +02:00
Klaas Freitag
fc2ceb88fb
Rename thread to SyncEngine Thread to avoid confusion about Neon.
2015-06-06 10:49:47 +02:00
Christian Kamm
ee08b3759d
SyncScheduling: Avoid new resyncs on local mkdir.
...
(cherry picked from commit bacf6166c1
)
2015-06-05 10:27:28 +02:00
Christian Kamm
bacf6166c1
SyncScheduling: Avoid new resyncs on local mkdir.
2015-06-04 15:02:24 +02:00
Christian Kamm
2ed329e025
Improve reporting of server error messages. #3220
...
In particular the 'unsupported client version' error message
is now visible to the user when trying to connect to a
server that no longer supports the current client version.
2015-06-04 10:07:24 +02:00
Christian Kamm
4c10f1e40c
Wizard: Show server error message if possible. #3220
2015-06-03 16:33:09 +02:00
Olivier Goffart
02ffbf8989
confirm feature: fix typos spotted by ckamm
2015-06-03 15:20:42 +02:00
Christian Kamm
89376e14d6
Nicer fix for the security issue #3283 .
2015-06-03 11:37:26 +02:00
Christian Kamm
e32bd5a59f
Merge remote-tracking branch 'origin/1.8'
2015-06-03 11:36:52 +02:00
Klaas Freitag
75b38d1a2f
Abort the request and reset the QNAM if user does not ACK a new cert.
...
This is supposed to fix bug #3283
2015-06-02 12:21:49 +02:00
Christian Kamm
2435ba7e7d
Windows: Fix unit test build.
2015-05-27 14:59:28 +02:00
Olivier Goffart
507206367f
Merge branch 'master' into new-ui
2015-05-26 14:56:08 +02:00
Olivier Goffart
9e17ddffae
Confirm feature: document the white/black/unconfirmed lists
2015-05-26 14:41:29 +02:00
Olivier Goffart
a621223cc8
SyncEngine: add an api to set the maximum size of new shared folder that do not require confirmation
2015-05-26 14:41:01 +02:00
Olivier Goffart
7bb2834d8b
Confirm feature (The sync engine part)
2015-05-26 12:34:07 +02:00
Olivier Goffart
10d9e53159
Confirm feature: Use selective sync in the database
2015-05-26 12:34:07 +02:00
Olivier Goffart
2c67692958
JournalDb: add a table in the db for the selective sync
2015-05-26 12:33:54 +02:00
Olivier Goffart
5cb10bf6a1
PropfindJob: fix parsing of properties that have a sub element
...
The default argument of readElementText is ErrorOnUnexpectedElement which
abort the parsing of remaining elements
2015-05-26 12:33:54 +02:00
Olivier Goffart
54a42e401b
More compilation fixes after the merge
2015-05-26 12:33:19 +02:00
Olivier Goffart
6b27d2e703
Merge remote-tracking branch 'origin/1.8'
2015-05-26 12:28:31 +02:00
Klaas Freitag
6c46713701
include qtconcurrentrun header rather than QtConcurrent for Qt4
2015-05-22 14:46:29 +02:00
Olivier Goffart
3754e6c781
Disable the curruption workaround on mac and windows
...
The binaries we ship have a patched Qt
2015-05-22 14:19:44 +02:00
Olivier Goffart
6b9e123816
Merge remote-tracking branch 'origin/checksum_1.8' into 1.8
2015-05-22 10:32:37 +02:00
Olivier Goffart
fb2295fcec
Merge branch 'recall' into 1.8
2015-05-22 10:32:26 +02:00
Christian Kamm
1c84d01584
Windows: Fix build of tests.
2015-05-22 09:17:24 +02:00
Olivier Goffart
3fcce08a22
recall: move the recall code in a namespace
2015-05-21 16:23:54 +02:00
Olivier Goffart
289800c1ba
Recall: make it work even if it is not in the root directory
2015-05-21 16:06:53 +02:00
Olivier Goffart
9a02a0f3a8
Recall feature: Fix some style issues
2015-05-21 16:06:52 +02:00
Jakub Moscicki
4e79093f84
recall file prototype
2015-05-21 16:06:52 +02:00
Klaas Freitag
d2fff2c3e3
Theme: Allow to change the transmission checksum through theming.
2015-05-21 15:59:24 +02:00
Klaas Freitag
8f277e46d6
TransmissionChecksumming: Remove SyncFileItem dependency.
2015-05-21 15:51:48 +02:00
Klaas Freitag
c33d962712
TransmissonChecksumValidator: Add documentation.
2015-05-21 14:32:08 +02:00
Klaas Freitag
3870915118
TransmissionChecksumValidator: Reduce verbosity.
2015-05-21 14:31:39 +02:00
Klaas Freitag
b05ca526a4
In case of empty checksum type, emit validated.
2015-05-21 14:31:18 +02:00
Klaas Freitag
4e28a24af3
Let checksumType() read the config to destinguish checksum type.
2015-05-21 14:30:21 +02:00
Klaas Freitag
dec3bd4a02
Some more minor cleanups based on the pull request review.
2015-05-20 22:44:12 +02:00
Klaas Freitag
64ce0cd7a2
Improved implementation efficiency of checksum calculation.
...
Based on Oliviers suggestions the file read routine now reuses
one buffer to read the entire file.
Other cleanups.
2015-05-20 21:42:08 +02:00
Klaas Freitag
5b5a636cc1
Make TransmissionChecksumValidator child of the job for auto delete.
...
That way no explicit memory management is needed as the allocation
is freed when the job (parent) is deleted automatically.
2015-05-20 16:54:04 +02:00
Daniel Molkentin
5c6a6529a6
Merge pull request #3258 from binwiederhier/bugfix/issue3256-mkcol
...
Add 'Content-Length: 0' header to MKCOL request; fixes #3256
2015-05-20 15:48:33 +02:00
Philipp Heckel
68fa190cf7
Add 'Content-Length: 0' header
2015-05-20 14:40:20 +01:00
Olivier Goffart
d148464efe
SyncJournalDb::updateErrorBlacklistEntry: lock the mutext at the beginning
...
The mutex need to be locked before checkConnect, that's what all the other functions are doing
2015-05-20 15:30:19 +02:00
Klaas Freitag
17fe4c3b29
PropagateUpload: Fix typo in warn message.
2015-05-20 12:30:00 +02:00
Klaas Freitag
dd6c97abb6
Propagator: Added a log that tells if transmission checksumming is used.
2015-05-20 12:27:54 +02:00
Markus Goetz
330b352001
ProgressInfo: Fix Windows build
2015-05-20 11:59:33 +02:00
Klaas Freitag
ddfe3fa7ab
TransmissionChecksum: Fix identation.
2015-05-20 10:49:18 +02:00
Klaas Freitag
1f7274c2f2
TransmissionChecksum: Removed "pseudo" thread worker functions
...
Removed the Worker postfix from the method names to reflect their non
threaded character, they moved into a thread in the Validator class.
Thanks ckamm for review.
2015-05-20 10:45:20 +02:00
Klaas Freitag
8b371c42b7
Propagate Download: Handle malformed checksum header as error.
...
Plus some cleanup, bool ok was not needed actually.
2015-05-19 17:09:40 +02:00
Klaas Freitag
c7f759fedf
Propagator: Use the TransmissionChecksumValidator class.
2015-05-19 17:09:40 +02:00
Klaas Freitag
830daa40d1
Add a class TransmissionChecksumValidator, incl. unit test.
...
This does all needed to manage checksums that go with http headers
ensuring that the transmission was correct.
2015-05-19 17:09:40 +02:00
Klaas Freitag
f016d25b4c
Propagate downloads: Handle checksum transmission header.
...
Read a checksum from the HTTP header, and if its there, compare the
downloaded tmp file against it. In case of corruption, schedule a
redownload.
2015-05-19 17:09:40 +02:00
Klaas Freitag
e18fd62f34
Propagator: checksum constants go to propatorjobs header.
...
So they can be used from both up- and download propagator jobs.
2015-05-19 17:09:40 +02:00
Klaas Freitag
3701fbcbfe
PropagateUpload: Add checksum calculation if required by config.
...
If the config file has an transmissionChecksum entry, a checksum
is added to the PUT requests in a header.
2015-05-19 17:09:39 +02:00
Klaas Freitag
67d38bc87b
Filesystem Utilities: Add Checksum calculation methods.
2015-05-19 17:09:39 +02:00
Klaas Freitag
ec83295b99
Branding: Append the appName short to the user agent string.
2015-05-19 17:09:39 +02:00
Klaas Freitag
e36252a845
Theme: (minor) remove some more mirall's
2015-05-19 17:09:39 +02:00
Klaas Freitag
d0d8de9f2f
MirallConfigFile: Add an option of transmission checksumming.
2015-05-19 17:09:39 +02:00
Daniel Molkentin
9693048f78
Find & use QtConcurrent
2015-05-19 17:09:39 +02:00
Klaas Freitag
101d2268ff
SyncFileItem class: Add member _checksum
2015-05-19 17:09:39 +02:00
Klaas Freitag
2fcad760b9
StopWatch: return the duration from the stop() command.
2015-05-19 17:09:39 +02:00
Markus Goetz
8a39748654
SyncJournalDB: Don't use NULL value
...
Olivier says we should try to not be the same as the possible value
for not existing entries.
2015-05-13 14:57:14 +02:00
Markus Goetz
3556ed416c
SyncJournalDB: Simplify code
2015-05-13 13:15:53 +02:00
Markus Goetz
e5e2ce2b22
SyncEngine: Force re-read of folder Etags for upgrades from 1.8.0 and 1.8.1
...
This is a better fix than the previous one for the local-files-missing bug
because it does not depend on the sync run to run fully through.
2015-05-13 12:54:49 +02:00
Markus Goetz
39d103adf7
OwnSql: Fix numRowsAffected()
2015-05-13 12:54:03 +02:00
Markus Goetz
08184d07cf
Merge branch '1.9'
2015-05-12 23:03:45 +02:00
Markus Goetz
ac0e08cc91
Merge branch '1.8' into 1.9
2015-05-12 23:02:58 +02:00
Olivier Goffart
76166c6252
SyncEngine: Fix comment
...
A comment should descibe the code, and not a patch.
2015-05-12 17:53:02 +02:00
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
Olivier Goffart
716b0c68da
Merge remote-tracking branch 'origin/master' into new-ui
2015-05-12 15:20:40 +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
be1b39067d
Merge branch 'master' into new-ui
2015-04-27 12:32:12 +02:00
Olivier Goffart
ddfb7f3b7a
Merge remote-tracking branch 'origin/1.8'
2015-04-27 12:20:11 +02:00
Christian Kamm
27159104a9
Folders: Store inside account config.
2015-04-24 13:42:35 +02:00
Christian Kamm
a13a974e2d
Account: Generate shorter account ids.
2015-04-24 09:54:42 +02:00
Markus Goetz
3a52db46ad
Discovery: Fix another empty-local-directory bug
2015-04-23 16:15:13 +02:00
Christian Kamm
11927d625d
Fix crash on exit by not making Account parent of AccountState.
2015-04-23 16:08:20 +02:00
Christian Kamm
abfdc574d4
Add a basic random Account::id()
2015-04-23 15:47:49 +02:00
Christian Kamm
28306e5dfb
Move AccountState::displayName to Account.
2015-04-23 15:47:49 +02:00
Christian Kamm
89bb58ac30
Ensure 'user' is available early enough for ui in httpcreds
2015-04-23 15:47:49 +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
2da3bfb96f
Merge branch 'master' into new-ui
2015-04-16 12:50:21 +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
Olivier Goffart
afdd01488f
AccountManager: Move out of libsync
...
The AccountManager does not belong in the libsync because it is not
part of the synchronisation algorithm, but is just an helper class
for the UI to maintain the account and read/save the config
2015-04-09 16:19:17 +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
Markus Goetz
8746914f3b
Propagator: Delete job on finish
2015-03-09 15:41:43 +01:00
Klaas Freitag
2fa6839ac7
Make win32 build work again.
2015-03-09 15:14:55 +01:00
Klaas Freitag
396f38598f
SetupW: Display proper error messages if password or user was wrong.
...
If the password or user was wrong during setup, the client showed a
ConnectionClosed error instead of a proper Username or password wrong
message. This was because in HTTPCredentials::slotAuthentication, the
reply is closed, and a property is set to indicate the auth problem.
This patch now checks at all occurences of networkErrors if it might
have been an authentication problem, and displays something useful.
There is a good chance that this is a sufficient fix for
owncloud/enterprise#556
2015-03-06 16:41:59 +01:00
Klaas Freitag
d2848b9c26
Theme: Return the correct version string from version()
2015-03-06 16:41:59 +01:00
Markus Goetz
b622981b23
SyncEngine: Show a debug msg only when relevant
2015-03-06 09:28:50 +01:00
Markus Goetz
668de9bf31
Propagate: Don't retry direct download on abort
2015-03-05 21:56:39 +01:00
Markus Goetz
3f712dce02
ETags: For Folder and RequestEtagJob, always use Concatenation
2015-03-05 17:49:12 +01:00
Markus Goetz
2eaeaf33fa
Discovery: Change abort code a bit
...
Now pressing pause in the UI will not show an error to the user.
2015-03-05 16:50:33 +01:00
Luca Lorenzetto
4e56b0d266
Use dynamic library loading for detecting the correct path for links
2015-03-04 17:28:43 +01:00
Klaas Freitag
398bca9fe4
Add OWNCLOUDSYNC_EXPORT prefix to make windows build.
2015-03-04 13:50:55 +01:00
Olivier Goffart
46d5d22f72
PropagateUpload: also read the OC-ErrorString header from the poll job
2015-03-04 12:01:41 +01:00
Olivier Goffart
97c221d860
PropagateUpload: add a few comments
2015-03-04 12:00:55 +01:00
Markus Goetz
131cf63d8d
Propagator: Don't use 0,0 progress signals.
...
They seemed to have messed up the calculation sometimes for
the last chunk.
2015-03-03 17:46:57 +01:00
Klaas Freitag
f913cd97ee
DiscoveryJob: Fix progress display.
...
This fixes #2909
2015-03-03 16:01:17 +01:00
Olivier Goffart
ccbeb86140
Fix build of the legacy propagator
2015-03-03 10:05:38 +01:00
Olivier Goffart
b43e0f5ebd
Do not ask for the password when the check server job times up
...
QNetworkReply::OperationCanceledError may be both because of anthentication
error (because the HTTPCredentials abort the reply) or because of a timeout
(the timer abort the reply). We should only ask for the password if the
reply was canceled because the password was wrong.
2015-03-03 09:21:24 +01:00
Markus Goetz
fe574dbbf9
Discovery: Free some memory before propagate ( #2902 )
2015-03-02 15:08:21 +01:00
Markus Goetz
7595c7e697
Discovery: Free some memory on VIO dir close ( #2902 )
2015-03-02 14:09:01 +01:00
Olivier Goffart
bd6769a3fd
LsColJob: one must now specify the properties
...
So the discovery phase don't ask for the quota, and the selective sync
don't ask for all the other properties
Issue #2906
2015-03-02 11:03:25 +01:00
Markus Goetz
80f3c7584b
libowncloudsync: Don't link to Qt SQL and Qt XML
...
For issue #2901 ..
2015-02-27 16:20:25 +01:00
Klaas Freitag
05624e3fc8
FileSystem: Remove QFileInfo based implementations.
...
QFileInfo has to be refreshed if the underlying file has been
modified in between. That is dangerous so ckamm and me decided
to eliminate the QFileInfo based implementations.
This was triggered by a bug that the client uploaded files that
it should not have.
2015-02-27 15:27:49 +01:00
Christian Kamm
b03209ccef
Inform user about ignored long files. #2882
2015-02-27 12:12:39 +01:00
Markus Goetz
ec03ebd69f
Token Auth: Allow empty token
...
Just username/password. The received token will automatically be stored
inside the QNetworkCookieJar.
2015-02-27 11:58:18 +01:00
Roeland Jago Douma
51c617801d
static member QFileInfo::exists is not available on 4.8
2015-02-27 08:43:33 +01:00
Olivier Goffart
d8b6e00fe7
Propagator: Let network propagator job understand a new header OC-ErrorString
...
This allows the server to send a readable error string in many cases
2015-02-26 15:53:09 +01:00
Christian Kamm
c8167b77c9
Remove mention of allprop #2865
2015-02-26 12:36:11 +01:00
Christian Kamm
c37792f58f
Propagator: Upload files with future timestamps. #2880
2015-02-26 11:00:06 +01:00
Christian Kamm
5c7fd24ea8
Handle 503 due to maintenance more gracefully. #2884
2015-02-25 12:02:10 +01:00
Christian Kamm
76ac628153
Discovery: Distinguish 503 Storage not available. #2884
2015-02-25 12:02:10 +01:00
Christian Kamm
f88398e776
lnk files: Fix exists() calls. #2792
2015-02-25 11:50:32 +01:00
Christian Kamm
08c33cd1dc
Discovery: Fix handling of 503 on a folder. #2884
2015-02-25 08:09:07 +01:00
Klaas Freitag
1929040bb7
Discovery: Preserve the error message.
2015-02-24 22:02:31 +01:00
Klaas Freitag
3af936c8a1
Some minor cleanups.
2015-02-24 22:02:29 +01:00
Jocelyn Turcotte
2ddaf5a06a
Add a NO_MSG_HANDLER cmake option
...
This allows QDebug to output to stdout or OutputDebugString
to ease development.
2015-02-19 16:57:16 +01:00
Olivier Goffart
5e1aa7d383
SyncEngine: Fix move would re-upload the file
...
Because SyncJournalDb::postSyncCleanup was deleting the entries in the database
2015-02-19 15:00:37 +01:00
Olivier Goffart
e1871eb325
libsync: Fix qWarning in SyncEngine::slotJobCompleted saying we cannot find the sync item when moving
...
We need to compare against the original file name, that's why it's there
2015-02-19 13:13:45 +01:00
Olivier Goffart
1998b602b9
SyncEngine: better merge of the renames node
...
The same file is on the two sync trees under different names in case of a rename
We must therefore use the rename target as the key in the _syncItemMap to ensure
that the trees are correctly merged.
Also use the same UTF-8 decoding for the target than for the actual file in order
to catch invalid utf-8 in the rename target
2015-02-18 12:41:06 +01:00
Olivier Goffart
193fca4a8b
SyncFileItem::operator<: must return false when two items are equal
...
Fixes #2852
2015-02-18 12:41:06 +01:00
Olivier Goffart
fb77cd5f7e
SyncEngine: Fix detection of the server reconfiguration
...
Some files might be kept (like the default files)
The files should be considered as NONE only if they are NONE on both trees
issue #2847
2015-02-17 16:44:13 +01:00
Daniel Molkentin
99d674c346
Default shiboolethwebview to 900x700, remember last size
...
Also add host to the title
Addresses #2285
2015-02-17 15:28:14 +01:00
Olivier Goffart
9351c7485f
Try another way to fix the build
2015-02-17 14:04:16 +01:00
Olivier Goffart
d43b82dc82
Fix compilation with clang
...
The compilation error was
account.h:140:113: error: expected ')'
const QList< QPair<QString, QString> > &queryItems = QList< QPair<QString, QString> >());
^
followed by more errors.
The problem is because the compiler has hard time disambiguiating the comma
int foo(const QPair<int, int> &p = QPair<int, int>());
^
It is indeed quite hard for the compiler to know if this comma is a separation
between complate arguments or the separation between arguments of the functions.
Use the C++11 construct instead which does not need commas
2015-02-17 11:09:45 +01:00
Olivier Goffart
ce195bd599
SyncEngine: add an getter to the journal
2015-02-17 11:08:16 +01:00
Olivier Goffart
c0c8a22fa3
SyncEngine: pass a non-const reference to the SyncFileItemVector in aboutToPropagate
...
That way, users of the library can change the contents of the sync item vector.
2015-02-17 11:08:16 +01:00
Olivier Goffart
151228b2a6
Fix build when compiling libsync without QtGui
...
Utility must stay QtGui-free, move the hidpiFileName to the theme which
is the only part in libsync which uses it, and already has #ifdefs
2015-02-16 10:24:42 +01:00
Volkan Gezer
bd4f68233f
some typos, grammar and sentence fixes
2015-02-14 23:47:07 +01:00
Olivier Goffart
d6bdbf9f34
Logger: use qFormatLogMessage with Qt 5.4 so it respects the Qt logging preferences
2015-02-14 14:23:01 +01:00
Christian Kamm
40dbc78407
concatUrl: Remove manual parsing, add test. #2817
2015-02-13 14:53:55 +01:00
Daniel Molkentin
957c9f060d
GeneralSettings: Add OpenSSL version number to about text
2015-02-12 23:23:47 +01:00
Olivier Goffart
a7c97388a9
Fix Qt4 build for another error
2015-02-12 20:16:02 +01:00
Olivier Goffart
86c480ee09
Fix Qt4 build
2015-02-12 20:10:31 +01:00
Olivier Goffart
0184a00151
PropagateDirectory: make the code a bit more readable
...
Do not call slotSubJobFinished when there is are no sub jobs because
no sub jobs were finished. Instead just call a finalize method
2015-02-12 20:00:04 +01:00
Olivier Goffart
b9161aa06c
libsync: Fix a case in which canceling the sync would result in some folder never being sync'ed
...
The problem occurs because of the sorting of items when we have things like
bigfolder
bigfolder/bigsubfolder
bigfolder-2
Then, because dashes come before slash in ascii, the bigfolder-2 would come before its content
and the propagator would thinkg bigfolder is empty and save the etag before it is processed
Should fix issue #2832
2015-02-12 20:00:04 +01:00
Daniel Molkentin
00e42d1177
More HIDPI support
...
Except for the non-native activity tab
icon in settings, this should fix #11
2015-02-12 19:44:40 +01:00
Christian Kamm
a2aef04f21
ConValidator: Avoid a double auth check during startup. #2801
2015-02-12 15:25:44 +01:00
Olivier Goffart
063271e978
propagateupload: Disable parallel chunk upload for owncloud < 8
...
Issue #2743
2015-02-12 14:50:42 +01:00
Olivier Goffart
438c4fe72e
Account: put the server version in the account
2015-02-12 14:50:42 +01:00
Daniel Molkentin
3439ea395b
Remove one more mention of certDate
2015-02-12 12:43:41 +01:00
Daniel Molkentin
ba3bab8f49
Remove certificateDate property and other superfluous code
2015-02-12 12:37:42 +01:00
Christian Kamm
9ba88f6baf
Windows: Sync .lnk files correctly. #2792
2015-02-12 11:27:58 +01:00
Olivier Goffart
4f202e5f4c
Fix TokenCredentials compilation
2015-02-11 18:10:01 +01:00
Christian Kamm
5cdf448693
SyncJournal: Use DELETE journal mode on FAT filesystems. #2693
2015-02-11 14:03:55 +01:00
Christian Kamm
89c69250ef
Fix crash in discovery thread dtor.
...
Occasionally on Windows ~DiscoveryMainThread() triggered a crash.
Probably because the QMutableLinkedListIterator was destroyed after
it's underlying data had been removed (from the map).
Cleaning up the map and lists was redundant anyway, so the
destructor is changed to only explicitly destroy the vio_file_stat
objects.
2015-02-11 14:00:23 +01:00
Christian Kamm
f8b24ac34d
Fix reconnection after long network outage #2321
...
The problem was that StatusNotFound can indicate either a transient
network problem or a permanent server configuration problem.
2015-02-11 09:24:56 +01:00
Klaas Freitag
d45d3892cb
Account: Fix path assembling with QUrl, add query items separately.
...
Otherwise Qt does encode the delimiter between path and query items.
This fixes bug #2804
2015-02-10 17:13:27 +01:00