aboutsummaryrefslogtreecommitdiffstats
path: root/src/lib/corelib/api
diff options
context:
space:
mode:
authorChristian Kandeler <christian.kandeler@digia.com>2014-05-27 17:05:38 +0200
committerJoerg Bornemann <joerg.bornemann@digia.com>2014-06-02 11:46:44 +0200
commitd79628572eb4f89f243742394622007e2a27d0a8 (patch)
tree84a314345524a5a39bf5a4b07e82d8f4cea131f3 /src/lib/corelib/api
parent5c388a1e76e03e5afe30c7b5aa18ad272cba2e49 (diff)
Fix "Add Files" functionality.
This was broken for the case of a product with no existing binding, even accessing a null pointer. This is also covered by the autotest now. Change-Id: I088dbac08627b08f903dbe77bd824997592adb09 Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com>
Diffstat (limited to 'src/lib/corelib/api')
-rw-r--r--src/lib/corelib/api/projectfileupdater.cpp7
1 files changed, 4 insertions, 3 deletions
diff --git a/src/lib/corelib/api/projectfileupdater.cpp b/src/lib/corelib/api/projectfileupdater.cpp
index e7d879b28..c792dc806 100644
--- a/src/lib/corelib/api/projectfileupdater.cpp
+++ b/src/lib/corelib/api/projectfileupdater.cpp
@@ -323,9 +323,10 @@ void ProjectFileFilesAdder::doApply(QString &fileContent, UiProgram *ast)
Rewriter::ScriptBinding);
}
- setLineOffset(getLineOffsetForChangedBinding(changeSet, getNodeRepresentation(fileContent,
- filesBinding->statement)));
- const int insertionLine = getBindingLine(changeSet, fileContent) + 1;
+ setLineOffset(getLineOffsetForChangedBinding(changeSet,
+ filesBinding ? getNodeRepresentation(fileContent, filesBinding->statement)
+ : QString()));
+ const int insertionLine = getBindingLine(changeSet, fileContent);
const int insertionColumn = (filesBinding ? arrayElemIndentation : bindingIndentation) + 1;
setItemPosition(CodeLocation(projectFile(), insertionLine, insertionColumn));
changeSet.apply(&fileContent);