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
Olivier Goffart
f595fc2f9c
Fix opening external links for some labels
...
Issue #3135
2015-05-15 18:44:19 +02:00
Markus Goetz
06c889630c
AccountState: Run only a single validator, allow error message overriding #3236 #3153
2015-05-15 12:27:35 +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
Olivier Goffart
dd5a49bc78
Application: Disable to workaround of QLockFile bug for Qt versions that are fixed
2015-05-12 17:26:32 +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
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
Klaas Freitag
41614ec851
Application: ifdef lock file issue as it only happens on Qt>5.1
...
However, the fix breaks Qt4 compile, so it needs to be ifdefed.
Not viel hilft viel.
2015-05-11 13:35:04 +02:00
Markus Goetz
22c35c4d15
Propagator: Limit length of temporary file name #2789
2015-05-08 16:42:03 +02:00
Christian Kamm
9507bb4be6
ShareDialog: Password ui fixes. #3189
...
* Change the textedit-empty text to be just "Password"
* Hide the 'Copy link' button when the share isn't created yet
* Show the checked and disabled 'Password required' checkbox
when a password is required.
2015-05-08 14:53:38 +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
e1c370a9a2
Fix startup hang by removing QSettings lock file. #3175
...
In some situations the .lock file would stay around and
cause subsequent starts of the client to get stuck before
showing the ui.
2015-05-08 14:02:44 +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
Christian Kamm
909368025f
ProtocolWidget: Fix rename message. #3210
...
For remote renames that are replicated locally the _file member is
overwritten by the target file name when the new entry is added to
the metadata table. Using _originalFile here guarantees that
the affected local file is mentioned.
2015-05-08 11:33:34 +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
441eca86c4
ShareDialog: Improve error reporting for share API fails.
...
This would have made debugging #3204 and #3136 easier.
2015-05-07 14:16:13 +02:00
Markus Goetz
f07d3d069e
Updater on OS X: Only allow if in /Applications #2931
2015-05-07 13:04:25 +02:00
Markus Goetz
e300e3c744
Wizard: Fix lock icon #1447
2015-05-07 13:04:25 +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
Daniel Molkentin
77a28a81eb
Bump to 1.9
2015-05-06 17:01:05 +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
Jocelyn Turcotte
58867baf33
Merge pull request #3183 from christian-burger/fix-for-windows-explorer-extension-when-syncing-whole-drive
...
Windows Explorer: fix issues when syncing whole drive.
2015-05-06 14:54:19 +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
Christian Kamm
9e3c3353bd
IgnoreListEditor: Remove invalid connect. #3201
...
This has been around ever since the ignore editor was
added and the slot never existed.
2015-05-06 09:34:45 +02:00
Christian Burger
79f7ea0965
refactoring as requested in pull request
2015-05-05 16:34:01 +01: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
Daniel Molkentin
bfba6f752c
Remove dead code
2015-05-05 10:23:59 +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
Christian Burger
018cc54a94
Windows Explorer: fix issues when syncing whole drive.
...
When the local sync target is just a drive letter (e.g. "X:\"), neither
the display of the sync status via file icon overlay, nor the creation of a
share link works. In the latter case no pop-up comes up and no server
request is done.
QDir::cleanPath() usually removes trailing slashes, but not if the path to
be cleaned is just "X:\". In that case the trailing slash is kept. This
commit accounts for that exception.
2015-05-04 10:29:25 +01: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
Christian Kamm
78e82eb920
AccountWizard: Fix auth error handling. #3155
...
The problem was that on network error the networkError() and
finishedWithError() signals both fired. To fix it, I collapse all
error handing into a slot triggered by finishedWithError().
I tested the redirection case and the invalid credentials case.
2015-04-24 16:03:28 +02:00
Markus Goetz
3a52db46ad
Discovery: Fix another empty-local-directory bug
2015-04-23 16:15:13 +02:00
Markus Goetz
137bce6dd0
Folder: Clear _syncResult better
...
I had a situation here where we were showing stale desktop notifications when a remote folder
errored out and then sync finished with _syncResult data from previous sync.
2015-04-23 13:30:30 +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
68bf22f469
Revert "AccountSettings: Update progress only twice per second. #3014 "
...
This reverts commit 0f33e266ce
.
The change was not meant to be merged, see discussion in #3014 .
2015-04-22 11:46:00 +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
Christian Kamm
0f33e266ce
AccountSettings: Update progress only twice per second. #3014
2015-04-22 10:45:41 +02:00
Markus Goetz
6c5ca055c4
ShareDialog: Unused/invalid forward declaration
2015-04-21 10:33:38 +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
Jocelyn Turcotte
155c965866
Prevent another crash in ~SocketApi #3118
...
Since the QLocalServer parent of the QLocalSockets gets destroyed
after the _listeners QList, onLostConnection might try to update
an already destroyed list.
Fix the issue by simply making sure that _localServer is destroyed
first.
2015-04-17 12:42: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
5dffd11755
Merge branch '1.8'
2015-04-16 12:49:31 +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
Daniel Molkentin
ed80a712ab
Sort folder sizes SelectiveSyncTreeView numerically
...
Fixes #3112
2015-04-14 20:00:42 +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
7b99877c68
owncloudcmd: Filter out empty lines in selectivesync
2015-04-12 12:59:25 +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