forked from qt-creator/qt-creator
QmlDesigner: Catch exception in ModelMerger
Exceptions in the merger are very rare but not impossible. Therefore we have to catch potential exceptions. Change-Id: I83b2e9e41aa7b21374c06e2401c13df984fe0fd5 Reviewed-by: Tim Jenssen <tim.jenssen@qt.io>
This commit is contained in:
@@ -24,6 +24,8 @@
|
|||||||
****************************************************************************/
|
****************************************************************************/
|
||||||
|
|
||||||
#include "designdocumentview.h"
|
#include "designdocumentview.h"
|
||||||
|
|
||||||
|
#include <exception.h>
|
||||||
#include <rewriterview.h>
|
#include <rewriterview.h>
|
||||||
#include <basetexteditmodifier.h>
|
#include <basetexteditmodifier.h>
|
||||||
#include <modelmerger.h>
|
#include <modelmerger.h>
|
||||||
@@ -156,7 +158,11 @@ void DesignDocumentView::fromText(QString text)
|
|||||||
|
|
||||||
if (rewriterView->errors().isEmpty() && rewriterView->rootModelNode().isValid()) {
|
if (rewriterView->errors().isEmpty() && rewriterView->rootModelNode().isValid()) {
|
||||||
ModelMerger merger(this);
|
ModelMerger merger(this);
|
||||||
merger.replaceModel(rewriterView->rootModelNode());
|
try {
|
||||||
|
merger.replaceModel(rewriterView->rootModelNode());
|
||||||
|
} catch(Exception &e) {
|
||||||
|
e.showException();
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Reference in New Issue
Block a user