1
0
mirror of https://github.com/chylex/Nextcloud-Desktop.git synced 2024-10-21 19:42:45 +02:00
Commit Graph

3218 Commits

Author SHA1 Message Date
Olivier Goffart
7ae6712d56 Add a few Q_DECL_OVERRIDE 2014-11-08 11:21:48 +01:00
Olivier Goffart
98a283b4ec Fix clang warnings 2014-11-08 11:21:48 +01:00
Olivier Goffart
d524f6b395 Fix compilation errors after merge 2014-11-08 11:11:05 +01:00
Olivier Goffart
6b716683e2 Merge the long PUT Poll URL feature with the new sql backend 2014-11-08 11:09:50 +01:00
Olivier Goffart
ba2c33af0b Fix the il branch merge: Move the bandwidthmanager to libsync 2014-11-08 10:52:14 +01:00
Olivier Goffart
de11f602d5 Merge remote-tracking branch 'origin/il'
Conflicts:
	csync/src/csync_private.h
	src/CMakeLists.txt
	src/gui/folder.cpp
	src/libsync/owncloudpropagator.cpp
	src/libsync/owncloudpropagator.h
	src/libsync/propagator_qnam.cpp
	src/libsync/propagator_qnam.h
	src/libsync/syncengine.cpp
	src/libsync/syncengine.h
	src/mirall/syncjournaldb.cpp
2014-11-08 10:48:36 +01:00
Volkan Gezer
260c8e0227 fix typo 2014-11-07 17:51:15 +01:00
Daniel Molkentin
7c034b427e Handle invalid handle & fix an issue found during code review 2014-11-07 14:52:31 +01:00
Daniel Molkentin
f25d175b5d Merge remote-tracking branch 'origin/1.7' 2014-11-06 19:54:20 +01:00
Olivier Goffart
b70ecc3dd3 Never overwrite the mtime from the local file system in the db when updating the metadata
Attempt to fix #2431
2014-11-06 15:13:10 +01:00
Daniel Molkentin
89670e5ce4 Folderwatcher_win: handle conversion error 2014-11-06 12:54:33 +01:00
Christian Kamm
174e1acbc7 Folder::wipe(): Remove partial downloads and -shm,-wal db files. 2014-11-06 12:49:02 +01:00
Christian Kamm
1f09a24a72 Resync button: Remove partial downloads too. #2445 2014-11-06 12:17:04 +01:00
Christian Kamm
eed91ddf46 Legacy propagator: Don't use mtime retrieved via _fstat64.
May be the cause of #2431
2014-11-06 12:16:55 +01:00
Daniel Molkentin
96a7118d05 WiP: switch to ReadDirectoryChangesW 2014-11-06 12:04:33 +01:00
Klaas Freitag
6eec896282 FolderWatcher: Check for hidden outside of loop 2014-11-06 09:23:30 +01:00
Christian Kamm
a49a6bfd88 Logging: Report setModTime failures.
Ths may be helpful for #2252 and maybe even #2431.
2014-11-05 13:20:19 +01:00
Christian Kamm
b87931c0a9 Logging: Print etags, not just result of comparison. 2014-11-05 13:08:53 +01:00
Christian Kamm
9b640d586b Wizard: Fix local folder warning in advanced setup wizard. #2362
The _oldLocalFolder should always be the previously configured
folder, not the one that was most recently chosen on the wizard
page.
2014-11-05 12:10:41 +01:00
Christian Kamm
7440ffc0e6 Download: Fix data loss when rename fails. #2428 2014-11-05 11:00:46 +01:00
Markus Goetz
cf6219bb6f NetworkJobs: Improve timeout handling and increase timeout by 5 sec 2014-10-30 11:54:58 +01:00
Christian Kamm
45eeb5065f Download: Avoid overwriting file with case conflict. #1914 2014-10-30 09:06:53 +01:00
Klaas Freitag
ef16c409ef Merge pull request #2393 from svkurowski/issue-2215
Switch monochrome systray icon color depending on systray brightness
2014-10-29 14:54:33 +01:00
Olivier Goffart
1eccfb798f Add missing license headers
Part of #2068
2014-10-29 13:30:46 +01:00
Klaas Freitag
b9b9f3c136 Propagator: Schedule a resync immediately if file is modified during upload 2014-10-29 13:10:56 +01:00
Olivier Goffart
7810da51a8 Propagator: report error when deleting directories
Will help to understand why a directory cannot be removed

Will help for #2348
2014-10-29 12:23:48 +01:00
Christian Kamm
4e20a02fe5 SyncJournalDB: Add filesize column to metadata.
* Alter table to include column.
* Make get/set in SyncJournalDB store and load it.
* Make csync recover the stat_t's size member from it.
2014-10-29 09:53:36 +01:00
Markus Goetz
7bad731ad2 CheckServerJob: Guard again null reply
Lucia had reported a crash in this function
2014-10-29 09:38:20 +01:00
Daniel Molkentin
dc1e73dcb7 Merge remote-tracking branch 'origin/1.7'
Conflicts:
	src/libsync/syncjournaldb.cpp
	test/CMakeLists.txt
2014-10-28 23:27:58 -04:00
Markus Goetz
782463589e ownSql: Also mention filename 2014-10-28 21:50:09 +01:00
Markus Goetz
ff570c4a6b ownSql: Don't set busy timeout on bad object 2014-10-28 21:46:30 +01:00
Klaas Freitag
105ff694f2 SyncEngine: Handle 503 condition as soft error to properly handle etags.
Otherwise the ETags could be removed from the db and cause file
deletes.
2014-10-28 17:13:21 +01:00
Olivier Goffart
5723abe6eb Merge remote-tracking branch 'origin/fix_service_unavailable' into 1.7 2014-10-27 20:49:46 +01:00
Klaas Freitag
0692fea9d8 discovery: handle 503 reply code from server for directories
503 for directories means that the dir is a mounted directory from an
external mount which currently is not available. The directory is
ignored and not traversed into during discovery phase.
2014-10-27 19:21:12 +01:00
Markus Goetz
b0882a5cd2 Fix compile 2014-10-27 17:18:49 +01:00
Markus Goetz
4c1a0005e6 Make two more asserts usable in nondebug 2014-10-27 16:01:18 +01:00
Markus Goetz
05ceed926c SyncEngine: Log for an assert, return -1 for nondebug compile 2014-10-27 15:52:17 +01:00
Olivier Goffart
ce300d88ee Wizard: show the choice to start a clean sync if the directory exist even on new accounts
Task #2406
2014-10-27 13:05:17 +01:00
Brandon Coleman
05c0249672 correct spelling on user is empty error. 2014-10-27 07:59:31 -04:00
Brandon Coleman
2498c13078 options are required at the beginning of owncloudcmd.
Conflicts:
	src/owncloudcmd/owncloudcmd.cpp
2014-10-27 07:59:31 -04:00
Olivier Goffart
cddad94e45 Selective Sync: change the label text
to specify that the files will be removed from the local folder

Task #2404
2014-10-27 11:33:25 +01:00
Brandon Coleman
ece1100d65 options are required at the beginning of owncloudcmd. 2014-10-26 15:33:50 -05:00
Brandon Coleman
e5b03634ae correct spelling on user is empty error. 2014-10-25 11:01:58 -05:00
Sascha Vincent Kurowski
59f18583d1 Switch monochrome systray icon color depending on systray brightness.
https://github.com/owncloud/mirall/issues/2215

As of version 10.10 Yosemite, Mac OS X offers the user the option to use
a dark version of the dock and menu bar. The systray icon was black even
on the dark menu bar, thus rendering it nearly impossible to spot.
2014-10-24 21:52:41 +02:00
Christian Kamm
1c4072e231 Selective sync ui: Fix #2390 2014-10-24 16:11:29 +02:00
Klaas Freitag
86e13ea06f FolderMan: Use folderForPath method to get the folder object for a path 2014-10-24 15:07:33 +02:00
Klaas Freitag
c12d3870cd Merging work branch for a bug fix for bug #2379.
It closes all db connections if the new local path is a already
synced folder path.
2014-10-24 14:43:48 +02:00
Christian Kamm
fce76a13cb Sync scheduling: Only do a follow-up sync 3 times. #2355
After trying again immediately for 3 times, no more fast follow-ups
are run until a sync finishes without needing a fast follow-up.
2014-10-24 13:31:48 +02:00
Christian Kamm
82b14370fc Sync scheduling: Only retry up to twice after fail. #2386
Previously when a sync failed, we'd retry very soon (30s) no matter how
often a sync had failed before. After this change we'll retry twice and
then back off to the regular 5min interval.
2014-10-24 13:31:48 +02:00
Klaas Freitag
a9d8e9dcd8 Setupwizard: Close the database in case of moving the folder. 2014-10-24 13:05:29 +02:00
Klaas Freitag
542e989046 Setup Dialog: Terminate sync if the new folder is a an actual folder. 2014-10-24 11:59:56 +02:00
Klaas Freitag
f5c199740d Followup: To unregister a path in socket api use the alias of folder. 2014-10-24 11:36:01 +02:00
Klaas Freitag
f37b81c8b7 Unregister path in socketapi before removing it. 2014-10-24 11:12:06 +02:00
Christian Kamm
c0ea69ee24 SqlQuery: Reset after each successful exec().
In e5269a4151 I moved the reset calls to
before the first bindValue() because we didn't consistently reset()
after exec().

However, some queries may keep a lock on the database so it is necessary
to reset() as soon as the data is read. This commit reintroduces these
reset() calls.
2014-10-24 10:11:00 +02:00
Christian Kamm
5640cbf653 SqlDatabase: Make it non-copyable. 2014-10-24 09:56:30 +02:00
Daniel Molkentin
3c7ff97ed4 SocketAPI: Don't use a theme dependent name for now
We will revert this once #2388 is implemented
2014-10-23 17:46:17 -04:00
Christian Kamm
e5269a4151 Add SyncJournalDB autotests.
There also was a bug in syncjournaldb: in some error conditions the
sql query wasn't reset properly. We now always reset a query before
calling bindValue.
2014-10-23 15:15:47 +02:00
Markus Goetz
0d9ae241c9 OwnCloudFinder: Rename to SyncStateFinder
Project file names stay the same, only the output file(s) changed
2014-10-23 12:19:19 +02:00
Klaas Freitag
e726e7aad8 util: Use canonicalFilePath to clean the path opened by explorer.
This fixes bug #2299
2014-10-23 10:41:07 +02:00
Olivier Goffart
de56b753d1 protocolwidget: fix string that need to use plural translation 2014-10-22 18:26:40 +02:00
Olivier Goffart
e46ab72718 SocketAPI: Show error when we are not allowed
Issue #1931
2014-10-22 17:25:38 +02:00
Olivier Goffart
9330d2e1e8 SocketAPI: always clean the path and use the normal slash 2014-10-22 15:33:35 +02:00
Olivier Goffart
020e19f770 SocketAPI: Fix all files are new
(Introduced because of bad resolution of merge conflict
in my last commit)
2014-10-22 15:32:09 +02:00
Olivier Goffart
22dd275b15 SocketAPI: Fix the shared symbol, including for owncloud6 Shared dir
The shared symbol would not appear if the status came for estimateState

Also added the shared symbol for the Shared/ directories (owncloud 6 compat)
2014-10-22 15:10:21 +02:00
Markus Goetz
6342e76e19 Wizard: Change misleading text 2014-10-22 15:06:33 +02:00
Markus Goetz
55dd149a03 SocketAPI: Less verbose 2014-10-22 14:43:23 +02:00
Markus Goetz
39a0f28753 Move qtmacgoodies module forward 2014-10-22 14:43:03 +02:00
Olivier Goffart
7740150576 Selective Sync widget: add a "Loading..." label
Task #2088
2014-10-22 13:48:05 +02:00
Olivier Goffart
4f367faf4d SocketAPI: Show an error for files inside the selective sync folders
Task #2283
2014-10-22 13:31:20 +02:00
Olivier Goffart
3840186dd8 Utility: fix function signature 2014-10-22 13:31:20 +02:00
Daniel Molkentin
ed51a45187 Add title to selective sync dialog 2014-10-22 06:29:22 -04:00
Christian Kamm
c832226aa1 Merge remote-tracking branch 'origin/1.7' into master 2014-10-22 12:25:58 +02:00
Christian Kamm
a20375372d Blacklist: Don't ignore error files forever. #2247
Instead try them again regularly, but don't show the user any
error messages if the error persists.
2014-10-22 12:25:18 +02:00
Olivier Goffart
6073e3f345 SocketAPI: do not show a progress icon in case of errors 2014-10-22 12:19:57 +02:00
Olivier Goffart
d31ccacf57 SocketAPI: show an ignored icon for paused folders 2014-10-22 12:19:57 +02:00
Klaas Freitag
3243365210 JournalDb: Do not longer always have a write operation on version table.
Rather read the value from the table and if it is what we expect do not
write it.
2014-10-22 10:59:58 +02:00
Christian Kamm
7ae0338f5c Merge remote-tracking branch 'origin/1.7'
Conflicts:
	src/CMakeLists.txt
	src/cmd/cmd.cpp
	src/gui/socketapi.h
	src/libsync/syncengine.h
	test/CMakeLists.txt
2014-10-22 10:41:55 +02:00
Markus Goetz
a993496ab4 SyncJournalDB/SyncEngine: Properly detect 1.5 upgrade
Else we end up never reading file data from the DB.
2014-10-21 20:25:15 +02:00
Markus Goetz
d7ac878efd SyncJournalDB: Fix deleteBatch 2014-10-21 16:37:51 +02:00
Markus Goetz
e5a0db8782 SyncJournalDB: Fix version table filling up 2014-10-21 16:37:39 +02:00
Markus Goetz
24d4840c93 SyncJournalDB: Set WAL files to hidden 2014-10-21 15:58:56 +02:00
Markus Goetz
fa70798fb5 SyncJournalDB: WAL checkpoint at end of sync 2014-10-21 15:41:11 +02:00
Markus Goetz
1af480ea3b CMake: Fix RPATH 2014-10-21 15:39:31 +02:00
Olivier Goffart
a76fc0ee5a SocketAPI: send the change of the parent folder in the broatcast
Also do not compute the status if there is nno listeners
2014-10-21 15:26:51 +02:00
Olivier Goffart
80e86d6c1b ownsql: fix warning with clang
warning: equality comparison with extraneous parentheses [-Wparentheses-equality]
2014-10-21 14:59:42 +02:00
Olivier Goffart
dc13e39bb1 SocketAPI: do not have a special case for UPDATE_VIEW on windows
This is a relique on the old times when there was no persistant connection
in the windows plugin
2014-10-21 14:57:50 +02:00
Markus Goetz
5d048c18bc Sqlite3: Switch to WAL
This is faster.
2014-10-20 23:09:28 +02:00
Markus Goetz
0fb779d363 SyncEngine: De-initialize recursive PROPFIND value correctly 2014-10-20 22:24:28 +02:00
Daniel Molkentin
d0ed82a686 We need SqlDatabase and SqlQuery to be exported
Required due to 53b3e5af1b
2014-10-20 19:58:10 +02:00
Klaas Freitag
26f068bcab SocketApi: Properly manage the database connections.
Removed the fishy closeDb() method of SqlQuery again.
2014-10-20 17:31:33 +02:00
Markus Goetz
f0dc3725e8 ownSql: Still also use sqlite3 busy handler 2014-10-20 17:26:25 +02:00
Markus Goetz
2de22b408b SyncEngine: Avoid transaction warning 2014-10-20 17:20:58 +02:00
Klaas Freitag
04b62b139d Fix compile error and add warning. 2014-10-20 17:10:34 +02:00
Klaas Freitag
2f20f3c65d SocketApi: Instanziate Object to call QFileInfo::exists
QFileInfo on Qt4 does not have static members.
2014-10-20 17:05:14 +02:00
Klaas Freitag
53b3e5af1b SocketAPI: Use new class SqlQuery to cache the sql queries.
This results in better handling of the BUSY condition through SqlQuery.
2014-10-20 16:55:37 +02:00
Markus Goetz
7dbb98c2e5 SyncEngine/SyncJournalDB: Don't keep transactions open 2014-10-20 16:50:55 +02:00
Markus Goetz
8b35cda4c6 SyncEngine: Refactor startSync() code 2014-10-20 15:51:50 +02:00
Markus Goetz
cb36a37779 SyncEngine/SyncJournalDB: Fix creation of .csync_journal 2014-10-20 14:27:00 +02:00
Markus Goetz
704c5f2de7 NetworkJobs: Higher timeout for pre-oC7
Pre-oc7 has PHP session locking for PROPFIND (by recursive PROPFIND in csync_update),
the oc7 doesn't.
2014-10-20 13:34:09 +02:00
Klaas Freitag
3fcb0d2d6b SocketAPI: Properly release precompiled statements. Use sqlite3_close
rather than its v2 equivalent. That should make it compile on older
linux platforms.
2014-10-20 10:51:03 +02:00
Klaas Freitag
2dfe0ed42e Remove unused variable, fixes compile warning. 2014-10-20 10:51:03 +02:00
Daniel Molkentin
6048a7143a Revert "Remove references to qsqlite3"
QtWebkit needs it

This reverts commit b1c10c8454.
2014-10-20 10:27:34 +02:00
Klaas Freitag
b5736fb5a7 Sql: Handle SQLITE_BUSY properly for sqlite3_step and sqlite3_prepare.
Repeat the statements a couple of times and sleep in between.
2014-10-18 16:16:29 +02:00
Klaas Freitag
7822a6b000 csync_statedb: Finalize the precompiled statements after discovery.
As described in http://www.sqlite.org/cvstrac/wiki?p=MultiThreading precompiled
statements should not be used across thread borders. However, the reconcile
phase would reuse the statements if defined (it calls statedb function from
a different thread) so it is saver to finalize them at the end of the
update run.
2014-10-18 14:18:11 +02:00
Olivier Goffart
a5bd437d48 Propagator: Fix renaming of files and case confflicts
Better fix for #1385 and #2318
2014-10-17 16:15:03 +02:00
Olivier Goffart
08156186fa Revert "propagator: Do not check for case clash when renaming"
This caused test regressions in t8.pl (#2318)

This reverts commit dad8c1c27c.
2014-10-17 16:15:03 +02:00
Markus Goetz
f1006ca8b0 owncloudcmd: Always need exclude list
Try to load the system list or the user supplied list.

For #2322
2014-10-17 15:58:01 +02:00
Markus Goetz
93c85711d1 ownSql: Always use finish() 2014-10-17 13:39:48 +02:00
Markus Goetz
e5ef5f2410 Revert "socketapi: if the filename is empty, it's actually /"
Not needed, the socketapi checks for "".

This reverts commit 561e3c780d.
2014-10-17 13:29:34 +02:00
Daniel Molkentin
52a5729298 Merge pull request #2319 from owncloud/sqlite_capi
Introduce a common sqlite layer across csync and mirall.

This avoids conflicts that both each load different and/or updated sqlite versions.
2014-10-17 12:11:27 +02:00
Daniel Molkentin
4525161e7c Updater: allow overriding update URL through environment 2014-10-17 12:07:18 +02:00
Daniel Molkentin
dee6d18d69 Discovery phase: Improve UI by quoting folder names 2014-10-17 12:07:18 +02:00
Daniel Molkentin
d44179142f Discovery phase: Properly decode percent encoding 2014-10-17 12:07:18 +02:00
Klaas Freitag
c66c01245b Beautified some debug logging strings. 2014-10-17 11:35:06 +02:00
Markus Goetz
b1c10c8454 Remove references to qsqlite3 2014-10-16 17:51:17 +02:00
Markus Goetz
1d5b3aadea sqlite3: Bundle 3.8.6 for Mac and Windows
it is linked into ocsync.
2014-10-16 17:38:45 +02:00
Markus Goetz
2d420cd72c ownSql: Always use SQLITE_TRANSIENT
More safe.
2014-10-16 15:30:50 +02:00
Markus Goetz
707d6880a8 main: Show console message if already running 2014-10-16 15:25:33 +02:00
Markus Goetz
dbad1a8d45 ownSql: Don't allow copying of SqlQuery
This fixes a crash on OS X where the destructor
calls sqlite3 to invalidate the underlying handle.
2014-10-16 15:10:25 +02:00
Klaas Freitag
36eaff92e5 JournalDb: Some Sql statement fixes, make t7 work again.
plus some minor fixes.
2014-10-16 11:22:57 +02:00
Klaas Freitag
e51c299937 ownSql: create an null value of an empty string in bindValue. 2014-10-16 11:20:50 +02:00
Klaas Freitag
8c7953a47c ownSql: Proper initialization of result value plus assert on it. 2014-10-16 11:20:21 +02:00
Daniel Molkentin
4527784905 Second part of #1661
- QT_INSTALL_TRANSLATIONS was not defined in Qt5
- Some languages have been split up in multiple qm's. We only need qtbase for now
2014-10-16 11:08:29 +02:00
Klaas Freitag
ee8a93ae9a ownSql: Proper initialization of errId 2014-10-16 10:39:10 +02:00
Klaas Freitag
89c51e7649 ownsql: Implement the transaction functions. 2014-10-15 19:47:25 +02:00
Olivier Goffart
2bba4134fb owncloudgui: Fix a small leak
The systray icon were not destroyed while qutting
2014-10-15 18:11:52 +02:00
Klaas Freitag
336c95ce5b ownsql: Cleanups: In modern C++, we use 0 instead of NULL 2014-10-15 16:46:39 +02:00
Klaas Freitag
babe891242 SyncEngine: Show a warning if post update script can not be exec. 2014-10-15 16:43:58 +02:00
Klaas Freitag
eeb5ca42e0 ownsql: Added some paranthisis to make clear whats happening. 2014-10-15 13:29:25 +02:00
Daniel Molkentin
03ee742981 Correct lookup logic for Qt translations
Fixes #1661
2014-10-15 09:33:38 +02:00
Klaas Freitag
0094c1ecf5 Make the sync work with new sql implementation. 2014-10-14 20:51:51 +02:00
Klaas Freitag
357c08c5b3 NewSQL: minor fixes to get stuff going 2014-10-14 12:18:33 +02:00
Klaas Freitag
e7d9ec50dc Merge branch 'sqlite_capi' of github.com:owncloud/mirall into sqlite_capi
Conflicts:
	src/mirall/socketapi.cpp
2014-10-14 11:43:10 +02:00
Klaas Freitag
09b0ba31ef Sql: New implementation of ownSql class to go away from Qt's own Sql 2014-10-14 11:14:57 +02:00
Klaas Freitag
26ffa078ef SocketAPI: Cache database conections and statements 2014-10-13 17:31:40 +02:00
Markus Goetz
eb60aca34f SyncJournalDB: Clarify debug message 2014-10-13 17:29:26 +02:00
Markus Goetz
4d3020421a SocketAPI: Remove old dbFileRecord function
We will use the _capi functions
2014-10-13 17:29:26 +02:00
Markus Goetz
f1ce0a1cf3 SocketAPI: Use non-recursive (heuristic) computation of icons 2014-10-13 17:29:26 +02:00
Klaas Freitag
dd28a645a1 SocketAPI: Cleanup, removed helper namespace, added as private methods. 2014-10-13 15:38:57 +02:00
Klaas Freitag
561e3c780d socketapi: if the filename is empty, it's actually / 2014-10-13 15:36:13 +02:00
Klaas Freitag
46fd79604d JournalDb: Do not use static variable for path. 2014-10-13 14:49:53 +02:00
Klaas Freitag
d08c2de619 Use sqlite C api. 2014-10-13 14:14:43 +02:00
Jürgen Weigert
07bcaaebf9 unreachable --version code made reachable.
error message improved.
2014-10-12 19:28:13 +02:00
Markus Goetz
b285e98988 SQlite: Print versions we use 2014-10-11 17:33:35 +02:00
Klaas Freitag
ab40ba2f75 owncloudcmd: Handle trust ssl switch correctly by overwriting trustssl
method in a subclass of HTTPCredentials.
2014-10-11 17:17:43 +02:00
Klaas Freitag
bbcb8ba3e7 credentials: Allow to trust ssl certs in subclasses of HTTPCredentials.
This allows to handle the --trust option in owncloudcmd. In the
owncloudcmd subclass of the httpcredentials, we allow to manually trust
the ssl certificate through a command line switch.
2014-10-11 17:17:43 +02:00
Markus Goetz
ef48de34f7 Logger: Log the thread pointer
Maybe we can somehow reduce this to make it not so many characters wide?
2014-10-11 16:58:47 +02:00
Olivier Goffart
7e898cf60c SelectiveSync: rename blacklist to selectiveSyncBlackList in some places
Issue #2301
2014-10-11 16:24:45 +02:00
Klaas Freitag
2f5cea0e73 owncloudcmd: Add a custom ssl verification callback for neon.
That fixes the SSL related problems we had with ci.owncloud.org
2014-10-11 15:55:37 +02:00
Olivier Goffart
282abdd804 Sync engine: Restart sync when we get a precondition failed error 2014-10-11 15:40:28 +02:00
Olivier Goffart
9b178c5bb2 Sync engine: Do not write to the database too early
It is possible that we have should_update_etag set to true for files
that we also need to propagate.  In which case we must not write to the DB
too early as this could cause data loss.  (cf: issue #2296)
2014-10-11 15:40:28 +02:00
Klaas Freitag
d491663143 owncloudcmd: Fix some slash screwup, to make the split succeed bug #2211 2014-10-11 15:14:07 +02:00
Klaas Freitag
8eaeba6486 owncloudcmd: Fix url handling with csync, make owncloudcmd sync again.
This fixes mirall issue #2211
2014-10-11 12:21:26 +02:00
Daniel Molkentin
77d2cba155 owncloudcmd: don't prompt for password if it was provided 2014-10-10 18:04:00 +02:00
Daniel Molkentin
2149092c7a owncloudcmd: Fix crash 2014-10-10 18:04:00 +02:00
Olivier Goffart
100d1361b6 Add Folder wizard: Sort the folders when selecting the remote folder
Issue #1872
2014-10-10 16:56:05 +02:00
Daniel Molkentin
76f5266fa1 Fix small inefficiency in socketapi 2014-10-10 16:20:57 +02:00
Daniel Molkentin
3ebe3b1196 Use local socket (named pipe) connection also on Windows 2014-10-10 15:57:05 +02:00
Daniel Molkentin
c4f96c2fba owncloudcmd: Implement --version, fix strings
Part of #2211
2014-10-10 15:55:58 +02:00
Olivier Goffart
d880f2ffbc propagator: Do not show an error message saying it was done by user interaction if it was not
There is many reasons why we could abort (for example timeouts)
And in this case we should not show to the user it was aborted
by user interaction
2014-10-10 14:58:56 +02:00
Klaas Freitag
9bb89dced5 Less offensive logging, only use error if there was one. 2014-10-10 10:16:59 +02:00
Markus Goetz
f0fef4f232 OS X: Fix .app creation for non-system Qt 2014-10-09 16:50:03 +02:00
Daniel Molkentin
7eb10a08b8 SSL error dialog: Remove debug noise 2014-10-09 16:49:31 +02:00
Olivier Goffart
4c83653d5d Selective sync: do not upload or rename file that would ends up in a not selected folder
Issue #2283
2014-10-09 16:50:03 +02:00
Christian Kamm
3149cd03be Sync scheduling: Never enqueue a folder while it is synced.
Issues: #2268, #2275
2014-10-09 15:55:10 +02:00
Christian Kamm
5314765410 fix compile 2014-10-09 15:55:10 +02:00
Olivier Goffart
621a37be15 Selective sync: Remove the etag of parent folders in the db when adding or removing items in the selective sync blacklist 2014-10-09 15:28:51 +02:00
Olivier Goffart
6de104a03a Selective Sync: ensure that the blacklist contains the last '/'
In the sync engine.  Because that makes tha tthe lower_bounds in selective sync works properly.

For example, if both "Test" and "Test Test" are in the list,  then "Test/Foo" would match the "Test Test"
 because slash is after space

Task #2289
2014-10-09 15:11:04 +02:00
Olivier Goffart
97560509ea Selective sync: change the text of the label.
Selective sync is a black list.  Unchecked folder are blacklisted
Partially checked folders are not in the blacklist and the files there
are sync'ed
2014-10-09 14:36:26 +02:00
Christian Kamm
dfba8fbe5e CheckServerJob: Require status code 200. #2290 2014-10-09 11:06:00 +02:00
Klaas Freitag
32fea6523f Use climits for ULONG_MAX rather than modern C++ option 2014-10-09 11:03:07 +02:00
Klaas Freitag
d1c1a18226 SyncJournal: Use precompiled statement in blacklist query. 2014-10-09 10:05:20 +02:00
Klaas Freitag
04558beabe SyncJournal: Use the NOCASE Collate for blacklist query. 2014-10-09 10:05:20 +02:00
Klaas Freitag
425d0d77c5 Two little typo fixes. 2014-10-09 10:05:20 +02:00
Christian Kamm
886f9d82f2 Sync scheduling: Improve logging. #2275 2014-10-09 09:01:35 +02:00
Daniel Molkentin
6c8eab734e Remove C++11ism that doesn't work with older GCCs 2014-10-08 18:56:30 +02:00
Christian Kamm
705cd571a5 Download: Don't store message body if status != 2xx #2280 2014-10-08 14:18:29 +02:00
Christian Kamm
48d3c75745 GET: Retry if bad range header used. #2280
* If a 416 is returned and we used a Range header, try again
  from scratch.
* The direct URL logic was also inconsistent for resumed downloads:
  it sent the Range header but didn't check the returned
  Content-Range header correctly. Now resuming is disabled for
  direct URL downloads.
2014-10-08 14:18:29 +02:00
Christian Kamm
285cb78962 Sync scheduling: Don't always force-sync. #2268
If lastEtag was null, a force sync was triggered. Force syncs
don't update the etag. The etag retrieval job would only run if
lastEtag was not null. So it could never become non-null.
2014-10-08 10:51:32 +02:00
Christian Kamm
708655d9b2 fix incomplete rename
from 9bd7ffe952
2014-10-08 09:36:47 +02:00
Christian Kamm
9bd7ffe952 blacklist: Fix stale blacklist removal. #2247
Use the right check to determine whether a file has a blacklist entry,
SyncFileItem::FileIgnored was incorrect because that denotes files from
the ignore list or blacklisted files with no retries left.

The blacklistedInDb flag does the right thing. Rename it to
hasBlacklistEntry to be more explicit.
2014-10-08 09:17:40 +02:00
Markus Goetz
8febd90f2a Propagator: Be less verbose 2014-10-08 09:07:29 +02:00
Daniel Molkentin
1579c23ff1 Fix order in which credentials are getting fetched 2014-10-07 18:21:22 +02:00
Markus Goetz
bf18ecae13 Propagator: Fix bw limiting bug, be less verbose in logging 2014-10-07 17:42:50 +02:00
Markus Goetz
89971925ca Propagator: Be more verbose about propagator choice 2014-10-07 14:55:30 +02:00
Markus Goetz
d1cc3c34c9 Propagator: Relative download limit 2014-10-07 14:46:55 +02:00
Markus Goetz
de79f9338a Propagator: Bandwidth limiting for new propagator 2014-10-07 14:46:55 +02:00
Olivier Goffart
5471bfd5a8 No need to update mtime and etag after a move
The server keeps the mtime and etag anyway.
And changing the mtime also changes the etag and so make other clients re-download
the file instead of detecting the move
2014-10-07 09:13:13 +02:00
Daniel Molkentin
961df010cb Propagator: Fix typo in Win32-only code 2014-10-06 15:39:49 +02:00
Klaas Freitag
12b09fab67 CaseClash: more defensive logging on Windows. 2014-10-03 11:54:32 +02:00
Klaas Freitag
41fa562dce blacklisting: disable broken remove stale entries function for now. 2014-10-03 11:35:18 +02:00
Klaas Freitag
81d3ce8257 cmake: Commented setting of the INSTALL_PREFIX var on Mac 2014-10-01 20:55:39 +02:00
Daniel Molkentin
bcc06af904 fix last commit 2014-10-01 17:46:29 +02:00
Daniel Molkentin
a98242a2b8 fix install target for macdeployqt 2014-10-01 17:32:17 +02:00
Olivier Goffart
0d303f1d1f SelectiveSync: sort the item instead of using the order from the server
Task #2259
2014-10-01 13:47:24 +02:00
Daniel Molkentin
dafd9c308f More removal of obsolete CMake code 2014-10-01 12:51:38 +02:00
Olivier Goffart
147fa60f81 Merge branch 'socketapi_localsocket' into 1.7 2014-10-01 12:34:22 +02:00
Olivier Goffart
a1b9405e2e Windows has not been ported back to QLocalSocket 2014-10-01 12:33:54 +02:00
Olivier Goffart
db02d44c6a No need to update mtime and etag after a move
The server keeps the mtime and etag anyway.
And changing the mtime also changes the etag and so make other clients re-download
the file instead of detecting the move
2014-10-01 11:22:00 +02:00
Klaas Freitag
dff1f77dfa SocketAPI: remove nonsense FIXME's. 2014-09-30 17:12:07 +02:00
Daniel Molkentin
1a2fff8ed8 OS X: Use a python script to fix for bundle fixup...
...rather than relying on cmake magic
2014-09-30 17:09:16 +02:00
Markus Goetz
52c12b33c3 OS X: CMD+H should hide the dialog 2014-09-30 15:21:55 +02:00
Klaas Freitag
479b340d75 Folderman: Check if socketApi member is non zero, no crashes. 2014-09-30 12:33:51 +02:00
Klaas Freitag
06c48f58cc SyncEngine: Use proper start indicator, max unit64.
This avoids a warning.
2014-09-30 12:29:24 +02:00
Klaas Freitag
0ee81a2865 SocketAPI: Set permission of the socket Directory.
Set that to be accessible by the owner only.
2014-09-30 11:23:49 +02:00
Klaas Freitag
e78c251832 SocketAPI: Split up for specific linux and mac implementation. 2014-09-30 11:23:49 +02:00
Markus Goetz
f8b73eb9d9 SocketApi: Port OS X to use local sockets 2014-09-30 07:36:20 +02:00
Olivier Goffart
a587148c73 SocketApi: Save the socket in $XDG_RUNTIME/<appname>/socket 2014-09-29 13:54:13 +02:00
Olivier Goffart
9acd3a58ee SocketApi: Use QLocalSocket after all for windows and linux
Relates issue #2189
2014-09-29 12:19:33 +02:00
Olivier Goffart
10989d13e4 Folder: Remove slotTerminateAndPauseSync
This make no sens to just set the pause config flag here. It make selective sync to mark
the folder as posed on restart
2014-09-26 12:43:54 +02:00
Olivier Goffart
b4071cec01 DiscoveryPhase: fix the name of a function
It was renamed from white list to black list long ago
2014-09-26 12:35:56 +02:00
Klaas Freitag
b1c842373d Add OWNCLOUDSYNC_EXPORT to make building on windows. 2014-09-26 10:07:50 +02:00
Olivier Goffart
a3d70b3cf6 Attempt to fix a crash
The reply might be null at the point we are timing out.
Issue #2246
2014-09-26 10:04:36 +02:00
Klaas Freitag
98d9f7924d SocketAPI: Before reporting something new check for parent permissions.
In case it is not allowed to create files or dirs because of missing
permissions in shares, the socket API has to report an error state
rather than the NEW state.

As discussed in mirall issue #1931
2014-09-25 21:52:20 +02:00
Klaas Freitag
172295289e Permissions: If a top level shared dir is removed, do not restore files in it
A top level shared dir can always be removed on the client, even if it is
read only shared. In that case, the removal means "unsharing". Fixed the
permission check accordingly.

See bug #1918 for more information.
2014-09-25 15:39:14 +02:00
Klaas Freitag
8ba08d7e87 Activity View: honor error string even if no warning
that allows to specify a more specific user message to be displayed.
2014-09-25 15:03:54 +02:00
Klaas Freitag
8915f94931 Mac Overlays: handle filenames with slashes properly.
There are filenames with slashes on MacOSX, they can be created
in Finder. Internally they are converted to colons.
2014-09-25 12:24:32 +02:00
Markus Goetz
1543899795 Upload Chunking: Fix progress DB values 2014-09-25 11:32:54 +02:00
Klaas Freitag
31bf844452 DownloadJob: Refresh the FileInfo after renaming the target file.
Otherwise the activity view reports file size 0.
2014-09-25 10:59:08 +02:00
Olivier Goffart
dad8c1c27c propagator: Do not check for case clash when renaming
Issue #1385

When renaming, we would normaly already have an error if the file already exist.
And we want to allow the renaming to chang ethe case (Eg. "hello" -> "HELLO"
2014-09-24 16:43:01 +02:00
Klaas Freitag
2c67a7ca71 progress: Set a clear start indication in the progress.
Before, 0 was used to indicate the sync start which wipes the activity
window. However, if there _are_ no synced items but only ignored items
the overall counter stays zero which wipes the list all the time.

This fixes bug #2171
2014-09-23 15:58:06 +02:00
Klaas Freitag
5b10a9f3a7 Minor: Remove unused definition 2014-09-22 13:47:45 +02:00
Klaas Freitag
d0fb1acebb Win32: Define HANDLE variable, make win compile again. 2014-09-22 13:47:17 +02:00
Christian Kamm
fa881ba1c7 Notifications: Don't emit one per error. #1777 2014-09-19 15:59:03 +02:00
Olivier Goffart
9ae4d45243 Restart the sync when we detect we need to redo a sync
Fixes #1968
Relates #2038

(cherry picked from commit a84b7dc27e)

Conflicts:
	src/mirall/owncloudpropagator.h
	src/mirall/propagator_qnam.cpp
	src/mirall/syncengine.h
2014-09-19 11:51:17 +02:00
Christian Kamm
2eec85a97c NetworkJobs: Propagator jobs keep others from expiring. #2155
In some owncloud server setups multiple concurrent connections for the
same session are not supported: owncloud/core#11153

This causes issues with multiple uploads and downloads. A usual symptom
is the quota job failing and the sync aborting.

This workaround lets activity on the propagator's GET and PUT jobs
reset the timeout of all network jobs. That way, queries like the quota
job would not time out while a large up/download is in progress.
2014-09-19 11:22:57 +02:00
Olivier Goffart
1cd5681967 permissions: Remember the permissions for the root folder 2014-09-19 10:58:52 +02:00
Olivier Goffart
50e718b1e7 Merge branch '1.7'
Conflicts:
	src/CMakeLists.txt
	src/cmd/cmd.cpp
	src/gui/folder.cpp
	src/gui/socketapi.cpp
	translations/mirall_ca.ts
	translations/mirall_cs.ts
	translations/mirall_de.ts
	translations/mirall_el.ts
	translations/mirall_en.ts
	translations/mirall_es.ts
	translations/mirall_es_AR.ts
	translations/mirall_et.ts
	translations/mirall_eu.ts
	translations/mirall_fa.ts
	translations/mirall_fi.ts
	translations/mirall_fr.ts
	translations/mirall_gl.ts
	translations/mirall_hu.ts
	translations/mirall_it.ts
	translations/mirall_ja.ts
	translations/mirall_nl.ts
	translations/mirall_pl.ts
	translations/mirall_pt.ts
	translations/mirall_pt_BR.ts
	translations/mirall_ru.ts
	translations/mirall_sk.ts
	translations/mirall_sl.ts
	translations/mirall_sv.ts
	translations/mirall_th.ts
	translations/mirall_tr.ts
	translations/mirall_uk.ts
	translations/mirall_zh_CN.ts
	translations/mirall_zh_TW.ts
2014-09-18 17:10:21 +02:00
Olivier Goffart
7c36e5c0e6 parallel chunk upload: allow "true" for the value of OWNCLOUD_PARALLEL_CHUNK 2014-09-18 14:29:38 +02:00
Olivier Goffart
1b62ed1e7e Parallel chunk upload: Fix progress 2014-09-18 12:36:30 +02:00
Klaas Freitag
e9248066df SyncJournal: Better error report for sql statements in updateDbStructure
Also, even if the updateDatabaseStructure fails, precompile the sql
statements.

This will help to debug and maybe solve bug #2106
2014-09-18 12:02:28 +02:00
Christian Kamm
a88ac00115 SyncEngine: Better reporting when ignoring hardlinks. #2217
Also touch csync to actually let us know it's ignoring the file
due to it having hard links.
2014-09-18 11:32:29 +02:00
Christian Kamm
30683b38a8 Updater: Add "didn't check for updates" message. #2175
Don't show "Checking server..." when we are not.

(cherry picked from commit ece11dc3d8)
2014-09-18 09:43:13 +02:00
Christian Kamm
45aefeb146 SelectiveSyncDialog: Change 'partial' behavior.
The real bug in #2219 actually was that the gui allowed users to
choose to not sync the root folder. That's not supported and no
longer possible in the UI.

Instead you may now sync a folder's files without syncing its sub-
folders.
2014-09-18 09:42:50 +02:00
Daniel Molkentin
db3318886e Merge pull request #2214 from owncloud/2211
Implement (most of) #2211
2014-09-18 00:09:26 +02:00
Daniel Molkentin
54eb837950 Remove unused confdir option 2014-09-18 00:07:33 +02:00
Christian Kamm
e395282e0e SelectiveSyncDialog: Fix sync-nothing case. #2219 2014-09-17 16:13:47 +02:00
Christian Kamm
1f129d0bcb Propagator: Don't upload files that were changed recently.
Instead skip them and try another sync later.

See #2167, #2169, #2210.
2014-09-17 15:30:18 +02:00
Christian Kamm
c2ae5e5fd1 FolderMan: Ensure a 1s delay between sync request and start.
That way the propagator can detect files that are still being
changed right now and skip them.
2014-09-17 15:30:18 +02:00
Christian Kamm
ece11dc3d8 Updater: Add "didn't check for updates" message. #2175
Don't show "Checking server..." when we are not.
2014-09-17 11:41:04 +02:00
Christian Kamm
99aa2cdf2a Log: Print client version on sync start. #2178 2014-09-17 09:39:04 +02:00
Christian Kamm
0eb9401c62 File change detection: Also look at file sizes.
See #2167 and #2169.

* csync_detect_update: Reupload a file if the sizes differ, similar
  to how we reupload if the mtimes differ.
* PropagateUploadFileQNAM::slotPutFinished(): Abort an upload if the
  size changed, similar to how we abort an upload if the mtimes changed.
2014-09-17 09:05:13 +02:00
Daniel Molkentin
122fa596b3 Remove stray file that was not meant to be committed 2014-09-17 00:55:55 +02:00
Daniel Molkentin
5406407ed6 Implement --non-interactive as per Juergens' request 2014-09-17 00:12:16 +02:00
Daniel Molkentin
b72cee2783 Fix passing URLs not ending in /remote.php/webdav 2014-09-16 23:53:01 +02:00
Daniel Molkentin
fe023e2229 Allow passing user/pass explicitly or via netrc
#2211
2014-09-16 23:52:28 +02:00
Olivier Goffart
66595a3597 Parallel chunk uploads
This does not include progress indicator
2014-09-16 17:40:42 +02:00
Olivier Goffart
9b1779bb06 Fix compilation
qFatal does not work with <<
2014-09-15 18:03:44 +02:00
Olivier Goffart
97cc05eeea journaldb: Assert in case of SQL error
relates issue #2106
2014-09-15 14:27:39 +02:00
Christian Kamm
20dd3b0a69 FolderMan: Fix startFromScratch logic. #1989
(cherry picked from commit 4566ca3127)
2014-09-15 13:53:38 +02:00
Christian Kamm
f348eabf19 Account: Fix cert save/restore from settings. #2160
(cherry picked from commit cc1121ef00)
2014-09-15 13:53:38 +02:00
Olivier Goffart
5870a57002 wizard: fix start a clean sync
The problem was that the backup function failed as we tried to
move  /home/xxx/ownCloud/  to /home/xxx/ownCloud/.oC_bak
The intention was to move it to /home/xxx/ownCloud.oC_bak

Issue #1989
2014-09-15 13:49:13 +02:00
Olivier Goffart
278bc5a8cd owncloudcmd: ask for the login and password and put it in the url (if it's not there already)
Because we cannot rely on HTTPCredentials to open windows in a command line tool

Fixes #1860
2014-09-15 13:24:31 +02:00
Olivier Goffart
af5e8ee18c AbstractNetworkJob
Abort the transfer in case of timeout.

This avoid that a connection that never replies blocks mirall

Issue #2148
2014-09-12 18:06:29 +02:00
Olivier Goffart
52e8343f76 ConnecitonValidator: Handle the timeout
otherwise the account may be stuck in a disconnect case if there is a timeout

Issue #2148
2014-09-12 18:06:17 +02:00
Olivier Goffart
a4dbf5942c owncloudcmd: restart the sync if required
Fixes #2038
2014-09-12 17:23:01 +02:00
Daniel Molkentin
ada1d42ebf Sparkle requirement bumped to 1.8 2014-09-12 16:08:52 +02:00
Daniel Molkentin
f27182ae05 fFx Utility::freeDiskSpace for win32 2014-09-12 16:08:52 +02:00
Markus Goetz
2fddf05515 OS X: Overlay Icons: Load from bundle-specific path
The client (in this case mirall) tells the Finder plugin where to get the icons.
This enables installation in different locations and in branded clients.
2014-09-12 15:09:47 +02:00
Tim Vandecasteele
f3cc614427 Fix apple build.
The apple build was broken because the elseif in the CMakeLists is never triggered.

Some code was not properly adapted for the new qtmacgoodies.

Some paths were not adapted to new split.
2014-09-12 14:24:26 +02:00
Olivier Goffart
79052ba7c6 Blacklist: ignore problems that don't have HTTP error code and are possibly problem on the local file system
Issue #1985
2014-09-12 14:13:04 +02:00
Markus Goetz
4960890d70 Propagator: Commit the DB for Poll Jobs 2014-09-11 12:05:35 +02:00
Olivier Goffart
a84b7dc27e Restart the sync when we detect we need to redo a sync
Fixes #1968
Relates #2038
2014-09-10 17:27:33 +02:00
Daniel Molkentin
927af0adec Fix build on win32: add missing export 2014-09-10 16:31:47 +02:00
Daniel Molkentin
f59a6862ca raiseDialog: Actually send the XEvent
Amendment to 25c274a0bd

Conflicts:
	src/mirall/owncloudgui.cpp
2014-09-10 13:21:27 +02:00
Olivier Goffart
71408bab60 I forgot to rename one of the while list to the blacklist 2014-09-10 11:01:38 +02:00
Christian Kamm
88b7f2e0ee SyncJournal: Don't use C++11 features. 2014-09-05 12:48:45 +02:00
Markus Goetz
f5f04bcc4b SyncEngine: Always return _renameTarget in destination() if possible
We want to do this since the instruction is actually ERORR, not RENAME.
2014-09-05 10:07:24 +02:00
Christian Kamm
2630a73a1c Propagator: Use csync to get the modification time.
See owncloud/core#9781
2014-09-04 14:16:23 +02:00
ckamm
4decd15ca9 Merge pull request #2161 from ckamm/stale-downloadinfo
Clean up stale journal entries and temporaries. #2057
2014-09-04 14:14:39 +02:00
ckamm
3a59dd24f3 Merge pull request #2162 from ckamm/error-missing-exclude
Don't do a broken sync when the system exclude file is missing
2014-09-04 14:14:07 +02:00
Olivier Goffart
c232411e96 uploading: make sure to cast to uint64 to avoid integer overflow 2014-09-04 13:46:01 +02:00
Christian Kamm
1cf1f6edcb Fix style issues. 2014-09-04 13:27:11 +02:00
Christian Kamm
5d36a27893 Clean up stale journal entries and temporaries. #2057
* Downloadinfo entries for files that no longer need to be downloaded
  are useless and can be removed. In particular, the temporary files
  holding partially retrieved files are now deleted when no longer
  necessary.
* The same is true for blacklist entries for paths that are no longer
  being discovered.
* Same for uploadinfos for files that no longer need to be uploaded.
2014-09-04 13:14:15 +02:00
Christian Kamm
da94533647 Folders: Signout should not switch folders to paused state. #2112
On signout, syncs that are running in folders are aborted. That used to
also switch the state of these folders to 'paused'. To fix that, aborts
that are caused by user actions no longer change the folder paused
state.

Aborts due to errors should still pause folders! Otherwise we'd try
resyncing them even though there was an error.
2014-09-04 11:21:28 +02:00
Markus Goetz
69066013c1 ownCloudTheme: Fix casing in appName()
Without this fix, the section in the config file uses the wrong name,
leading to re-configuration of the client needed.
2014-09-03 17:30:34 +02:00
Christian Kamm
aef569ee9d SyncEngine: Use exclude file fallback next to binary on linux.
This is mainly useful for developers where the system-wide exclude file
may not exist.
2014-09-03 14:53:01 +02:00
Christian Kamm
cf881aa6dc SyncEngine: Fix invalid slot name in sync error condition. 2014-09-03 14:52:55 +02:00
Christian Kamm
a48bf3142c SyncEngine: Abort sync with error if system exclude file is missing.
Syncing without the system exclude file would cause lots of trouble.
For instance we would try uploading the temporary files we store
partially completed downloads in.
2014-09-03 14:52:46 +02:00
Daniel Molkentin
c0131695c5 Return from Folder::slotPollTimerTimeout() if the account object is 0
Right now, we crash instead. This can happen if a folder is created
when an account object is not (anymore/yet) created.

Fixes #2142
2014-09-02 14:51:33 +02:00
Daniel Molkentin
fcbadda40f Make Settings Window close on Ctrl+W
Fixes #2141

(cherry picked from commit 2ab19b23d7)
2014-09-02 14:03:20 +02:00
Daniel Molkentin
2455faa6fe Account Migrator: Switch to string comparison for URLs.
QUrl does not normalize trailing slashes, so there is no benefit
of using QUrl here.

(cherry picked from commit d770f9cc1a)
2014-09-02 14:03:07 +02:00
Markus Goetz
0be4b59cff Sparkle: Keep permissions from bundle 2014-08-31 18:57:39 +02:00
Olivier Goffart
291231c561 Merge missing commits from 1.6.2-themefix into 1.7
Conflicts:
	VERSION.cmake
2014-08-30 17:57:58 +02:00
Dominik Schmidt
7ad557f2f8 Add crash reporter to osx package and don't build it with BUILD_LIBRARIES_ONLY enabled 2014-08-30 14:45:39 +02:00
Dominik Schmidt
ef70052b0e Package installer if it was built 2014-08-30 14:12:40 +02:00
Dominik Schmidt
202426f536 Make crash reporter application name branded 2014-08-30 11:05:52 +02:00
Dominik Schmidt
d240415671 Make crash reporter logo branded 2014-08-30 11:05:34 +02:00
Dominik Schmidt
1aca22b5f8 Make crash reporter executable branded 2014-08-30 10:46:09 +02:00
hefee
68792ee9db Fixing spellingerror
GNU Public License -> GNU General Public License
2014-08-30 02:18:55 +02:00
Klaas Freitag
bcff1ced5e Merge branch '1.7'
Conflicts:
	src/CMakeLists.txt
	src/cmd/cmd.cpp
	src/gui/folderman.cpp
	src/gui/wizard/owncloudadvancedsetuppage.cpp
	src/libsync/account.cpp
2014-08-29 20:40:33 +02:00
Klaas Freitag
7ce2a93c63 Merge remote-tracking branch 'origin/reuse_oc_config' into 1.7
Conflicts:
	src/CMakeLists.txt
	src/mirall/folderman.cpp
	src/mirall/folderman.h
	src/mirall/owncloudtheme.h
2014-08-29 20:23:07 +02:00
Olivier Goffart
5d19426930 Propagator: When the server don't support ranges, reset the counter so the progress is not messed up
Issue #2081
2014-08-29 19:33:20 +02:00
Olivier Goffart
1b51a10b19 Socket API: be consistant in the VERSION command and add the VERSION at the beginning 2014-08-29 17:28:36 +02:00
Dominik Schmidt
38ff7d87c8 Hide crashreporter config option if not build with crashreporter enabled 2014-08-29 17:07:31 +02:00
Markus Goetz
12e2bac16b Propagator: Also parse OC-ETag header
Client side part of https://github.com/owncloud/core/issues/9005
2014-08-29 16:30:58 +02:00
Olivier Goffart
34a27c748a Progress: in case of resuming chunks, advance directly at startup by the amount of chunk already done
Fixes #2103
2014-08-29 16:06:56 +02:00
Markus Goetz
7ec0c52439 Poll URL: Use trimmed() on response 2014-08-29 13:58:33 +02:00
Olivier Goffart
a73fbccf8c t4.pl: add a test to test that ignored file are not deleted 2014-08-28 19:33:52 +02:00
Klaas Freitag
7f1d707d23 ownCloud Theme: Do not have the oCSetupTop custom media, see #1445 2014-08-28 18:10:53 +02:00
Daniel Molkentin
25c274a0bd X11: Bring Settings window to front when launched 2014-08-28 17:25:00 +02:00
Olivier Goffart
0fb0f2c204 Selective sync: start a sync when the selective sync settings changes 2014-08-28 16:27:46 +02:00
Dominik Schmidt
6abaad1ae8 Show crash reporter if trying to read the crash-reporter-enabled config crashes 2014-08-28 16:23:14 +02:00
Dominik Schmidt
89aec52503 Add checkbox to general settings to disable the crash reporter 2014-08-28 16:19:17 +02:00
Markus Goetz
b6f42a91f4 OS X: Fix Finder bundle NVTY->OWNC 2014-08-28 15:45:07 +02:00
Markus Goetz
2aef6a2174 Poll URL: Don't delete from DB in case of 503 2014-08-28 13:44:21 +02:00
Olivier Goffart
79f00c2a2a Wizard: adjust alignements 2014-08-28 13:32:14 +02:00
Olivier Goffart
e5068e7543 Selective sync: if one click twice on the button in the wizard, it should keep the blacklist 2014-08-28 12:25:44 +02:00
Olivier Goffart
858218ac34 Wizard: new layout 2014-08-28 12:18:19 +02:00
Dominik Schmidt
b8e8d975aa Add CRASHREPORTER_SUBMIT_URL to OWNCLOUD.cmake 2014-08-28 12:08:07 +02:00
Markus Goetz
6e0330ff65 SyncEngine: Error out if we don't have a sync dir 2014-08-28 11:47:40 +02:00
Markus Goetz
3aa7178382 PollJob: Increase timeout 2014-08-28 11:27:08 +02:00
Dominik Schmidt
439bf7641e Use include path for libcrashreporter-qt instead of lengthy relative include 2014-08-28 11:11:42 +02:00
Dominik Schmidt
34042028b3 Add CRASHREPORTER_SUBMIT_URL define and default it to some placeholder owncloud url 2014-08-28 11:05:46 +02:00
Markus Goetz
2f34b046d0 Overlay Icons: Improve OS X version, improve general feedback
Now the update phase of the syncing algorithm pushes stuff the notification socket too.
2014-08-27 19:15:43 +02:00
Olivier Goffart
a73316306d Selective sync: new design in the wizard 2014-08-27 19:03:11 +02:00
Daniel Molkentin
cf12a56b4c Merge remote-tracking branch 'origin/1.7'
Conflicts:
	src/gui/socketapi.cpp
2014-08-27 18:22:07 +02:00
Olivier Goffart
928652e4cf Selective sync: rename the button 'choose what to sync' 2014-08-27 17:31:57 +02:00
Olivier Goffart
7950b49cb1 Selective sync dialog: fix fetching sub directory when the folder is not the root folder 2014-08-27 17:19:36 +02:00
Klaas Freitag
cc6aa66ab0 JournalDB: Do prepare the queries even if the db update failed.
Also, add more logging in case SQL errors happen while db structure
update.
2014-08-27 14:01:33 +02:00
Olivier Goffart
ea381392a7 SocketAPI: fix the BROADCAST message 2014-08-27 13:55:06 +02:00
Olivier Goffart
bb7f63dcfd AccountSettings: be less verbose in the status string 2014-08-27 13:51:14 +02:00
Olivier Goffart
253d65727b Socket api: Add a VERSION command 2014-08-27 13:51:14 +02:00
Klaas Freitag
d2e1489fe7 Propagator: Set the chunk size to 20MB as requested by Matt. 2014-08-27 10:35:58 +02:00
Dominik Schmidt
2b4849a2fa Add crash reporter using libcrashreporter-qt 2014-08-26 18:15:13 +02:00
Olivier Goffart
2356601bb3 folder: Make sure not to pol the server if the account is disconnected
Fixes #2108
2014-08-26 16:23:19 +02:00
Olivier Goffart
9b88c7d3c1 SSLButton: fix memleak 2014-08-26 15:59:19 +02:00
Olivier Goffart
302499b483 uploading: make sure to cast to uint64 to avoid integer overflow 2014-08-26 15:58:55 +02:00
Dominik Schmidt
17e16f5e79 Add "Crash" entry to systray if started with --debug 2014-08-26 15:46:24 +02:00
Dominik Schmidt
b176ff6626 Don't use CMAKE_INSTALL_PREFIX for RPATH 2014-08-26 15:19:46 +02:00
Daniel Molkentin
e5471d8318 Build after merge 2014-08-26 14:33:21 +02:00
Daniel Molkentin
902bb7a198 Merge remote-tracking branch 'origin/master' into move_lib_to_sep_dir
Conflicts:
	src/CMakeLists.txt
	src/gui/accountsettings.cpp
	src/gui/folderwizard.cpp
	src/gui/settingsdialog.cpp
	src/libsync/syncengine.h
2014-08-26 11:29:42 +02:00
Markus Goetz
b037e6356e TokenCredentials, DirectDownload: Rework cookie handling
That way we don't override QNAM's cookie jar behaviour
2014-08-22 13:46:22 +02:00
Markus Goetz
824628061b Propagator: Don't have cookies overriden by QNetworkCookieJar
The direct download feature has its own cookies, don't let QNAM override them.
2014-08-22 12:12:46 +02:00
Klaas Freitag
c473428be6 Merge pull request #2084 from owncloud/contextless_exclude
Contextless exclude, @ogoffart reviewed, I'll merge.
2014-08-21 13:15:18 +02:00
Klaas Freitag
dc8f437b31 Excludes: Add an context free implementation of exclude file loading.
So that we are more thread safe.
2014-08-21 12:43:04 +02:00
Olivier Goffart
aabcf80774 Sync engine: Take also in account the fact that the instruction can be IGNORE on both tree 2014-08-21 11:33:38 +02:00
Olivier Goffart
1cf956ec21 Discovery phase: clear the callbacks after use 2014-08-21 11:27:25 +02:00
Klaas Freitag
54e2b9345b GUI: on Mac do not call slotUpdateAccountIcon 2014-08-21 11:00:57 +02:00
Klaas Freitag
75101a0319 Application: Unload all folders when shutting down.
That sends a proper UNREGISTER message via socket API.
2014-08-20 17:33:48 +02:00
Klaas Freitag
d1a660ce20 SocketAPI: Add parameter to enable wait for the socket write.
This is needed to wait until the UNREGISTER message is sent to the
shell code when mirall shuts down.
2014-08-20 17:33:48 +02:00
Klaas Freitag
4356005c5a FolderMan: Do not remove the folder icon too early from the map.
Otherwise, method unloadFolder can not do important frees.

This is one part of the fix for #2073 because now the socketapi will
send the UNREGISTER_PATH message over the socket.
2014-08-20 17:33:48 +02:00
Daniel Molkentin
8fdee79505 Fix crash in accountsettings 2014-08-20 16:06:38 +02:00
Klaas Freitag
988fe70771 Merge pull request #2075 from owncloud/use_folder_paused
Rework of the status icons in FolderMan and Folder objects.
2014-08-20 10:50:28 +02:00
Klaas Freitag
d02175210b Status Icon: Set a proper icon if no sync is configured.
This fixes bug #1956
2014-08-19 17:47:28 +02:00
Klaas Freitag
617887a0c6 Propagator: If the sync was interrupted by pausing, do not show error.
Handle problems which happen because of pausing the sync as soft errors
rather than normal errors which are blacklisted and displayed in the
gui.

This fixes bug #1959
2014-08-19 14:21:59 +02:00
Klaas Freitag
e4fe4cb4d3 Status icons: Display the correct icons after startup connect. 2014-08-19 14:21:59 +02:00
Klaas Freitag
dc0a054d94 Status icons: Set the offline icon at the very beginning.
Otherwise, if the account is signed out and opens the credential popup,
there is a wrong icon displayed. If the account is coming from keychain
this icon is quickly overwritten.
2014-08-19 14:21:51 +02:00
Klaas Freitag
924d9b985f Some minor cleanups. 2014-08-19 14:21:51 +02:00
Klaas Freitag
bb3bd6930a StatusModel: Have another property accountConnected.
With that , make the status model aware of the account connection state.
With that, we can grey out the correct state icon if the account is not
connected and display the normal icon if the account is connected.
2014-08-19 14:21:51 +02:00
Klaas Freitag
1245ed6f06 Status Icons: Let FolderMan only write the folder config files.
Remove the setSyncEnabled() call to individual folders which mistakenly
set the folders to pause. Let the folders keep their pause state on their
own.

If FolderMan is set to be enabled emit a general refresh signal rather
than one for each folder.
2014-08-19 14:21:51 +02:00
Klaas Freitag
01b0ee49de Status Icons: Rename the syncEnable method to isPaused.
Previously, in folder and folderman there have been the syncEnabled
properties, but they confused the semantics: While in FolderMan the
syncEnabled flag represents the network connection and stuff, in
Folder it represented if the user paused or resumed the folder.

This resulted in mixed use of both, which lead to wrong icon states.
This patch renames the folder methods and properties to isPaused to
make more clear about what it is.
2014-08-19 14:21:42 +02:00
Olivier Goffart
9c98883bea propagator mkcol: If the server replies with a file-id in the header, use it
Newer server will have a file id directly in the file header.
https://github.com/owncloud/core/issues/9000
2014-08-18 20:42:43 +02:00
Olivier Goffart
2fb19e25b5 Fix clang 3.0 compilation 2014-08-18 19:44:18 +02:00
Olivier Goffart
c291eb3db4 Fix compilation error 2014-08-18 15:45:58 +02:00
Olivier Goffart
7f38ce8908 Selective sync: the button should only be enabled while connected 2014-08-18 15:45:38 +02:00
Olivier Goffart
1781400340 fix compilation 2014-08-18 15:28:24 +02:00
Olivier Goffart
3760f14da8 Restore the log window 2014-08-18 15:16:33 +02:00
Olivier Goffart
dc18366111 DiscoveryPhase: put in namespace Mirall 2014-08-18 14:45:48 +02:00
Olivier Goffart
936252765a Merge branch 'master' into selective_sync
Conflicts:
	src/mirall/syncengine.cpp
	src/mirall/syncengine.h
2014-08-18 14:44:43 +02:00
Markus Goetz
b62b87eed3 OS X: Rename LiferayNativity code for shell icons 2014-08-18 12:57:29 +02:00
Klaas Freitag
4b716f3ea6 About page: Fix the translation of developer names. 2014-08-18 12:17:13 +02:00
Klaas Freitag
27f9d4523b Settings: Display the commit SHA both in branded and unbranded.
Also, do not put the developer names into the translation string.
2014-08-18 11:27:56 +02:00
Volkan Gezer
463a9a5485 space 2014-08-17 17:38:33 +02:00
Klaas Freitag
dccb9def3a Merge pull request #2067 from owncloud/grammar
subject verb agreement - very good, thanks.
2014-08-16 12:13:01 +02:00
Sandro Knauß
7b114e2cae Use QStandardPaths for linux if building with qt>=5 2014-08-16 03:12:20 +02:00
Volkan Gezer
25d519fed3 subject verb agreement 2014-08-15 20:49:47 +02:00
Klaas Freitag
b494181764 Nautilus Overlays: Use port 34001 by default. 2014-08-15 17:16:47 +02:00
Olivier Goffart
9575271fcd Selective sync: hide the header 2014-08-15 16:49:22 +02:00
Olivier Goffart
b6eda9076e Selective sync: add a page in the folder wizard 2014-08-15 16:40:11 +02:00
Markus Goetz
88072a985a SyncEngine & UI: Move QElapsedTimer to object
Using a function static is too dangerous when multiple threads are involved.
2014-08-15 16:20:43 +02:00
Markus Goetz
c27f151451 SyncEngine & UI: Make the function part of UpdateJob
That way we can easily emit UploadJob's signals
2014-08-15 16:11:51 +02:00
Markus Goetz
ce2741cebc SyncEngine & UI: Progress notifications for update phase
For each directory (local and remote, we have UI update throtting code)
a signal is emitted.
It is used by the settings dialog and the tray menu.
2014-08-15 15:28:35 +02:00
Daniel Molkentin
3d6b622879 Merge pull request #2064 from owncloud/fix-1959
Show folder icon a offline when account is offline
2014-08-15 15:11:06 +02:00
Daniel Molkentin
4c67a8812a Show folder icon a offline when account is offline
Fixes #1959
2014-08-15 15:01:01 +02:00
Olivier Goffart
4c4d02c0d0 Selective Sync: refactor the widget in its own class 2014-08-15 14:58:16 +02:00
Olivier Goffart
c1831f4946 Selective sync: use a black list instead of a white list 2014-08-15 12:29:10 +02:00
Olivier Goffart
4b2c1bacd1 Merge remote-tracking branch 'origin/master' into selective_sync 2014-08-15 10:28:50 +02:00
Klaas Freitag
78e50747e4 Updated the about text for the generic ownCloud Theme. 2014-08-14 17:12:23 +02:00
Klaas Freitag
b09498d852 csync journal: Improve get_below_path query.
Add another index on the pathlen column. Use that column to deselect
all rows that are shorter than the path to search files below. That
shrinks the amount of rows to examine using LIKE tremendously by
a cheaply to query for criteria.
2014-08-14 13:52:44 +02:00
Klaas Freitag
7fcf723039 SyncJournal: Add an index on inode to the journal database. 2014-08-14 13:22:43 +02:00
Klaas Freitag
d27ab8c6ca Revert "FolderMan: Proper singleton implementation."
This reverts commit 0350508b65.
2014-08-14 12:46:01 +02:00
Klaas Freitag
0350508b65 FolderMan: Proper singleton implementation.
The connect in SocketAPI had to be moved because it also uses
FolderMan::instance(). And since SocketAPI is instanciated in
FolderMans constructor, this was a deadlock.

Now the connect is tried on every new socket connection in SocketAPI
but I assume that multiple attempts to connect are not an issue.
2014-08-14 11:32:03 +02:00
Klaas Freitag
32739cc305 SyncEngine: End the journal transaction after update. 2014-08-14 11:32:02 +02:00
Klaas Freitag
f515fe77c4 SyncJournal: Fix logging text. 2014-08-14 11:32:02 +02:00
Daniel Molkentin
4fc044d368 Merge branch 'master' into move_lib_to_sep_dir
Conflicts:
	cmake/modules/NSIS.template.in
	src/CMakeLists.txt
	src/creds/shibboleth/authenticationdialog.cpp
	src/creds/shibboleth/authenticationdialog.h
	src/gui/owncloudgui.cpp
	src/libsync/creds/shibboleth/authenticationdialog.cpp
	src/libsync/creds/shibboleth/authenticationdialog.h
	src/libsync/mirallaccessmanager.cpp
	src/mirall/authenticationdialog.cpp
	src/mirall/authenticationdialog.h
2014-08-12 21:08:44 +02:00
Daniel Molkentin
1544606bf0 Always handle 401 requests, except for network jobs
It is not enough to only implement it for the QNAM returned
by the ShibbolethCredentials, because we sometimes need it
when we have no valid credentials set (and are using dummy
credentials in the course).  The main use case is the
Webview opened by Shibboleth for FBA.

But as a side-effect, we can use it to handle auth requests
from the updater and other places.
2014-08-12 19:25:59 +02:00
Olivier Goffart
255330d342 Add a "Skip Folder Configuration" button in the wizard
This allow to start owncloud the first time but not automatically sync
everything, but let the user configure sub folders instead
2014-08-12 17:34:54 +02:00
Olivier Goffart
ad139e19ab Fix error reported by address sanitizer
Qt allow to call deleteLater on a null object, but it is an undefined behaviour
2014-08-12 17:34:54 +02:00
Markus Goetz
8e6e51f9a6 OS X: Move include to MAC define 2014-08-12 14:58:34 +02:00
Markus Goetz
faa502163e OS X: Finally(?) fix stay-on-top behaviour of settings dialog
Fixes #1795
2014-08-12 14:48:42 +02:00
Olivier Goffart
4ff0e7e0a2 Silent some warnings 2014-08-12 14:03:04 +02:00
Olivier Goffart
12459bf07e selective sync: fix whitelist matching 2014-08-12 11:43:42 +02:00
Olivier Goffart
b25ef28e82 Selective sync: remember the old list when accepting the dialog even if the tree was not expanded 2014-08-12 11:12:58 +02:00
Olivier Goffart
7e009667a2 Selective sync: ignore the files that are not in the selective sync white list 2014-08-11 18:42:24 +02:00
Olivier Goffart
1f1eb933d1 Move the update job in a new file named discoveryphase
"Discovery" is a better name than "update"
2014-08-11 18:42:24 +02:00
Olivier Goffart
aa85e875bd Selective sync: Add UI to select paths 2014-08-11 18:42:24 +02:00
Daniel Molkentin
1b4c613fa6 ProtocolWidget: Disable copy button if widget is empty. 2014-08-11 16:38:51 +02:00
Markus Goetz
8cd1d43798 TokenCredentials: Don't overwrite Cookie header
If the request already had a cookie header, there was a reason for it.
Don't blindly overwrite it.
2014-08-11 15:40:12 +02:00
Markus Goetz
acd3df33b6 Merge branch 'long_running_put' into il 2014-08-08 12:00:26 +02:00
Markus Goetz
1bc8fd9b49 CMake: Don't need translations with token auth compile 2014-08-08 11:59:14 +02:00
Klaas Freitag
6cb8134690 SocketAPI: Use Win32 function SHChangeNotify to notify Explorer. 2014-08-07 14:59:06 +02:00
Olivier Goffart
95a77e5ccc Merge branch 'il' 2014-08-07 14:29:27 +02:00
Olivier Goffart
21783ecef7 SyncEngine: fix permission detection of moves
Two problems:
- "M" was used instead of "V"
- The extraction of the parent folder of the destination was wrong
2014-08-07 14:27:27 +02:00
Klaas Freitag
d8a8b53fc9 SocketAPI: Also update view when paused. 2014-08-07 14:07:08 +02:00
Olivier Goffart
6827f9977c Merge branch 'il'
Conflicts:
	doc/ocdoc
2014-08-07 12:15:50 +02:00
Olivier Goffart
6d24bd0361 journaldb: Fix that fileid might be missing in the db
When recovering from a inalid move operation, we call
avoidReadFromDbOnNextSync. This will remove the fileid from the db so
we don't detect a move on the next sync.  But we want the next sync to fetch
the file id again, and this can only happen if we don't read them
from the db and do the actual PROPFIND, this is done by avoidReadFromDbOnNextSync

However, if there is propagation in that source directory later, it
will overide the invalid etag with the real one and we will not uissue the PROPFIND
to fetch the fileid.
We must therefore also protect the future write to the DB when calling
avoidReadFromDbOnNextSync
2014-08-07 12:14:45 +02:00
Markus Goetz
22c1629dd3 SyncEngine: Keep csync_journal with proper values for fileId and remotePerm
Before this patch, we had a lot of empty rows because we created
the SyncFileItems with the wrong(=local) data.
2014-08-07 10:14:14 +02:00
Olivier Goffart
55567f8dd2 remove unused variable 2014-08-06 10:20:58 +02:00
Daniel Molkentin
996b7166d2 Merge pull request #2027 from owncloud/l10n-fix
Use am. eng. since brit. eng. is handled on transifex
2014-08-05 14:11:20 +02:00
Daniel Molkentin
839b2fa8fd SocketAPI: Convert to unix path before comparing with black list 2014-08-05 13:11:52 +02:00
Markus Goetz
c313cc02f2 Config: Fix loading of configuration
There is a strange bug with Qt, we need to always set the application name, then
we can generate the proper config path.
2014-08-05 00:41:43 +02:00
Klaas Freitag
f983264b5d SocketAPI: Do not allow a trailing slash for directories.
The entries in our sync journal have no trailing slashes for directories.
2014-08-04 12:47:22 +02:00
Klaas Freitag
40cebeedfc SocketAPI: Call csync_exclude with the relative path.
This avoids messing with the windows pathes and csync_exclude is
designed that way.
2014-08-04 12:47:22 +02:00
Klaas Freitag
1f9280c68e GUI: Remove useless comment. 2014-08-04 12:47:22 +02:00
Klaas Freitag
4fb671e7f4 SocketAPI: Send Broadcasts only for Linux, not used on Mac and Win. 2014-08-04 11:09:17 +02:00
Volkan Gezer
a42e384935 Use am. eng. since brit. eng. is handled on transifex
See https://github.com/owncloud/core/pull/10025#issuecomment-50855986 for info.
2014-08-02 04:05:10 +02:00
Klaas Freitag
327f70240c GUI: Load the finder overlay icon script on MacOSX. 2014-08-01 14:28:34 +02:00
Klaas Freitag
fe9a2e7ba4 SocketAPI: Normalize file names when read from the filesystem.
Otherwise there will be bad encoded file names because of a Qt
upstream error that skips the normalization.
2014-08-01 12:18:52 +02:00
Klaas Freitag
3c09ef6cbf SocketAPI: rename slot to send UPDATE_VIEW. 2014-08-01 10:59:49 +02:00
Klaas Freitag
68bfcf5d24 SocketAPI: Create the socket API instance in folderman. 2014-08-01 10:59:49 +02:00
Klaas Freitag
b2a10de71a Copyright plus minor beautification. 2014-08-01 10:59:49 +02:00
Olivier Goffart
cfdfd6a860 wizard: don't call initializePage
It is called automatically by QWizard and do not need to be called explicitly

But setVisibla(false) don't really have an effect there since show() is going
to be called on the page
2014-07-30 12:36:30 +02:00
Olivier Goffart
8df14ee845 Long running put: fix some bugs 2014-07-29 22:56:36 +02:00
Olivier Goffart
550d6d66d1 Long Running Put: Better error reporting 2014-07-29 15:51:22 +02:00
Olivier Goffart
7480d34742 Long Running Put: store into the database so they can be resumed at startup 2014-07-28 15:37:37 +02:00
Olivier Goffart
5254c9785c shibboleth: Fix connection when the URL do not have a path
When the url do not have a path (for example: "http://example.com" as
opposed to "http://example.com/"),  its path is not a prefix of the
root path of the cookie (usually '/')

By adding the dav path, we make sure the URL has a path.

This made a bug when the owncloud url was just a domain name and did not
have a path
2014-07-28 13:50:24 +02:00
Olivier Goffart
04cc513bbd Poll for long running PUT: WIP
Some PUT, may take a long time on the server to process (for example, the
last chunk). It may take more time that the timeout.
So in that case the server may reply with an url that we can poll for the etag

This patch is still work in progress
2014-07-25 13:30:48 +02:00
Markus Goetz
f004d5085d Merge remote-tracking branch 'origin/1.6' into il
Conflicts:
	VERSION.cmake
2014-07-25 12:37:27 +02:00
Klaas Freitag
98e21ae0ad SocketAPI: Connect REGISTER_FOLDER to Foldermans events. 2014-07-25 12:20:38 +02:00
Klaas Freitag
8b93678e3d SocketAPI: Added REGISTER_PATH and UNREGISTER_PATH
to inform the plugins about the top sync directories.

Also cleaned the code a bit.
2014-07-25 12:11:21 +02:00
Olivier Goffart
3d0c009719 propagator_qnam: Limit the HTTP buffer size when downloading
Otherwise the buffer might fill up too quickly and get too large and consume
too much memory which could lead to crash in extreme cases

Should fix issue #1974
2014-07-24 15:43:28 +02:00
Olivier Goffart
208011f6ab propagator_qnam: add debug output in cae the file changed localy
In order to debug https://github.com/owncloud/core/issues/9781
2014-07-24 11:17:59 +02:00
Klaas Freitag
1fb52f0d8b HTTPCreds: Do delete the WritePasswordJob to not leak memory. 2014-07-23 17:59:02 +02:00
Klaas Freitag
d4de024f15 Propagator: Fix local file name clash detection.
Need to normalize the output of QFileInfo::canonicalFilePath() before
comparing to a server side path.
See https://bugreports.qt-project.org/browse/QTBUG-39622

This fixes #1998 and #1999
2014-07-23 17:56:46 +02:00
Olivier Goffart
1d9d88ca85 Always use the dummy crendential while trying to determine the credentials
Otherwise the SHibbolethCredential may be set and it has hook to intercept 401

This should fix issue #1908
2014-07-23 14:38:50 +02:00
Eran
2ca8805cda Removed uneed code 2014-07-23 15:09:28 +03:00
Eran
8e5c41e6f3 Merge https://github.com/owncloud/mirall into fix_folder_status_ui_ignore_new_line_inoverall_text 2014-07-23 13:53:05 +03:00
Eran
0f7efbc22e fixed bug where the overall text caused in the folder view the to defrom 2014-07-23 13:52:02 +03:00
Klaas Freitag
0f4cf74ae0 SyncEngine: allow to do a post upgrade script in debug mode. 2014-07-22 18:07:02 +02:00
Olivier Goffart
8a88ca6f34 Merge branch 'il'
Conflicts:
	src/mirall/propagator_legacy.h
2014-07-18 17:00:38 +02:00
Olivier Goffart
81d786733d Merge remote-tracking branch 'origin/1.6' into il
Conflicts:
	VERSION.cmake
	src/mirall/propagator_qnam.cpp
	src/mirall/propagator_qnam.h
2014-07-18 16:59:29 +02:00
Olivier Goffart
beb9300b4e network limit: Never wait more than 10 seconds
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
2014-07-18 12:27:02 +02:00
Olivier Goffart
c35880d4f1 Fix corruption while trying to resume and the server don't suport it
Issue #1982
2014-07-18 12:03:45 +02:00
Klaas Freitag
f8bea55b10 SocketAPI: Handle top sync folder correctly. 2014-07-17 19:34:50 +02:00
Daniel Molkentin
72cd84e878 SocketAPI: Exclude drive part from path blacklist check
Otherwise, it always matches the ':' part
2014-07-17 19:26:58 +02:00
Daniel Molkentin
35b6d09615 SocketAPI: Fix separators on Windows 2014-07-17 17:41:20 +02:00
Daniel Molkentin
1ae727e70f SocketAPI: Emit error of binding the server fails 2014-07-17 15:01:01 +02:00
Daniel Molkentin
0e5d0c1170 SocketAPI: Some cleaning up 2014-07-17 15:00:21 +02:00
Daniel Molkentin
bb32831a60 Merge remote-tracking branch 'origin/master' into move_lib_to_sep_dir
Conflicts:
	src/gui/folderman.cpp
2014-07-17 11:31:45 +02:00
Klaas Freitag
743c1c2eda SocketAPI: Send an UPDATE_VIEW to the shell plugin on connect.
For each configured sync folder send an UPDATE_VIEW directly after
the socket connect to make the shell integration updating the view.
2014-07-17 11:26:03 +02:00
Klaas Freitag
0e9a08cbbf SocketAPI: rename slot to send UPDATE_VIEW. 2014-07-17 11:25:08 +02:00
Klaas Freitag
d2445ec72d PropagatorQNAM: Never send if-match header for new files. 2014-07-17 11:23:11 +02:00
Klaas Freitag
fef713aaed SocketAPI: Create the socket API instance in folderman. 2014-07-17 11:22:18 +02:00
Klaas Freitag
c4d73688a6 Folderman: Fix path detection in folderForPath(). 2014-07-17 11:21:02 +02:00
Daniel Molkentin
56b721b2eb propagator_qnam: fix warning 2014-07-17 11:05:16 +02:00
Klaas Freitag
e6c501de8e FolderMan: More useful logging. 2014-07-16 16:59:20 +02:00
Klaas Freitag
71338000a4 SetupWizard: Keep initial local folder to compare later for changes.
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.
2014-07-16 11:37:46 +02:00
Olivier Goffart
2fdb3cfdfb Merge branch 'il'
Conflicts:
	src/mirall/folder.cpp
	src/mirall/propagator_qnam.cpp
2014-07-16 10:49:16 +02:00
Olivier Goffart
8961e61f60 Merge branch '1.6' into il
Conflicts:
	VERSION.cmake
	src/mirall/syncengine.cpp
	src/mirall/syncengine.h
2014-07-16 09:57:40 +02:00
Olivier Goffart
d697969f36 Use another way to detect that the server was reconfigured
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
2014-07-15 18:09:08 +02:00
Olivier Goffart
51e9c5fd96 propagator_qnam Fix signal slot connection
Fix the signature so it can be connected

This was hapenning if the derver does not support X-OC-MTime

issue #1963
2014-07-15 18:08:26 +02:00
Klaas Freitag
997504c03c FolderMan: Unload folder method added.
unloadFolder now correctly removes a folder from all maps and signal
mappers.
2014-07-15 16:07:23 +02:00
Markus Goetz
0202351a27 Propagator: Fix crash when logging out during upload
Fixes #1957
2014-07-14 19:53:42 +02:00
Daniel Molkentin
28879712e9 Make krazy target work again 2014-07-14 12:19:32 +02:00
Daniel Molkentin
3c2e43d883 Merge remote-tracking branch 'origin/master' into move_lib_to_sep_dir 2014-07-14 10:50:53 +02:00
Daniel Molkentin
5041880854 Try to handle BUILD_LIBRARIES_ONLY correctly
Also, try to fix OS X build
2014-07-11 12:36:01 +02:00
Klaas Freitag
a281b36d6f SocketAPI: send the path with UPDATE_VIEW 2014-07-11 12:34:04 +02:00
Klaas Freitag
7772501cdf Remove unused socketPath variable. 2014-07-11 12:33:43 +02:00
Daniel Molkentin
2c904afd04 OS X explicitly requires the neon include path to be set 2014-07-11 12:11:04 +02:00
Daniel Molkentin
2cc13fb74a Fix includes in mac specific headers 2014-07-11 11:38:01 +02:00
Daniel Molkentin
df3c3bca02 Split into three separate projects: library, gui and cmd 2014-07-11 11:07:31 +02:00
Daniel Molkentin
d1b991e198 Fix windows compilation 2014-07-10 22:58:58 +02:00
Klaas Freitag
00f793a841 CMake: Remove accidentially added typo to fix build. 2014-07-10 17:20:40 +02:00
Klaas Freitag
bdb9598227 SocketAPI: Use QTcpSocket all over, rather than QLocalSocket. 2014-07-10 16:35:18 +02:00
Klaas Freitag
c6deb392fd SocketAPI: Enhance SyncFileStatus to have share information.
Added a new class SyncFileStatus to reflect that properly.
2014-07-10 16:28:40 +02:00
Olivier Goffart
3477ea0eeb Fix build with TOKEN_ONLY_AUTH
It was broken by commit 6ff38d8005
2014-07-10 15:26:55 +02:00
Olivier Goffart
73e35c66af owncloudcmd: fix the --trust option
We can't call csync_set_userdata in owncloudcmd because it is
going to be overwritten later in the SyncEngine.
So we had an object of type SyncEngine* that we cast to CmdOptions*
and the trust flag was in the padding, so was some random data.

Therefore we must use global variables in that case in order to
know if we should ignore the certificate.
2014-07-10 11:19:23 +02:00
Olivier Goffart
846773efd3 Define Q_DECL_OVERRIDE for Qt4
That macro is new in Qt5, define it as well when compiling with Qt4
so we can use it in mirall

Note: QNetworkCookieJar::deleteCookie was not existing in Qt4.
2014-07-09 23:31:56 +02:00
Olivier Goffart
bcfa34357b Add Q_DECL_OVERRIDE for all function that are overriding something
This was made automatically with
clang-modernize -override-macros -add-override
2014-07-09 23:31:56 +02:00
Olivier Goffart
e0c2e8ed86 folder: remove TOKEN_AUTH_ONLY
Folder is no longer in the libowncloudsync
2014-07-09 22:44:08 +02:00
Olivier Goffart
b80a3876ab cleanup the CMakeLists.txt
Headers need not to be added if they are not going to be installed
The list was incomplete anyway, and most of the _HEADERS variables
were even not used
2014-07-09 22:44:08 +02:00
Olivier Goffart
26e17f58ef Engine: Do not reset the csync log callback in the engine
It is already set in Folder and we don't want to use the Logger
in command line clients
2014-07-09 22:44:08 +02:00
Olivier Goffart
45d1567057 Move Folder, FolderMan, and FolderWatcher outside of owncloudsync
Those class are maintaining the folder for the mirall configuration
They are not usefull in command line clients

Also the FolderWatcher is only used by the folder and not used by the
command line clients
2014-07-09 22:44:08 +02:00
Olivier Goffart
8aacb3f7ec Remove undeeded include 2014-07-09 22:44:08 +02:00
Olivier Goffart
99ee81a489 Utility: Move showInFileManager in its own file
And get rid of GUI in the Utility namespace
2014-07-09 22:44:08 +02:00
Olivier Goffart
517ffbd783 Utility: remove Utility::dataLocation
It is used only from one location, so put the code there
2014-07-09 22:44:08 +02:00
Olivier Goffart
7dd926d4f1 Utility: move raiseDisalog to owncloudGui
Reduce the GUI dependency in the Utility namespace used by libowncloudsync
2014-07-09 22:44:08 +02:00
Olivier Goffart
cbc7942a00 Added t8.pl that test case sensitivity issues
Made some change in the .cpp code in order to be able to test
the code when the file system is case sensitive
2014-07-09 22:44:08 +02:00
Olivier Goffart
63cd5ef563 ProtocolWidget: limit the number of items
That should save memory instead of letting the number of items grow
to infinity
2014-07-09 15:48:03 +02:00
Olivier Goffart
82c254fecf propagator_qnam: Avoid using too much memory
The idea here was that the buffer would be maximum 8KiB, not minimum.
2014-07-08 15:30:53 +02:00
Olivier Goffart
86bea9a9af shibboleth: Fix the waiting curser that would not disapear
Fix #1915
2014-07-07 14:08:13 +02:00
Klaas Freitag
88f26fb548 HTTP Creds: In case of Keychain error, open the interact password dialog
But in case the user clicks cancel in the interactive dialog, invalidate
the credentials. Emit fechted() also in error case.
2014-07-04 13:27:35 +02:00
Klaas Freitag
a9f1de84f0 HTTP Credentials: Read the password from the old location if not found.
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.
2014-07-04 13:27:22 +02:00
Olivier Goffart
081b7d4aa9 Merge pull request #1913 from owncloud/typo-fix
Typo fix
2014-07-01 20:39:30 +02:00
Olivier Goffart
9c3c4bac66 Merge remote-tracking branch 'origin/il' 2014-07-01 20:37:42 +02:00
Daniel Molkentin
ad2eabeb3b SocketAPI: Try to make the folder selection work on windows 2014-07-01 16:24:14 +02:00
Daniel Molkentin
26c377d05b Utility: export new functions 2014-06-30 14:13:45 +02:00
Volkan Gezer
3ad9356ca4 Typo fix 2014-06-29 14:14:44 +02:00
Volkan Gezer
dd5296f03c Typo fix
Suggested by [mnestis](https://www.transifex.com/accounts/profile/mnestis/)
2014-06-29 14:06:45 +02:00
Volkan Gezer
e673d76f22 Typo fix
Suggested by [mnestis](https://www.transifex.com/accounts/profile/mnestis/)
2014-06-29 14:04:30 +02:00
Volkan Gezer
393eb7bb4d Typo fix
Suggested by [mnestis](https://www.transifex.com/accounts/profile/mnestis/)
2014-06-29 14:02:50 +02:00
Daniel Molkentin
f8b097669a Merge remote-tracking branch 'origin/1.6'
Conflicts:
	VERSION.cmake
	doc/building.rst
2014-06-27 15:34:20 +02:00
Olivier Goffart
2f284209d8 Permissions: When moving is not allowed, fallback to delete and upload
We decided that we never want to rename a directory behind the
back of the user as the user may be using files in the directory
during the sync.
If moving is not allowed, we just erase the inode form the database so
the next sync will try to do an upload and delete and recover from there
using normal resolution.

This also add some code to update the inode back to the db when it is detected
as changed.
2014-06-27 15:30:08 +02:00
Olivier Goffart
09881040a3 Permissions: fix restoring subdirectories
The sync item vector must be sorted before we call checkForPermission
2014-06-27 13:34:15 +02:00
Klaas Freitag
e76386be4f Revert "ownCloudcmd: Use Account object and ConnectionValidator."
We decided that owncloudcmd should not share the config with mirall.
This reverts commit 5f96de32bb.
2014-06-26 10:16:56 +02:00
Olivier Goffart
48864a6921 httpcredentials: Remove useless mutex
The mutex is not shared with any thread, so it is totaly useless.

Yes: there are possible races here. (with the account, but also with the
user and password)
2014-06-25 12:15:30 +02:00
Olivier Goffart
92f07cb60f Enable C++11
In order to avoid the warning
 warning: anonymous variadic macros were introduced in C99
Due to the use of variadic macro in the qDebug macro in Qt 5.3

C++11 requires a space between string literal and macro to avoid the
ambiguity with user defined litteral
2014-06-25 12:01:27 +02:00
Klaas Freitag
e17243bc1f AccountMigrator: Read path from QDir::fromNativeSeperators(), add debug. 2014-06-25 11:38:08 +02:00
Klaas Freitag
0e45dd7a3d AccountMigrator: Do not inherit from QObject as it is not needed yet.
As requested by Danimos review.
2014-06-25 11:38:08 +02:00
Klaas Freitag
65f313f1b4 Account: Added missing include statement. 2014-06-25 11:38:08 +02:00
Klaas Freitag
da4958c716 Account: Read settings from ownCloud config if no branded exists.
If there is not yet a config for a branded client, but one for the
"normal" client targetting the same URL, it will be migrated.
2014-06-25 11:38:08 +02:00
Klaas Freitag
653b8494f5 FolderMan: Migrate folderlist if no folder definitions can be found
and the account indicates that it was migrated. In that case,
read the folder definitions from the ownCloud config directory.
2014-06-25 11:38:08 +02:00
Klaas Freitag
6ed6f84f6e Account: Add a wasMigrated flag.
If an account in a branded client was migrated from a former ownCloud
configuration, the method wasMigrated() will return true.
2014-06-25 11:38:08 +02:00
Klaas Freitag
ff0ba56bc3 ownCloud Theme: Implement appName() and appNameGUI(). 2014-06-25 11:38:08 +02:00
Klaas Freitag
e795d04f30 cfg migration: Add a account migrator class. 2014-06-25 11:38:08 +02:00
Klaas Freitag
8d3806b080 folderman: make escapeAlias public as its now used in accountmigrator. 2014-06-25 11:38:08 +02:00
Klaas Freitag
5597ebe455 Account: Add a scoped pointer to the ownCloud theme. 2014-06-25 11:38:07 +02:00
Klaas Freitag
5f96de32bb ownCloudcmd: Use Account object and ConnectionValidator.
That reads the credentials from the mirall config file if it was not
defined on the command line. Moreover, the connection is validated
before, which sets up the credentials properly.
2014-06-24 15:33:42 +02:00
Klaas Freitag
d2436ce23d Networkjobs: Check if reply body is empty before parsing.
This avoids a false warning that the result is not valid JSON.
2014-06-24 15:17:33 +02:00
Olivier Goffart
fbadadc377 propagator: Fix folder duplication if the folder is renamed on the server while uploading
While uploading a new folder, if the folder is renamed on the server
when still uploading, the result will be that the files that are already
uploaded will end up in the new filder name, but the file that were
not still are in the old folder.

After renaming, all the new uploads wil fail with an error on this sync
because the parent directory don't exist.
But they were uploaded with the old name in the next sync because
the renaming was not detected because the file id was not in the DB

Fix the problem by fetching the file id always when creating a new
directory, on the next sync, and saving it in the database ummediatly

https://github.com/owncloud/enterprise/issues/191
2014-06-24 12:00:13 +02:00
Olivier Goffart
9adc30ab9f Shibboleth: keep the cookie from the wizard to the ShibolethCredentials
Otherwise the user is asked twice for autentication on first sync.

Fixes https://github.com/owncloud/enterprise/issues/193
2014-06-24 11:44:52 +02:00
Olivier Goffart
94ddf7e5d8 Merge remote-tracking branch 'origin/il' 2014-06-24 08:40:27 +02:00
Olivier Goffart
b735dc07d6 Permissions: Consider and empty remotePerms from csync as NULL
Since remotePerm from csync is never NULL (as it is a buffer),
we consider that if it is empty, there was no permission set
(and therefore everything is allowed)

csync will put a space in the permission if any permission was set
2014-06-23 15:05:48 +02:00
Olivier Goffart
68c902e60b propagator: Fix restoring directory
If the result of a restored directory is SoftError, this prevent
to sync the rest of the directory

Therefore, we introduced a new status Restored,  which means that
the job was a success, but is a restoration and therefore should be
seen as a warning
2014-06-23 13:56:17 +02:00
Olivier Goffart
e19214c3c4 permissions: record them even if the instruction is NONE
when the instruction is NONE, we may return from this function
before having registered the permission in the SyncEngine::_remotePerms
hash.
Move the code a bit up.
2014-06-23 13:35:34 +02:00
Olivier Goffart
4759429702 Fix compilation after merge
Some initializer were added in 1.6 for variable that are gone in master
2014-06-23 12:53:51 +02:00
Olivier Goffart
b626589c07 Merge branch 'il'
Conflicts:
	src/mirall/folderstatusmodel.h
2014-06-23 12:52:03 +02:00
Olivier Goffart
02704cdf74 Merge remote-tracking branch 'origin/1.6' into il
Conflicts:
	VERSION.cmake
	csync/src/csync_statedb.c
	src/mirall/syncengine.cpp
	src/mirall/syncfileitem.h
2014-06-23 12:48:34 +02:00
Daniel Molkentin
7a8a3855b8 Mac: Make <ESC> close the settings dialog again 2014-06-20 16:37:07 +02:00
Daniel Molkentin
603a238eb9 Disable minimize button for Preferences on Mac 2014-06-20 16:31:17 +02:00
Olivier Goffart
b7b6cf4b3f Shibboleth: Always ask for the password if we are going to open the log window
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.
2014-06-20 16:25:35 +02:00
Daniel Molkentin
485a6926c5 FancyLineEdit: initialize all members
This fixes Coverity CID 12912
2014-06-20 13:46:57 +02:00
Daniel Molkentin
f3de6f46db Folder: Removed unused member _pathWatcher
This fixes Coverity CID 12914
2014-06-20 13:42:26 +02:00
Daniel Molkentin
1309dc27d9 Remove previously unused member
This fixes Coverity CID 12915
2014-06-20 13:40:55 +02:00
Daniel Molkentin
31469d6a3e Folderwizard: Properly initialize all members
This fixes coverity CID 12916
2014-06-20 13:38:36 +02:00
Daniel Molkentin
88776770f7 Legacy Propagator: Properly initialize members
This fixes coverity CID 12919
2014-06-20 13:36:15 +02:00
Daniel Molkentin
bbf8b9f8dd syncengine: properly initialize all members in ctor
This fixes Coverity CID 12922
2014-06-20 13:28:52 +02:00
Daniel Molkentin
6ff38d8005 Cleanup member initialization in Theme
This fixes coverity issue 12925
2014-06-20 13:28:52 +02:00
Daniel Molkentin
6d13b5cc43 wizard setuppage: Clean up and properly initialize members
This fixes Coverity CID 12926
2014-06-20 13:28:52 +02:00
Daniel Molkentin
73ab2804c4 owncloudwizard: properly initialize _account memember
This fixes Coverity CID 12927
2014-06-20 13:28:52 +02:00
Klaas Freitag
d995d1190f SyncFileItem: Some more proper member initializations.
This fixes a Coverity CID
2014-06-20 12:54:46 +02:00
Klaas Freitag
3217e42a0f SyncJournalDB: Initialize size member properly with 0
This fixes Coverity CID 12924
2014-06-20 12:37:49 +02:00
Klaas Freitag
1dd58a537e owncloudcmd: Fix structurally dead code.
This fixes Coverity CID 12928
2014-06-20 12:34:15 +02:00
Olivier Goffart
3e916cfbb9 remove unused member
CID 12915
CID 12926
2014-06-20 12:08:58 +02:00
Olivier Goffart
4a9ad14e11 Folder: remove unused variable
CID 12914
2014-06-20 12:01:20 +02:00
Olivier Goffart
f80816d88f SyncEngine: silence coverity issue 12885
It was complaining that we use the context later in the function
but the csync context should never be null anyway
2014-06-20 11:53:22 +02:00
Olivier Goffart
61ad376bf4 accountsettings: silent coverity warning 12884
We use f anyway, so if we are going to test if it's null we can as
well return
2014-06-20 11:51:07 +02:00
Olivier Goffart
1e788d3d60 folderwizard: fix possible use of null pointer
Coverity issue 12907
2014-06-20 11:29:28 +02:00
Olivier Goffart
83171bf025 accountsettings: remove unused function
It was moved into owncloudgui before
And it was broken (bad use of QUrl and use of null pointer
2014-06-20 11:27:37 +02:00