diff options
author | M N Palat | 2013-05-28 05:54:01 +0000 |
---|---|---|
committer | M N Palat | 2013-05-28 05:54:01 +0000 |
commit | dbd0327afde5954f2670683ba00deedae5d6bb02 (patch) | |
tree | 9c01a7e065e2f29b8f2b13086a222b5a57264797 /org.eclipse.jdt.core | |
parent | 79c1182746ff2f44f9956aeaf2f61882a4911acb (diff) | |
download | eclipse.jdt.core-dbd0327afde5954f2670683ba00deedae5d6bb02.tar.gz eclipse.jdt.core-dbd0327afde5954f2670683ba00deedae5d6bb02.tar.xz eclipse.jdt.core-dbd0327afde5954f2670683ba00deedae5d6bb02.zip |
Fixed Bug 407364 - [1.8][dom ast] Incorrect ASTRewrite for QualifiedType
Diffstat (limited to 'org.eclipse.jdt.core')
-rw-r--r-- | org.eclipse.jdt.core/dom/org/eclipse/jdt/internal/core/dom/rewrite/ASTRewriteAnalyzer.java | 18 |
1 files changed, 13 insertions, 5 deletions
diff --git a/org.eclipse.jdt.core/dom/org/eclipse/jdt/internal/core/dom/rewrite/ASTRewriteAnalyzer.java b/org.eclipse.jdt.core/dom/org/eclipse/jdt/internal/core/dom/rewrite/ASTRewriteAnalyzer.java index dc545462ff..fd3b1b34fc 100644 --- a/org.eclipse.jdt.core/dom/org/eclipse/jdt/internal/core/dom/rewrite/ASTRewriteAnalyzer.java +++ b/org.eclipse.jdt.core/dom/org/eclipse/jdt/internal/core/dom/rewrite/ASTRewriteAnalyzer.java @@ -3957,9 +3957,12 @@ public final class ASTRewriteAnalyzer extends ASTVisitor { if (!hasChildrenChanges(node)) { return doVisitUnchangedChildren(node); } - rewriteRequiredNode(node, PackageQualifiedType.QUALIFIER_PROPERTY); - if (node.getAST().apiLevel() >= AST.JLS8) { - rewriteTypeAnnotations(node, PackageQualifiedType.ANNOTATIONS_PROPERTY, node.getStartPosition()); + int pos = rewriteRequiredNode(node, PackageQualifiedType.QUALIFIER_PROPERTY); + try { + pos = getScanner().getTokenEndOffset(TerminalTokens.TokenNameDOT, pos); + rewriteTypeAnnotations(node, PackageQualifiedType.ANNOTATIONS_PROPERTY, pos); + } catch (CoreException e) { + handleException(e); } rewriteRequiredNode(node, PackageQualifiedType.NAME_PROPERTY); return false; @@ -3992,9 +3995,14 @@ public final class ASTRewriteAnalyzer extends ASTVisitor { if (!hasChildrenChanges(node)) { return doVisitUnchangedChildren(node); } - rewriteRequiredNode(node, QualifiedType.QUALIFIER_PROPERTY); + int pos = rewriteRequiredNode(node, QualifiedType.QUALIFIER_PROPERTY); if (node.getAST().apiLevel() >= AST.JLS8) { - rewriteTypeAnnotations(node, QualifiedType.ANNOTATIONS_PROPERTY, node.getStartPosition()); + try { + pos = getScanner().getTokenEndOffset(TerminalTokens.TokenNameDOT, pos); + rewriteTypeAnnotations(node, QualifiedType.ANNOTATIONS_PROPERTY, pos); + } catch (CoreException e) { + handleException(e); + } } rewriteRequiredNode(node, QualifiedType.NAME_PROPERTY); return false; |