Commit graph

1607 commits

Author SHA1 Message Date
Olivier Goffart
9a6275a5e3 use QNAM for the PUT
Not yet supported:
 - chunking
 - if the file changes while uploading
 - aborting
 - owncloudcmd  (because of the dependency to the account and the credidentials)
2014-02-06 11:50:16 +01:00
Olivier Goffart
2d9c0b6c31 Move CSyncThread in the main thread, and just do the neon jobs in a thread
It is important because then we can do assynchronious job that needs
QNAM in the main thread
2014-02-05 20:18:03 +01:00
Olivier Goffart
49562ca3b6 Remove unused members 2014-02-05 16:40:56 +01:00
Daniel Molkentin
33ab854922 SslErrorDialog: Ensure to run into a timeout while showing the dialog 2014-02-05 14:18:31 +01:00
Olivier Goffart
4ade023b96 Find another way to ignore the csync journal from the file watcher 2014-02-04 16:46:14 +01:00
Olivier Goffart
ec266054be Don't use QFileInfo to get the last modified time.
We can use the _modtime, since normaly we just set the the modtime
of the file to this time.

The problem is that Qt does follow symlinks (FILE_FLAG_OPEN_REPARSE_POINT)
And therefore was causing problem with symbolic links.

 Fixes #1307
2014-02-04 16:17:58 +01:00
Olivier Goffart
324214d072 fix the 'Sign In' menu entry 2014-02-04 15:06:17 +01:00
Klaas Freitag
ae5c9a29f6 Detect renames and removes in read only Shared directory, restore files.
This fixes bug #1386
2014-02-04 15:03:06 +01:00
Klaas Freitag
72a6b00919 Add some usage hints. 2014-02-04 15:03:06 +01:00
Olivier Goffart
e06cfe06fe FolderWatcher: ignore the csync journal 2014-02-04 14:57:25 +01:00
Olivier Goffart
d2a41342e1 Better error message when the write permission are missing in the local directory
Fixes #1394
2014-02-04 11:10:22 +01:00
Markus Goetz
6f960d406e Qt5: Use same path for config as Qt4 2014-02-04 10:02:28 +01:00
Markus Goetz
fdc8050e3d Folder Wizard: Re-evaluate after local folder changed 2014-02-03 18:19:25 +01:00
Markus Goetz
62f5b0ebac Folder Wizard: Make it more clear that we mean a remote folder 2014-02-03 17:27:54 +01:00
Klaas Freitag
971caca5e8 Implement change of the network throttling during a running sync run. 2014-02-02 12:51:19 +01:00
Daniel Molkentin
b3683976ca Updater: Fix corner cases related to failed auto-updates
- Don't re-download updates whom's auto-install has clearly failed before
- Don't signal newly available auto-upgrade if it has failed once
- Remove downloaded update after (un)successful auto-update
- Remove as many temporary keys after an (un)successful auto-update
2014-01-31 12:42:00 +01:00
Daniel Molkentin
4c6e0b5c07 SSL Button fixes
- Use OU as display name if CN is empty (often true for CA/interm. certs)
- Handle trust anchors in intermediate chain gracefully
2014-01-31 10:35:35 +01:00
Daniel Molkentin
dfa1dfaa7d AutoRaise SSLButton 2014-01-30 09:53:00 +01:00
Daniel Molkentin
74db151427 SSLButton: remove superflous extra argument 2014-01-30 09:53:00 +01:00
Olivier Goffart
6540f54512 Don't use QDateTime::toTime_t or QDateTime::fromTime_t
They only take an uint, and time_t is 64bit.
This breaks when date are before 1970

Fixes #1380
2014-01-29 11:47:13 +01:00
Daniel Molkentin
1aa050bea9 Add Tests, make Updater classes into a static lib 2014-01-29 10:43:21 +01:00
Daniel Molkentin
ca5f96e1bb Updater: More refactoring towards testability 2014-01-29 10:43:21 +01:00
Daniel Molkentin
d361bda922 Fix wording 2014-01-28 16:23:39 +01:00
Daniel Molkentin
62f4e813ee Settings: Allow opening links in updater label 2014-01-28 16:23:24 +01:00
Daniel Molkentin
505e0e9632 Fix build on Win32
regression introduced by ec9efd78
2014-01-28 15:49:19 +01:00
Olivier Goffart
50aa31d192 winEventFilter does not exist on Qt5 2014-01-28 15:30:58 +01:00
Daniel Molkentin
c8006f1163 Compile fix 2014-01-28 13:42:09 +01:00
Daniel Molkentin
637565cca1 Updater: Don't overwrite unannouned (newer) versions 2014-01-28 13:36:16 +01:00
Daniel Molkentin
a22884d164 Show message if the updater times out 2014-01-28 13:36:16 +01:00
Daniel Molkentin
58fd57fdcd Make update URL a compile time option 2014-01-28 13:36:16 +01:00
Daniel Molkentin
2bee51c101 Updater: Logic fix 2014-01-28 13:36:16 +01:00
Olivier Goffart
803cb5d015 fix signal slot connection 2014-01-28 12:45:41 +01:00
Olivier Goffart
e31000d759 Handle the fact that the user might cancel the password dialog
Add a new state of the account in which the credidentials are invalid,
but we are still trying to get the user enter his password.

Make sure that fetched() is ALWAYS emitted after we call fetch on the
credidentials, so we can know that the user pressed cancel. In that
case, go in the SignedOut state.

Fixes #1353
2014-01-28 11:49:09 +01:00
Daniel Molkentin
f408593d27 more build fixes 2014-01-28 11:01:05 +01:00
Daniel Molkentin
6d21058ca1 build fixes 2014-01-28 10:34:56 +01:00
Daniel Molkentin
1da94e5e2b Updater: More refactoring
- Renamed GenericUpdater -> OCUpdater
- Make more API Private
- Split up in classes to reduce complexity:
  - PassiveUpdateNotifier subclass for Linux
  - NSISUpdater for Windows
2014-01-28 10:01:23 +01:00
Daniel Molkentin
72ae44b8b1 Updater: relaunch Client after update 2014-01-27 13:04:27 +01:00
Olivier Goffart
e6be6fc695 Remove dead code 2014-01-27 12:44:46 +01:00
Olivier Goffart
18966bf061 Add missing include 2014-01-27 12:36:52 +01:00
Olivier Goffart
bf95509dbe Do not include "private" header from "public" header 2014-01-27 12:31:54 +01:00
Olivier Goffart
50b9a7b191 remove unused include from header file 2014-01-27 11:58:50 +01:00
Olivier Goffart
08c03d19b9 Only one quote should be enough
Should fix #1295
2014-01-24 20:28:17 +01:00
Klaas Freitag
5841cf4020 Add and remove watches for folders independent from sync dir.
Before it was just in case of download.
2014-01-23 13:23:27 +01:00
Klaas Freitag
e9e132c06c Make use of the new linux folder watcher. 2014-01-23 13:23:27 +01:00
Klaas Freitag
e3723fcfc2 Add a new folder watcher implementation for Linux. 2014-01-23 13:23:27 +01:00
Daniel Molkentin
8485a7fd30 Fix typo 2014-01-22 16:09:22 +01:00
Daniel Molkentin
129aef5beb Revert "Formatting hashes with : seems to be out of fashion"
This reverts commit c52e3a0732.
2014-01-22 00:00:34 +01:00
Daniel Molkentin
54c0c4057b Improve SSL detail display 2014-01-21 15:54:06 +01:00
Daniel Molkentin
c52e3a0732 Formatting hashes with : seems to be out of fashion 2014-01-21 15:25:51 +01:00
Klaas Freitag
699f6a62f8 Do not set sync-state to Prepare in setSyncEnabled().
This method is also called if the sync was disabled due to
network problems and such, ie. from the ETag change check.
In that case, we do not want to go to the Prepare state as
we not neccessarily want to have the folder synced now.

This fixes the problem that the folders were resynced way
to often which we had in master for a couple of days now.
2014-01-21 15:25:05 +01:00
Olivier Goffart
61f3b839ab Fix compilation in Qt5
Some Qt SSL function used to return QString now return a QStringList.

By having  QStringList(...).join(':')   the code will compile both
if the ... is a QString or a QStringList. So the code will still
compile in Qt4.
2014-01-21 15:09:12 +01:00
Olivier Goffart
29590fa00b Revert "Commented opening of files from the activity view as it does not work."
This reverts commit c50b0a995b.

This was only broken on windows and probabyl fixed by commit 23f52bcd
2014-01-21 13:01:05 +01:00
Olivier Goffart
0c33fc6e8a Do not block while launching the explorer on linux
Fixes #1338
2014-01-21 13:01:05 +01:00
Daniel Molkentin
c4c36d641b Remove garbage include 2014-01-21 12:34:51 +01:00
Klaas Freitag
4d8e65cfd0 Hide useless logging that indicates an error. 2014-01-21 12:10:49 +01:00
Daniel Molkentin
2370060ac5 Implement Certificate Information Widget
Currently used in status window. Before, there was no way to know
about the current certificate situation.

Fixes #44
2014-01-21 09:21:33 +01:00
Daniel Molkentin
562513d5a5 Propagator: Don't pass arbitrary strings as formating string
Not a security issue since this code was never in any release.
2014-01-20 17:22:29 +01:00
Daniel Molkentin
a2e9353296 Fix copy & paste problem in Ignore List Editor
Fixes #1355
2014-01-20 17:08:30 +01:00
Olivier Goffart
7f76fcff5e Do not account the size of deleted or renamed file in the progress
Fixes #1360
2014-01-20 17:00:28 +01:00
Olivier Goffart
0afbb264e0 cleanup mutex usage in CSyncThread
The only method which is used from another thread is abort().
So the only thing that needs protection is that function, and the
function which may race with.  Which are csync_request_abort which
should not race with csync_resume
2014-01-20 17:00:28 +01:00
Klaas Freitag
7bb7b1d73b Remove wipeAllJournals after rebase mistake. 2014-01-20 16:19:30 +01:00
Klaas Freitag
0eebc0e5be Add folder to schedule queue in setupFolders method.
This fixes bug #1352
2014-01-20 16:19:30 +01:00
Klaas Freitag
a6b0ccfa12 Remove explicit logging. 2014-01-20 16:19:30 +01:00
Klaas Freitag
ce077f97c6 Checks if the folder from map is still defined.
I saw a crash were a folder which was deleted was dereferenced later
in the Quota check slot. There the folder pointer returned from folder
map was zero.
2014-01-20 16:19:29 +01:00
Klaas Freitag
c705a6360d Rather removeFolder than addFolder to watcher (typo fix). 2014-01-20 16:19:29 +01:00
Olivier Goffart
be874e36da remove unused variable and functions 2014-01-20 15:10:53 +01:00
Olivier Goffart
3a9c485515 Fix crashwhile removing a folder
in a QMap, Accessing an entry that does not exists create the null entry
We should not use operator[] if we are not sure the folder indeed exists
2014-01-20 14:59:35 +01:00
Olivier Goffart
4df1d7d893 Remove unused variables 2014-01-20 14:59:23 +01:00
Olivier Goffart
bbf3a64c02 Fix crash.
toUtf8() returns a temporary QByteArray wuich is only valid until the
end of the statement (the next ';').  QByteArray::data() returns a
pointer to the QByteArray's data which is only valid if the QByteArray
is valid.
Keeping the char* is therefore wrong.
2014-01-20 14:24:20 +01:00
Olivier Goffart
316aade340 Merge branch 'csync_merge'
Conflicts:
	src/CMakeLists.txt
2014-01-20 13:27:33 +01:00
Olivier Goffart
6257ed6605 Make sure that the jobs have the Q_OBJECT macro.
so tr()  works there
2014-01-16 14:06:17 +01:00
Klaas Freitag
0455d96462 Fix untranslated error messages. 2014-01-16 13:04:57 +01:00
Klaas Freitag
98689d48f1 Check if configuration actually exists.
If not, set System Proxy as default.
2014-01-16 12:52:11 +01:00
Klaas Freitag
ec9efd7894 Make use of the new Proxy handling class. 2014-01-16 12:52:11 +01:00
Klaas Freitag
671100ce5c Add a class ClientProxy that handles proxy setting for Qt and csync. 2014-01-16 12:52:11 +01:00
Daniel Molkentin
4caa038de6 More sparkle fixes 2014-01-15 16:01:35 +01:00
Daniel Molkentin
f5dc2b3127 Compile on OS X 2014-01-15 12:45:43 +01:00
Olivier Goffart
c7227297af Make it compile with the merge of csync mirall 2014-01-15 12:20:03 +01:00
Daniel Molkentin
dc9f145a24 New Updater for Windows, passive notification on Linux, Sparkle on Mac 2014-01-15 11:09:31 +01:00
Klaas Freitag
55da857e59 A bit of refactoring, add useful names and set the alias properly.
The alias field is now set from the last component of the picked
local dir. Also some tooltips were added.
2014-01-14 17:40:42 +01:00
Klaas Freitag
aba1252e60 Remove inotify from cmake files. 2014-01-14 15:06:06 +01:00
Klaas Freitag
561f32cede License header cleanups. 2014-01-13 16:16:19 +01:00
Klaas Freitag
e0d8d93b50 Removed obsolete inotify class of folderwatcher. 2014-01-13 16:07:52 +01:00
Klaas Freitag
3d8505d7f4 Adopt mac folderwatcher to the new folderwatcher. 2014-01-13 16:00:41 +01:00
Klaas Freitag
18171862ac Unify folderwatcher private constructor. 2014-01-13 15:29:05 +01:00
Klaas Freitag
0e5858b1aa Add a pathIsIgnored method to the folderwatcher. 2014-01-13 15:29:05 +01:00
Klaas Freitag
5482ad1fd3 Remove event buffering from watcher, other refactoring. 2014-01-13 15:28:56 +01:00
Klaas Freitag
f9080c59ab Remove FolderWatcher from Folder and move to FolderMan. 2014-01-13 11:30:27 +01:00
Klaas Freitag
a12288ff21 Use folderwatcher based on Qt for Linux. 2014-01-13 11:30:27 +01:00
Klaas Freitag
d5b8d24f91 Add NoSymLink tag to the filter specification.
Should finally fix bug #1331
2014-01-10 09:09:22 +01:00
Klaas Freitag
9da06f10f6 Removed unused event interval getter/setter. 2014-01-10 09:09:22 +01:00
Olivier Goffart
ebee52ea8a Merge branch '1.5' 2014-01-09 12:32:08 +01:00
Klaas Freitag
e5804b5d12 Use a more Qt'ish folder recursing method, remove unused class.
Added unit test.
2014-01-08 14:36:42 +01:00
Klaas Freitag
e5d43c2b9c Add a utility function to write a random file. 2014-01-08 14:36:42 +01:00
Klaas Freitag
a522cebf0c Add missing switch case. 2014-01-08 14:36:42 +01:00
Olivier Goffart
1bc4089d95 Fix hiding temporary files on windows
tmpFileName is a relative path, and we need an absolute path to
pass to the function that hides the files
2014-01-08 13:33:16 +01:00
Olivier Goffart
b7b06a8795 Preserve the permission of the file we download
Related to issue #820
2014-01-08 13:17:35 +01:00
Olivier Goffart
4006e490f3 Do not write the removed folder on the DB
Should fix #1329
2014-01-08 12:51:42 +01:00
Klaas Freitag
273463daf4 Fix progress for the case that the source file changes during upload.
If the source file changes, the overall transmission size is not longer
correct. Fixed that by pushing the change over the previously calculated
size to csyncthread. Also set the mtime and size in the item object in
propagator to avoid doublicate uploading.
2014-01-07 15:42:21 +01:00
Klaas Freitag
7da84dbe44 Check on timer member is zero. 2014-01-07 10:30:41 +01:00