summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRafael Roquetto <rafael.roquetto@kdab.com>2013-11-29 19:28:04 -0200
committerRafael Roquetto <rafael.roquetto@kdab.com>2013-12-06 12:15:12 +0100
commit07da6325a80442ac75c76c083643f2e53c6a3a17 (patch)
treed68b90218707f76297d42de7c46c7f46cf14c375
parent312d032a7bfccc3bbd933c92dc89d730af59616f (diff)
downloadqt-creator-07da6325a80442ac75c76c083643f2e53c6a3a17.tar.gz
BlackBerry: do not show invalid password message
Do not show "Invalid password" dialog when the user has actually pressed "Cancel" upon prompting for the certificate password or csk password dialog, and make sure the "overwrite" dialog does not appear after a failed attempt to request a debug token. Change-Id: Id9aa78ab3517249df5bd3b4c2d1e0fd2032c3c0b Reviewed-by: Tobias Hunger <tobias.hunger@digia.com>
-rw-r--r--src/plugins/qnx/blackberrydebugtokenrequestdialog.cpp24
-rw-r--r--src/plugins/qnx/blackberrysetupwizard.cpp14
-rw-r--r--src/plugins/qnx/blackberrysigningutils.cpp35
-rw-r--r--src/plugins/qnx/blackberrysigningutils.h6
4 files changed, 65 insertions, 14 deletions
diff --git a/src/plugins/qnx/blackberrydebugtokenrequestdialog.cpp b/src/plugins/qnx/blackberrydebugtokenrequestdialog.cpp
index a2c824ec02..8585cec354 100644
--- a/src/plugins/qnx/blackberrydebugtokenrequestdialog.cpp
+++ b/src/plugins/qnx/blackberrydebugtokenrequestdialog.cpp
@@ -143,9 +143,24 @@ void BlackBerryDebugTokenRequestDialog::requestDebugToken()
BlackBerryConfigurationManager &configuration = BlackBerryConfigurationManager::instance();
+ bool ok;
+ const QString cskPassword = m_utils.cskPassword(this, &ok);
+
+ if (!ok) {
+ setBusy(false);
+ return;
+ }
+
+ const QString certificatePassword = m_utils.certificatePassword(this, &ok);
+
+ if (!ok) {
+ setBusy(false);
+ return;
+ }
+
m_requester->requestDebugToken(m_ui->debugTokenPath->path(),
- m_utils.cskPassword(this), configuration.defaultKeystorePath(),
- m_utils.certificatePassword(this), m_ui->devicePin->text());
+ cskPassword, configuration.defaultKeystorePath(),
+ certificatePassword, m_ui->devicePin->text());
}
void BlackBerryDebugTokenRequestDialog::setDefaultPath()
@@ -235,6 +250,11 @@ void BlackBerryDebugTokenRequestDialog::debugTokenArrived(int status)
break;
}
+ QFile file(m_ui->debugTokenPath->path());
+
+ if (file.exists())
+ file.remove();
+
QMessageBox::critical(this, tr("Error"), errorString);
setBusy(false);
diff --git a/src/plugins/qnx/blackberrysetupwizard.cpp b/src/plugins/qnx/blackberrysetupwizard.cpp
index dc0a2c2302..26fd3191ef 100644
--- a/src/plugins/qnx/blackberrysetupwizard.cpp
+++ b/src/plugins/qnx/blackberrysetupwizard.cpp
@@ -215,6 +215,13 @@ void BlackBerrySetupWizard::debugTokenArrived(int status)
break;
}
+ BlackBerryConfigurationManager &configuration = BlackBerryConfigurationManager::instance();
+
+ QFile dt(configuration.defaultKeystorePath());
+
+ if (dt.exists())
+ dt.remove();
+
QMessageBox::critical(this, tr("Error"), errorString);
reset();
@@ -405,8 +412,13 @@ void BlackBerrySetupWizard::requestDebugToken()
BlackBerryConfigurationManager &configuration = BlackBerryConfigurationManager::instance();
+ bool ok;
+ const QString cskPassword = m_utils.cskPassword(this, &ok);
+ if (!ok)
+ return;
+
m_requester->requestDebugToken(configuration.defaultDebugTokenPath(),
- m_utils.cskPassword(this), configuration.defaultKeystorePath(), certificatePassword(), m_devicePin);
+ cskPassword, configuration.defaultKeystorePath(), certificatePassword(), m_devicePin);
}
void BlackBerrySetupWizard::uploadDebugToken()
diff --git a/src/plugins/qnx/blackberrysigningutils.cpp b/src/plugins/qnx/blackberrysigningutils.cpp
index 0e1ee888f9..f9fb2b8cf0 100644
--- a/src/plugins/qnx/blackberrysigningutils.cpp
+++ b/src/plugins/qnx/blackberrysigningutils.cpp
@@ -82,18 +82,24 @@ bool BlackBerrySigningUtils::hasDefaultCertificate()
return keystore.exists();
}
-QString BlackBerrySigningUtils::cskPassword(QWidget *passwordPromptParent)
+QString BlackBerrySigningUtils::cskPassword(QWidget *passwordPromptParent, bool *ok)
{
if (m_cskPassword.isEmpty())
- m_cskPassword = promptPassword(tr("Please provide your bbidtoken.csk PIN."), passwordPromptParent);
+ m_cskPassword = promptPassword(tr("Please provide your bbidtoken.csk PIN."), passwordPromptParent, ok);
+ else if (ok)
+ *ok = true;
return m_cskPassword;
}
-QString BlackBerrySigningUtils::certificatePassword(QWidget *passwordPromptParent)
+QString BlackBerrySigningUtils::certificatePassword(QWidget *passwordPromptParent, bool *ok)
{
- if (m_certificatePassword.isEmpty())
- m_certificatePassword = promptPassword(tr("Please enter your certificate password."), passwordPromptParent);
+ if (m_certificatePassword.isEmpty()) {
+ m_certificatePassword =
+ promptPassword(tr("Please enter your certificate password."), passwordPromptParent, ok);
+ } else if (ok) {
+ *ok = true;
+ }
return m_certificatePassword;
}
@@ -110,7 +116,12 @@ void BlackBerrySigningUtils::openDefaultCertificate(QWidget *passwordPromptParen
return;
}
- const QString password = certificatePassword(passwordPromptParent);
+ bool ok;
+ const QString password = certificatePassword(passwordPromptParent, &ok);
+
+ // action has been canceled
+ if (!ok)
+ return;
BlackBerryConfigurationManager &configManager = BlackBerryConfigurationManager::instance();
@@ -165,7 +176,8 @@ void BlackBerrySigningUtils::certificateLoaded(int status)
emit defaultCertificateLoaded(status);
}
-QString BlackBerrySigningUtils::promptPassword(const QString &message, QWidget *dialogParent) const
+QString BlackBerrySigningUtils::promptPassword(const QString &message,
+ QWidget *dialogParent, bool *ok) const
{
QInputDialog dialog(dialogParent);
dialog.setWindowTitle(tr("Qt Creator"));
@@ -173,8 +185,15 @@ QString BlackBerrySigningUtils::promptPassword(const QString &message, QWidget *
dialog.setLabelText(message);
dialog.setTextEchoMode(QLineEdit::Password);
- if (dialog.exec() == QDialog::Rejected)
+ if (dialog.exec() == QDialog::Rejected) {
+ if (ok)
+ *ok = false;
+
return QString();
+ }
+
+ if (ok)
+ *ok = true;
return dialog.textValue();
}
diff --git a/src/plugins/qnx/blackberrysigningutils.h b/src/plugins/qnx/blackberrysigningutils.h
index 079cee2bff..3cf139162e 100644
--- a/src/plugins/qnx/blackberrysigningutils.h
+++ b/src/plugins/qnx/blackberrysigningutils.h
@@ -55,8 +55,8 @@ public:
bool hasLegacyKeys();
bool hasDefaultCertificate();
- QString cskPassword(QWidget *passwordPromptParent = 0);
- QString certificatePassword(QWidget *passwordPromptParent = 0);
+ QString cskPassword(QWidget *passwordPromptParent = 0, bool *ok = 0);
+ QString certificatePassword(QWidget *passwordPromptParent = 0, bool *ok = 0);
const BlackBerryCertificate *defaultCertificate() const;
@@ -77,7 +77,7 @@ private:
BlackBerrySigningUtils(QObject *parent = 0);
- QString promptPassword(const QString &message, QWidget *dialogParent = 0) const;
+ QString promptPassword(const QString &message, QWidget *dialogParent = 0, bool *ok = 0) const;
BlackBerryCertificate *m_defaultCertificate;