summaryrefslogtreecommitdiff
path: root/src/plugins
diff options
context:
space:
mode:
Diffstat (limited to 'src/plugins')
-rw-r--r--src/plugins/vcsbase/basevcseditorfactory.cpp7
-rw-r--r--src/plugins/vcsbase/basevcseditorfactory.h2
2 files changed, 5 insertions, 4 deletions
diff --git a/src/plugins/vcsbase/basevcseditorfactory.cpp b/src/plugins/vcsbase/basevcseditorfactory.cpp
index 2026d4a535..700f0162d0 100644
--- a/src/plugins/vcsbase/basevcseditorfactory.cpp
+++ b/src/plugins/vcsbase/basevcseditorfactory.cpp
@@ -54,7 +54,8 @@ using namespace TextEditor;
namespace VcsBase {
VcsEditorFactory::VcsEditorFactory(const VcsBaseEditorParameters *parameters,
- const EditorWidgetCreator &editorWidgetCreator,
+ // Force copy, see QTCREATORBUG-13218
+ const EditorWidgetCreator editorWidgetCreator,
QObject *describeReceiver, const char *describeSlot)
{
setProperty("VcsEditorFactoryName", QByteArray(parameters->id));
@@ -66,14 +67,14 @@ VcsEditorFactory::VcsEditorFactory(const VcsBaseEditorParameters *parameters,
setEditorActionHandlers(TextEditorActionHandler::None);
setDuplicatedSupported(false);
- setDocumentCreator([=]() -> TextDocument* {
+ setDocumentCreator([this, parameters]() -> TextDocument* {
auto document = new TextDocument(parameters->id);
// if (QLatin1String(parameters->mimeType) != QLatin1String(DiffEditor::Constants::DIFF_EDITOR_MIMETYPE))
document->setMimeType(QLatin1String(parameters->mimeType));
return document;
});
- setEditorWidgetCreator([=]() -> TextEditorWidget* {
+ setEditorWidgetCreator([this, parameters, editorWidgetCreator, describeReceiver, describeSlot]() -> TextEditorWidget* {
auto widget = qobject_cast<VcsBaseEditorWidget *>(editorWidgetCreator());
widget->setDescribeSlot(describeReceiver, describeSlot);
widget->setParameters(parameters);
diff --git a/src/plugins/vcsbase/basevcseditorfactory.h b/src/plugins/vcsbase/basevcseditorfactory.h
index 9ca286ce87..ba7fdecf0f 100644
--- a/src/plugins/vcsbase/basevcseditorfactory.h
+++ b/src/plugins/vcsbase/basevcseditorfactory.h
@@ -44,7 +44,7 @@ class VCSBASE_EXPORT VcsEditorFactory : public TextEditor::TextEditorFactory
public:
VcsEditorFactory(const VcsBaseEditorParameters *parameters,
- const EditorWidgetCreator &editorWidgetCreator,
+ const EditorWidgetCreator editorWidgetCreator,
QObject *describeReceiver,
const char *describeSlot);