aboutsummaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorKnut Petter Svendsen <knutpett@pvv.org>2015-01-03 21:44:28 +0200
committerKnut Petter Svendsen <knutpett@pvv.org>2015-01-05 10:52:58 +0100
commit9e32c1abc13bd13365ad4980b367aa0073f4736c (patch)
tree3ec3cb841bc46b9efe4e5e4602c00d22d3291002 /src
parente1b39f1e35c153244890e94ec8a6dbb69f6b1ec7 (diff)
ClearCase: Fix not detecting that a file is already checked out
ClearCase violates POSIX since it gives a file a new inode when checked out. This gives QtCreator problems with noticing that a file has changed permissions to writeable and thus it will insist on trying to check out the file again in some cases. Change-Id: Ia3f621daff258b3ea5d9ff4f5cec7629ca46e6bd Reviewed-by: Knut Petter Svendsen <knutpett@pvv.org> Reviewed-by: Orgad Shaneh <orgads@gmail.com>
Diffstat (limited to 'src')
-rw-r--r--src/plugins/clearcase/clearcaseplugin.cpp9
1 files changed, 9 insertions, 0 deletions
diff --git a/src/plugins/clearcase/clearcaseplugin.cpp b/src/plugins/clearcase/clearcaseplugin.cpp
index c77a3aa458d..3d697178ca8 100644
--- a/src/plugins/clearcase/clearcaseplugin.cpp
+++ b/src/plugins/clearcase/clearcaseplugin.cpp
@@ -47,6 +47,7 @@
#include <coreplugin/actionmanager/command.h>
#include <coreplugin/coreconstants.h>
#include <coreplugin/documentmanager.h>
+#include <coreplugin/editormanager/documentmodel.h>
#include <coreplugin/editormanager/editormanager.h>
#include <coreplugin/icore.h>
#include <coreplugin/infobar.h>
@@ -1648,6 +1649,14 @@ bool ClearCasePlugin::vcsOpen(const QString &workingDir, const QString &fileName
&& !m_settings.disableIndexer) {
setStatus(absPath, FileStatus::CheckedOut);
}
+
+ foreach (DocumentModel::Entry *e, DocumentModel::entries()) {
+ if (e->fileName() == absPath) {
+ e->document->checkPermissions();
+ break;
+ }
+ }
+
return !response.error;
}
return true;