diff options
author | Orgad Shaneh <orgad.shaneh@audiocodes.com> | 2013-09-11 22:20:30 +0300 |
---|---|---|
committer | Orgad Shaneh <orgads@gmail.com> | 2013-09-12 13:02:55 +0200 |
commit | 9df379e0dc72d2abb17040b17a505ece607b589f (patch) | |
tree | 3e8ad9f2b8786c4d65c46ae743bd7d43c5fbc9aa /src/plugins/git/gitclient.cpp | |
parent | f69b994896304126976848d474bdd6da589dc78d (diff) | |
download | qt-creator-9df379e0dc72d2abb17040b17a505ece607b589f.tar.gz |
Git: Fix crash on diff
Task-number: QTCREATORBUG-10138
Change-Id: I7c7f054e6253c677b52a3ea24d7ace562f1ad4af
Reviewed-by: Jarek Kobus <jaroslaw.kobus@digia.com>
Diffstat (limited to 'src/plugins/git/gitclient.cpp')
-rw-r--r-- | src/plugins/git/gitclient.cpp | 40 |
1 files changed, 12 insertions, 28 deletions
diff --git a/src/plugins/git/gitclient.cpp b/src/plugins/git/gitclient.cpp index 7542354522..aeced497c2 100644 --- a/src/plugins/git/gitclient.cpp +++ b/src/plugins/git/gitclient.cpp @@ -1013,15 +1013,14 @@ DiffEditor::DiffEditor *GitClient::createDiffEditor(const char *registerDynamicP * (using the file's codec). Makes use of a dynamic property to find an * existing instance and to reuse it (in case, say, 'git diff foo' is * already open). */ -VcsBase::VcsBaseEditorWidget *GitClient::createVcsEditor(const Core::Id &id, - QString title, - // Source file or directory - const QString &source, - CodecType codecType, - // Dynamic property and value to identify that editor - const char *registerDynamicProperty, - const QString &dynamicPropertyValue, - QWidget *configWidget) const +VcsBase::VcsBaseEditorWidget *GitClient::createVcsEditor( + const Core::Id &id, + QString title, + const QString &source, // Source file or directory + CodecType codecType, + const char *registerDynamicProperty, // Dynamic property and value to identify that editor + const QString &dynamicPropertyValue, + VcsBase::VcsBaseEditorParameterWidget *configWidget) const { VcsBase::VcsBaseEditorWidget *rc = 0; QTC_CHECK(!findExistingVCSEditor(registerDynamicProperty, dynamicPropertyValue)); @@ -1219,14 +1218,10 @@ void GitClient::diff(const QString &workingDirectory, } vcsEditor->setDiffBaseDirectory(workingDirectory); - GitFileDiffArgumentsWidget *argWidget = qobject_cast<GitFileDiffArgumentsWidget *>( - vcsEditor->configurationWidget()); - QStringList userDiffArgs = argWidget->arguments(); - QStringList cmdArgs; cmdArgs << QLatin1String("diff") << QLatin1String(noColorOption) - << userDiffArgs; + << vcsEditor->configurationWidget()->arguments(); if (!fileName.isEmpty()) cmdArgs << QLatin1String("--") << fileName; @@ -1287,14 +1282,10 @@ void GitClient::diffBranch(const QString &workingDirectory, } vcsEditor->setDiffBaseDirectory(workingDirectory); - GitBranchDiffArgumentsWidget *argWidget = qobject_cast<GitBranchDiffArgumentsWidget *>( - vcsEditor->configurationWidget()); - QStringList userDiffArgs = argWidget->arguments(); - QStringList cmdArgs; cmdArgs << QLatin1String("diff") << QLatin1String(noColorOption) - << userDiffArgs + << vcsEditor->configurationWidget()->arguments() << branchName; executeGit(workingDirectory, cmdArgs, vcsEditor); @@ -1450,15 +1441,11 @@ void GitClient::show(const QString &source, const QString &id, newEditor = vcsEditor->editor(); } - GitShowArgumentsWidget *argWidget = qobject_cast<GitShowArgumentsWidget *>( - vcsEditor->configurationWidget()); - QStringList userArgs = argWidget->arguments(); - QStringList arguments; arguments << QLatin1String("show") << QLatin1String(noColorOption) << QLatin1String(decorateOption) - << userArgs + << vcsEditor->configurationWidget()->arguments() << id; vcsEditor->setDiffBaseDirectory(workingDirectory); @@ -1520,12 +1507,9 @@ void GitClient::blame(const QString &workingDirectory, argWidget->setEditor(editor); } - GitBlameArgumentsWidget *argWidget = qobject_cast<GitBlameArgumentsWidget *>(editor->configurationWidget()); - QStringList userBlameArgs = argWidget->arguments(); - QStringList arguments(QLatin1String("blame")); arguments << QLatin1String("--root"); - arguments.append(userBlameArgs); + arguments.append(editor->configurationWidget()->arguments()); arguments << QLatin1String("--") << fileName; if (!revision.isEmpty()) arguments << revision; |