aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorKnut Petter Svendsen <knutpett@pvv.org>2013-03-19 20:52:02 +0100
committerEike Ziller <eike.ziller@digia.com>2013-03-20 10:29:08 +0100
commit4d4883450d8f8b1f3adfcbd0fca8c6f981de2cf9 (patch)
tree7b5e39b8fc756d8c43cb5c70b164e92e4fb9ae44
parent5db9e59ecabf8552cdbc1db7f1d870f7ca439d2d (diff)
ClearCase: Fixed soft assert when currentState has no file
The first time updateStatusActions was executed the currentState had no file, then currentState().relativeCurrentFile() would give an soft assert. Change-Id: I4566ace3e538c9834a4a47857f4234a527c37641 Reviewed-by: Orgad Shaneh <orgads@gmail.com> Reviewed-by: Eike Ziller <eike.ziller@digia.com>
-rw-r--r--src/plugins/clearcase/clearcaseplugin.cpp12
1 files changed, 7 insertions, 5 deletions
diff --git a/src/plugins/clearcase/clearcaseplugin.cpp b/src/plugins/clearcase/clearcaseplugin.cpp
index 2103324488..43023fa91f 100644
--- a/src/plugins/clearcase/clearcaseplugin.cpp
+++ b/src/plugins/clearcase/clearcaseplugin.cpp
@@ -607,13 +607,15 @@ ClearCaseSubmitEditor *ClearCasePlugin::openClearCaseSubmitEditor(const QString
void ClearCasePlugin::updateStatusActions()
{
+ FileStatus fileStatus = FileStatus::Unknown;
bool hasFile = currentState().hasFile();
- QString fileName = currentState().relativeCurrentFile();
+ if (hasFile) {
+ QString fileName = currentState().relativeCurrentFile();
+ fileStatus = m_statusMap->value(fileName, FileStatus(FileStatus::Unknown));
- FileStatus fileStatus = m_statusMap->value(fileName, FileStatus(FileStatus::Unknown));
-
- if (ClearCase::Constants::debug)
- qDebug() << Q_FUNC_INFO << fileName << ", status = " << fileStatus.status;
+ if (ClearCase::Constants::debug)
+ qDebug() << Q_FUNC_INFO << fileName << ", status = " << fileStatus.status;
+ }
m_checkOutAction->setEnabled(hasFile && (fileStatus.status & (FileStatus::CheckedIn | FileStatus::Hijacked)));
m_undoCheckOutAction->setEnabled(hasFile && (fileStatus.status & FileStatus::CheckedOut));