Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/owncloud/client.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorKlaas Freitag <freitag@owncloud.com>2014-10-11 14:21:26 +0400
committerKlaas Freitag <freitag@owncloud.com>2014-10-11 14:21:26 +0400
commit8eaeba6486a30dbbbe474e6425b488ec7d8aa3a1 (patch)
tree32edfa47b13e048a24c31652c2ab542edd9549e8 /src/owncloudcmd
parent631e67949e1c96efdf50e15b8b177228b85c315f (diff)
owncloudcmd: Fix url handling with csync, make owncloudcmd sync again.
This fixes mirall issue #2211
Diffstat (limited to 'src/owncloudcmd')
-rw-r--r--src/owncloudcmd/owncloudcmd.cpp10
1 files changed, 8 insertions, 2 deletions
diff --git a/src/owncloudcmd/owncloudcmd.cpp b/src/owncloudcmd/owncloudcmd.cpp
index 23e396448..07ffa5178 100644
--- a/src/owncloudcmd/owncloudcmd.cpp
+++ b/src/owncloudcmd/owncloudcmd.cpp
@@ -226,7 +226,7 @@ int main(int argc, char **argv) {
parseOptions( app.arguments(), &options );
- QUrl url = QUrl::fromUserInput(options.target_url);
+ QUrl url = QUrl::fromUserInput(options.target_url);
// Order of retrieval attempt (later attempts override earlier ones):
// 1. From URL
@@ -274,11 +274,15 @@ int main(int argc, char **argv) {
url.setPassword(password);
}
+ // take the unmodified url to pass to csync_create()
+ QByteArray remUrl = options.target_url.toUtf8();
+
Account account;
// Find the folder and the original owncloud url
QStringList splitted = url.path().split(account.davPath());
url.setPath(splitted.value(0));
+
url.setScheme(url.scheme().replace("owncloud", "http"));
QString folder = splitted.value(1);
@@ -295,8 +299,9 @@ int main(int argc, char **argv) {
restart_sync:
CSYNC *_csync_ctx;
+
if( csync_create( &_csync_ctx, options.source_dir.toUtf8(),
- url.toEncoded().constData()) < 0 ) {
+ remUrl.constData()) < 0 ) {
qFatal("Unable to create csync-context!");
return EXIT_FAILURE;
}
@@ -359,6 +364,7 @@ restart_sync:
OwncloudCmd owncloudCmd;
SyncJournalDb db(options.source_dir);
+
SyncEngine engine(_csync_ctx, options.source_dir, QUrl(options.target_url).path(), folder, &db);
QObject::connect(&engine, SIGNAL(finished()), &app, SLOT(quit()));
QObject::connect(&engine, SIGNAL(transmissionProgress(Progress::Info)), &owncloudCmd, SLOT(transmissionProgressSlot()));