From 9eec45f9c4fc04b56f712364c75332a451906b16 Mon Sep 17 00:00:00 2001 From: Klaas Freitag Date: Thu, 10 Sep 2015 16:03:22 +0200 Subject: [PATCH] SetupPage: Fix crash caused by uninitialized Account object. Since the webdav path is read from account now, it needs to be initialized first thing. --- src/gui/wizard/owncloudsetuppage.cpp | 20 +++++++++++--------- 1 file changed, 11 insertions(+), 9 deletions(-) diff --git a/src/gui/wizard/owncloudsetuppage.cpp b/src/gui/wizard/owncloudsetuppage.cpp index 616caa007..d3ea76b32 100644 --- a/src/gui/wizard/owncloudsetuppage.cpp +++ b/src/gui/wizard/owncloudsetuppage.cpp @@ -45,6 +45,7 @@ OwncloudSetupPage::OwncloudSetupPage(QWidget *parent) _progressIndi(new QProgressIndicator (this)) { _ui.setupUi(this); + _ocWizard = qobject_cast(parent); Theme *theme = Theme::instance(); setTitle(WizardCommon::titleTemplate().arg(tr("Connect to %1").arg(theme->appNameGUI()))); @@ -66,7 +67,6 @@ OwncloudSetupPage::OwncloudSetupPage(QWidget *parent) connect(_ui.leUrl, SIGNAL(editingFinished()), SLOT(slotUrlEditFinished())); addCertDial = new AddCertificateDialog(this); - _ocWizard = qobject_cast(parent); connect(_ocWizard,SIGNAL(needCertificate()),this,SLOT(slotAskSSLClientCertificate())); } @@ -106,14 +106,16 @@ void OwncloudSetupPage::slotUrlChanged(const QString& url) if (url.endsWith("index.php")) { newUrl.chop(9); } - QString webDavPath = _ocWizard->account()->davPath(); - if (url.endsWith(webDavPath)) { - newUrl.chop( webDavPath.length() ); - } - if( webDavPath.endsWith(QLatin1Char('/')) ) { - webDavPath.chop(1); // cut off the slash - if( url.endsWith(webDavPath)) { - newUrl.chop(webDavPath.length()); + if( _ocWizard && _ocWizard->account() ) { + QString webDavPath = _ocWizard->account()->davPath(); + if (url.endsWith(webDavPath)) { + newUrl.chop( webDavPath.length() ); + } + if( webDavPath.endsWith(QLatin1Char('/')) ) { + webDavPath.chop(1); // cut off the slash + if( url.endsWith(webDavPath)) { + newUrl.chop(webDavPath.length()); + } } } if (newUrl != url) { -- 2.30.2