diff options
15 files changed, 303 insertions, 21 deletions
diff --git a/features/org.eclipse.objectteams.otdt.feature/ot-compiler-feature/feature.xml b/features/org.eclipse.objectteams.otdt.feature/ot-compiler-feature/feature.xml index 85f22f0ef..b5c697a34 100644 --- a/features/org.eclipse.objectteams.otdt.feature/ot-compiler-feature/feature.xml +++ b/features/org.eclipse.objectteams.otdt.feature/ot-compiler-feature/feature.xml @@ -47,7 +47,7 @@ This software is based on Eclipse and the Java Development Tooling id="org.eclipse.jdt.core" download-size="4704" install-size="4704" - version="3.6.0.v_A46" + version="3.6.0.v_A47" unpack="false"/> </feature> diff --git a/org.eclipse.jdt.core.tests.model/src/org/eclipse/jdt/core/tests/formatter/FormatterCommentsBugsTest.java b/org.eclipse.jdt.core.tests.model/src/org/eclipse/jdt/core/tests/formatter/FormatterCommentsBugsTest.java index a2594ebd8..deb22874a 100644 --- a/org.eclipse.jdt.core.tests.model/src/org/eclipse/jdt/core/tests/formatter/FormatterCommentsBugsTest.java +++ b/org.eclipse.jdt.core.tests.model/src/org/eclipse/jdt/core/tests/formatter/FormatterCommentsBugsTest.java @@ -6548,4 +6548,208 @@ public void testBug305830c() { ); } +/** + * @bug 309835: [formatter] adds blank lines on each run + * @test Test that no line is added when the word exceeds the line width + * @see "https://bugs.eclipse.org/bugs/show_bug.cgi?id=309835" + */ +public void testBug309835() { + this.formatterPrefs.join_lines_in_comments = false; + this.formatterPrefs.comment_line_length = 120; + String source = + "package org.eclipse.bug.test;\n" + + "\n" + + "/**\n" + + " * @author Bug Reporter\n" + + " * ThisIsAVeryLongCommentWithoutSpaces_TheFormatterTriesToBreakTheLine_ButTheResultOfItIsThatANewLineIsAdded_____\n" + + " * \n" + + " * Try to press Ctrl+Shift+F to format the code. If the unbreakable line is exactly 121 characters long,\n" + + " * a blank line is inserted on each formating.\n" + + " * Check project preferences to see the format settings\n" + + " * (max. line length 80 chars, max. comment line length 120 chars)\n" + + " */\n" + + "public class FormatterBug {\n" + + "}\n"; + formatSource(source); +} +public void testBug309835b() { + this.formatterPrefs.comment_line_length = 120; + String source = + "package org.eclipse.bug.test;\n" + + "\n" + + "/**\n" + + " * @author Bug Reporter\n" + + " * ThisIsAVeryLongCommentWithoutSpaces_TheFormatterTriesToBreakTheLine_ButTheResultOfItIsThatANewLineIsAdded_____\n" + + " * \n" + + " * Try to press Ctrl+Shift+F to format the code. If the unbreakable line is exactly 121 characters long,\n" + + " * a blank line is inserted on each formating.\n" + + " * Check project preferences to see the format settings\n" + + " * (max. line length 80 chars, max. comment line length 120 chars)\n" + + " */\n" + + "public class FormatterBug {\n" + + "}\n"; + formatSource(source, + "package org.eclipse.bug.test;\n" + + "\n" + + "/**\n" + + " * @author Bug Reporter\n" + + " * ThisIsAVeryLongCommentWithoutSpaces_TheFormatterTriesToBreakTheLine_ButTheResultOfItIsThatANewLineIsAdded_____\n" + + " * \n" + + " * Try to press Ctrl+Shift+F to format the code. If the unbreakable line is exactly 121 characters long, a blank\n" + + " * line is inserted on each formating. Check project preferences to see the format settings (max. line length 80\n" + + " * chars, max. comment line length 120 chars)\n" + + " */\n" + + "public class FormatterBug {\n" + + "}\n" + ); +} +public void testBug309835c() { + this.formatterPrefs.join_lines_in_comments = false; + String source = + "package org.eclipse.bug.test;\n" + + "\n" + + "/**\n" + + " * @author Bug Reporter\n" + + " * ThisIsAVeryLongCommentWithoutSpaces_TheFormatterTriesToBreakTheLine_ButTheResultOfItIsThatANewLineIsAdded_____\n" + + " * \n" + + " * Try to press Ctrl+Shift+F to format the code. If the unbreakable line is exactly 121 characters long,\n" + + " * a blank line is inserted on each formating.\n" + + " * Check project preferences to see the format settings\n" + + " * (max. line length 80 chars, max. comment line length 120 chars)\n" + + " */\n" + + "public class FormatterBug {\n" + + "}\n"; + formatSource(source, + "package org.eclipse.bug.test;\n" + + "\n" + + "/**\n" + + " * @author Bug Reporter\n" + + " * ThisIsAVeryLongCommentWithoutSpaces_TheFormatterTriesToBreakTheLine_ButTheResultOfItIsThatANewLineIsAdded_____\n" + + " * \n" + + " * Try to press Ctrl+Shift+F to format the code. If the unbreakable line\n" + + " * is exactly 121 characters long,\n" + + " * a blank line is inserted on each formating.\n" + + " * Check project preferences to see the format settings\n" + + " * (max. line length 80 chars, max. comment line length 120 chars)\n" + + " */\n" + + "public class FormatterBug {\n" + + "}\n" + ); +} +public void testBug309835d() { + String source = + "package org.eclipse.bug.test;\n" + + "\n" + + "/**\n" + + " * @author Bug Reporter\n" + + " * ThisIsAVeryLongCommentWithoutSpaces_TheFormatterTriesToBreakTheLine_ButTheResultOfItIsThatANewLineIsAdded_____\n" + + " * \n" + + " * Try to press Ctrl+Shift+F to format the code. If the unbreakable line is exactly 121 characters long,\n" + + " * a blank line is inserted on each formating.\n" + + " * Check project preferences to see the format settings\n" + + " * (max. line length 80 chars, max. comment line length 120 chars)\n" + + " */\n" + + "public class FormatterBug {\n" + + "}\n"; + formatSource(source, + "package org.eclipse.bug.test;\n" + + "\n" + + "/**\n" + + " * @author Bug Reporter\n" + + " * ThisIsAVeryLongCommentWithoutSpaces_TheFormatterTriesToBreakTheLine_ButTheResultOfItIsThatANewLineIsAdded_____\n" + + " * \n" + + " * Try to press Ctrl+Shift+F to format the code. If the unbreakable line\n" + + " * is exactly 121 characters long, a blank line is inserted on each\n" + + " * formating. Check project preferences to see the format settings (max.\n" + + " * line length 80 chars, max. comment line length 120 chars)\n" + + " */\n" + + "public class FormatterBug {\n" + + "}\n" + ); +} +public void testBug309835_wksp1_01() { + String source = + "public class X01 {\n" + + "\n" + + " /**\n" + + " * @param severity the severity to search for. Must be one of <code>FATAL\n" + + " * </code>, <code>ERROR</code>, <code>WARNING</code> or <code>INFO</code>\n" + + " */\n" + + " public void foo(int severity) {\n" + + " }\n" + + "}\n"; + formatSource(source, + "public class X01 {\n" + + "\n" + + " /**\n" + + " * @param severity\n" + + " * the severity to search for. Must be one of <code>FATAL\n" + + " * </code>, <code>ERROR</code>, <code>WARNING</code> or <code>INFO</code>\n" + + " */\n" + + " public void foo(int severity) {\n" + + " }\n" + + "}\n" + ); +} +public void testBug309835_wksp1_02() { + String source = + "public class X02 {\n" + + "\n" + + " /**\n" + + " * INTERNAL USE-ONLY\n" + + " * Generate the byte for a problem method info that correspond to a boggus method.\n" + + " *\n" + + " * @param method org.eclipse.jdt.internal.compiler.ast.AbstractMethodDeclaration\n" + + " * @param methodBinding org.eclipse.jdt.internal.compiler.nameloopkup.MethodBinding\n" + + " */\n" + + " public void foo(int severity) {\n" + + " }\n" + + "}\n"; + formatSource(source, + "public class X02 {\n" + + "\n" + + " /**\n" + + " * INTERNAL USE-ONLY Generate the byte for a problem method info that\n" + + " * correspond to a boggus method.\n" + + " * \n" + + " * @param method\n" + + " * org.eclipse.jdt.internal.compiler.ast.\n" + + " * AbstractMethodDeclaration\n" + + " * @param methodBinding\n" + + " * org.eclipse.jdt.internal.compiler.nameloopkup.MethodBinding\n" + + " */\n" + + " public void foo(int severity) {\n" + + " }\n" + + "}\n" + ); +} +public void testBug309835_wksp2_01() { + String source = + "public class X01 {\n" + + "\n" + + " /**\n" + + " * Given a jar file, get the names of any AnnotationProcessorFactory\n" + + " * implementations it offers. The information is based on the Sun\n" + + " * <a href=\"http://java.sun.com/j2se/1.5.0/docs/guide/jar/jar.html#Service%20Provider\">\n" + + " * Jar Service Provider spec</a>: the jar file contains a META-INF/services\n" + + " */\n" + + " public void foo() {\n" + + " }\n" + + "}\n"; + formatSource(source, + "public class X01 {\n" + + "\n" + + " /**\n" + + " * Given a jar file, get the names of any AnnotationProcessorFactory\n" + + " * implementations it offers. The information is based on the Sun <a href=\n" + + " * \"http://java.sun.com/j2se/1.5.0/docs/guide/jar/jar.html#Service%20Provider\"\n" + + " * > Jar Service Provider spec</a>: the jar file contains a\n" + + " * META-INF/services\n" + + " */\n" + + " public void foo() {\n" + + " }\n" + + "}\n" + ); +} + } diff --git a/org.eclipse.jdt.core.tests.model/src/org/eclipse/jdt/core/tests/model/JavaSearchBugsTests.java b/org.eclipse.jdt.core.tests.model/src/org/eclipse/jdt/core/tests/model/JavaSearchBugsTests.java index bd2a22bc3..213a081e8 100644 --- a/org.eclipse.jdt.core.tests.model/src/org/eclipse/jdt/core/tests/model/JavaSearchBugsTests.java +++ b/org.eclipse.jdt.core.tests.model/src/org/eclipse/jdt/core/tests/model/JavaSearchBugsTests.java @@ -11793,4 +11793,52 @@ public void testBug306223g() throws CoreException { null); assertSearchResults(""); } + +/** + * @bug 310213: [search] Reference to package is not found in qualified annotation + * @test Ensure that references to package are also found in qualified annotation + * @see "https://bugs.eclipse.org/bugs/show_bug.cgi?id=310213" + */ +public void testBug310213() throws CoreException { + boolean autoBuild = getWorkspace().isAutoBuilding(); + IWorkspaceDescription preferences = getWorkspace().getDescription(); + try { + // ensure that the workspace auto-build is ON + preferences.setAutoBuilding(true); + getWorkspace().setDescription(preferences); + + // create files + createFolder("/JavaSearchBugs/src/java/lang"); + createFile("/JavaSearchBugs/src/java/lang/Throwable.java", + "package java.lang;\n" + + "public class Throwable{}\n" + ); + createFolder("/JavaSearchBugs/src/b310213/test"); + createFile("/JavaSearchBugs/src/b310213/test/Test.java", + "package b310213.test;\n" + + "public class Test extends Throwable {\n" + + "}" + ); + waitUntilIndexesReady(); + + // search + IType type = getCompilationUnit("/JavaSearchBugs/src/java/lang/Throwable.java").getType("Throwable"); + search(type, REFERENCES); + assertSearchResults( + "src/b310213/test/Test.java b310213.test.Test [Throwable] EXACT_MATCH\n" + + ""+ getExternalJCLPathString("1.5") + " java.lang.Error EXACT_MATCH\n" + + ""+ getExternalJCLPathString("1.5") + " java.lang.Exception EXACT_MATCH\n" + + ""+ getExternalJCLPathString("1.5") + " void java.lang.Object.finalize() EXACT_MATCH" + ); + } + finally { + // put back initial setup + preferences.setAutoBuilding(autoBuild); + getWorkspace().setDescription(preferences); + + // delete files + deleteFolder("/JavaSearchBugs/src/b310213"); + deleteFolder("/JavaSearchBugs/src/java"); + } +} }
\ No newline at end of file diff --git a/org.eclipse.jdt.core.tests.model/workspace/FormatterJavadoc/test/wksp/ganymede/out/clear_blank_lines/X03.java b/org.eclipse.jdt.core.tests.model/workspace/FormatterJavadoc/test/wksp/ganymede/out/clear_blank_lines/X03.java index d28b97b66..0b45c28ee 100644 --- a/org.eclipse.jdt.core.tests.model/workspace/FormatterJavadoc/test/wksp/ganymede/out/clear_blank_lines/X03.java +++ b/org.eclipse.jdt.core.tests.model/workspace/FormatterJavadoc/test/wksp/ganymede/out/clear_blank_lines/X03.java @@ -15,7 +15,8 @@ package test.wksp.ganymede; * </p> * * @see org.eclipse.gmf.mappings.GMFMapPackage#getAuditedMetricTarget() - * @model annotation="http://www.eclipse.org/gmf/2005/constraints/meta def='context' ocl='\'ecore::EDoubleObject\''" + * @model annotation= + * "http://www.eclipse.org/gmf/2005/constraints/meta def='context' ocl='\'ecore::EDoubleObject\''" * @generated */ public class X03 { diff --git a/org.eclipse.jdt.core.tests.model/workspace/FormatterJavadoc/test/wksp/ganymede/out/default/X03.java b/org.eclipse.jdt.core.tests.model/workspace/FormatterJavadoc/test/wksp/ganymede/out/default/X03.java index aca948e33..1b2bf8bf0 100644 --- a/org.eclipse.jdt.core.tests.model/workspace/FormatterJavadoc/test/wksp/ganymede/out/default/X03.java +++ b/org.eclipse.jdt.core.tests.model/workspace/FormatterJavadoc/test/wksp/ganymede/out/default/X03.java @@ -17,7 +17,8 @@ package test.wksp.ganymede; * </p> * * @see org.eclipse.gmf.mappings.GMFMapPackage#getAuditedMetricTarget() - * @model annotation="http://www.eclipse.org/gmf/2005/constraints/meta def='context' ocl='\'ecore::EDoubleObject\''" + * @model annotation= + * "http://www.eclipse.org/gmf/2005/constraints/meta def='context' ocl='\'ecore::EDoubleObject\''" * @generated */ public class X03 { diff --git a/org.eclipse.jdt.core.tests.model/workspace/FormatterJavadoc/test/wksp/ganymede/out/dont_indent_tags/X03.java b/org.eclipse.jdt.core.tests.model/workspace/FormatterJavadoc/test/wksp/ganymede/out/dont_indent_tags/X03.java index aca948e33..deea51380 100644 --- a/org.eclipse.jdt.core.tests.model/workspace/FormatterJavadoc/test/wksp/ganymede/out/dont_indent_tags/X03.java +++ b/org.eclipse.jdt.core.tests.model/workspace/FormatterJavadoc/test/wksp/ganymede/out/dont_indent_tags/X03.java @@ -17,7 +17,8 @@ package test.wksp.ganymede; * </p> * * @see org.eclipse.gmf.mappings.GMFMapPackage#getAuditedMetricTarget() - * @model annotation="http://www.eclipse.org/gmf/2005/constraints/meta def='context' ocl='\'ecore::EDoubleObject\''" + * @model annotation= + * "http://www.eclipse.org/gmf/2005/constraints/meta def='context' ocl='\'ecore::EDoubleObject\''" * @generated */ public class X03 { diff --git a/org.eclipse.jdt.core/META-INF/Bootstrap_MANIFEST.MF b/org.eclipse.jdt.core/META-INF/Bootstrap_MANIFEST.MF index 456b1d05e..7dcf4428e 100644 --- a/org.eclipse.jdt.core/META-INF/Bootstrap_MANIFEST.MF +++ b/org.eclipse.jdt.core/META-INF/Bootstrap_MANIFEST.MF @@ -3,7 +3,7 @@ Main-Class: org.eclipse.jdt.internal.compiler.batch.Main Bundle-ManifestVersion: 2 Bundle-Name: %pluginName Bundle-SymbolicName: org.eclipse.jdt.core; singleton:=true -Bundle-Version: 3.6.0.v_A46 +Bundle-Version: 3.6.0.v_A47 Bundle-Activator: org.eclipse.jdt.core.JavaCore Bundle-Vendor: %providerName Bundle-Localization: plugin diff --git a/org.eclipse.jdt.core/batch/org/eclipse/jdt/internal/compiler/batch/messages.properties b/org.eclipse.jdt.core/batch/org/eclipse/jdt/internal/compiler/batch/messages.properties index a248cb865..81688cd1a 100644 --- a/org.eclipse.jdt.core/batch/org/eclipse/jdt/internal/compiler/batch/messages.properties +++ b/org.eclipse.jdt.core/batch/org/eclipse/jdt/internal/compiler/batch/messages.properties @@ -1,7 +1,7 @@ #Format: compiler.name = word1 word2 word3 compiler.name = Eclipse Compiler for Java(TM) #Format: compiler.version = 0.XXX[, other words (don't forget the comma if adding other words)] -compiler.version = 0.A45, 3.6.0 M7 +compiler.version = 0.A47, 3.6.0 M7 compiler.copyright = Copyright IBM Corp 2000, 2010. All rights reserved. ###{ObjectTeams: diff --git a/org.eclipse.jdt.core/buildnotes_jdt-core.html b/org.eclipse.jdt.core/buildnotes_jdt-core.html index 199d30547..c2eed6c52 100644 --- a/org.eclipse.jdt.core/buildnotes_jdt-core.html +++ b/org.eclipse.jdt.core/buildnotes_jdt-core.html @@ -40,11 +40,28 @@ </td> </tr> </table> +<a name="v_A47"></a> +<hr><h1> +Eclipse Platform Build Notes<br> +Java development tools core</h1> +Eclipse SDK 3.6M7 - April 25, 2010 - 3.6.0 M7 +<br>Project org.eclipse.jdt.core v_A47 +(<a href="http://dev.eclipse.org/viewcvs/index.cgi/org.eclipse.jdt.core/?only_with_tag=v_A47">cvs</a>). +<h2>What's new in this drop</h2> + +<h3>Problem Reports Fixed</h3> +<a href="https://bugs.eclipse.org/bugs/show_bug.cgi?id=309835">309835</a> +[formatter] adds blank lines on each run +<br><a href="https://bugs.eclipse.org/bugs/show_bug.cgi?id=310213">310213</a> +AIOOBE in IndexSelector.initializeIndexLocations() +<br><a href="https://bugs.eclipse.org/bugs/show_bug.cgi?id=309966">309966</a> +IType#getKey() does not work for unresolved local ITypes + <a name="v_A46"></a> <hr><h1> Eclipse Platform Build Notes<br> Java development tools core</h1> -Eclipse SDK 3.6M7 - April 23, 2010 - 3.6.0 M7 +Eclipse SDK 3.6M7 - April 23, 2010 <br>Project org.eclipse.jdt.core v_A46 (<a href="http://dev.eclipse.org/viewcvs/index.cgi/org.eclipse.jdt.core/?only_with_tag=v_A46">cvs</a>). <h2>What's new in this drop</h2> diff --git a/org.eclipse.jdt.core/formatter/org/eclipse/jdt/internal/formatter/Scribe.java b/org.eclipse.jdt.core/formatter/org/eclipse/jdt/internal/formatter/Scribe.java index c6bb885d7..1df2ed3c2 100644 --- a/org.eclipse.jdt.core/formatter/org/eclipse/jdt/internal/formatter/Scribe.java +++ b/org.eclipse.jdt.core/formatter/org/eclipse/jdt/internal/formatter/Scribe.java @@ -4109,7 +4109,7 @@ public class Scribe implements IJavaDocTagConstants { } } this.needSpace = idx > 0; - printJavadocTextLine(buffer, nextStart, end, block, idx==0 /*first text?*/, needIndentation, false /*not an html tag*/); + printJavadocTextLine(buffer, nextStart, end, block, idx==0 || (!joinLines && textOnNewLine)/*first text?*/, needIndentation, false /*not an html tag*/); textOnNewLine = false; // Replace with current buffer if there are several empty lines between text lines @@ -4128,6 +4128,9 @@ public class Scribe implements IJavaDocTagConstants { printJavadocGapLines(end+1, nextStart-1, newLines, this.formatter.preferences.comment_clear_blank_lines_in_javadoc_comment, false, null); textOnNewLine = true; } + else if (startLine > endLine) { + textOnNewLine = !joinLines; + } } } @@ -4163,6 +4166,7 @@ public class Scribe implements IJavaDocTagConstants { if (needIndentation && this.commentIndentation != null) { buffer.append(this.commentIndentation); this.column += this.commentIndentation.length(); + firstColumn += this.commentIndentation.length(); } if (this.column < firstColumn) { this.column = firstColumn; @@ -4255,7 +4259,7 @@ public class Scribe implements IJavaDocTagConstants { tokensBufferLength = 0; textOnNewLine = false; } - if ((tokensBufferLength > 0 || tokenLength < maxColumn) && (!textOnNewLine || !firstText)) { + if ((tokensBufferLength > 0 || /*(firstColumn+tokenLength) < maxColumn || (insertSpace &&*/ this.column > firstColumn) && (!textOnNewLine || !firstText)) { this.lastNumberOfNewLines++; this.line++; if (newLineString == null) { @@ -4281,7 +4285,7 @@ public class Scribe implements IJavaDocTagConstants { this.column += tokensString.length(); tokensBuffer.setLength(0); tokensBufferLength = 0; - } + } buffer.append(this.scanner.source, tokenStart, tokenLength); this.column += tokenLength; textOnNewLine = false; diff --git a/org.eclipse.jdt.core/model/org/eclipse/jdt/core/IField.java b/org.eclipse.jdt.core/model/org/eclipse/jdt/core/IField.java index 1a35f96b7..15cf1674a 100644 --- a/org.eclipse.jdt.core/model/org/eclipse/jdt/core/IField.java +++ b/org.eclipse.jdt.core/model/org/eclipse/jdt/core/IField.java @@ -1,5 +1,5 @@ /******************************************************************************* - * Copyright (c) 2000, 2008 IBM Corporation and others. + * Copyright (c) 2000, 2010 IBM Corporation and others. * All rights reserved. This program and the accompanying materials * are made available under the terms of the Eclipse Public License v1.0 * which accompanies this distribution, and is available at @@ -95,13 +95,16 @@ public Object getConstant() throws JavaModelException; */ String getElementName(); /** - * Returns the binding key for this field. A binding key is a key that uniquely - * identifies this field. It allows access to generic info for parameterized - * fields. + * Returns the binding key for this field only if the given field is {@link #isResolved() resolved}. + * A binding key is a key that uniquely identifies this field. It allows access to generic info + * for parameterized fields. * + * <p>If the given field is not resolved, the returned key is simply the java element's key. + * </p> * @return the binding key for this field * @see org.eclipse.jdt.core.dom.IBinding#getKey() * @see BindingKey + * @see #isResolved() * @since 3.1 */ String getKey(); diff --git a/org.eclipse.jdt.core/model/org/eclipse/jdt/core/IMethod.java b/org.eclipse.jdt.core/model/org/eclipse/jdt/core/IMethod.java index 95ee2b498..daa458acd 100644 --- a/org.eclipse.jdt.core/model/org/eclipse/jdt/core/IMethod.java +++ b/org.eclipse.jdt.core/model/org/eclipse/jdt/core/IMethod.java @@ -1,5 +1,5 @@ /******************************************************************************* - * Copyright (c) 2000, 2008 IBM Corporation and others. + * Copyright (c) 2000, 2010 IBM Corporation and others. * All rights reserved. This program and the accompanying materials * are made available under the terms of the Eclipse Public License v1.0 * which accompanies this distribution, and is available at @@ -101,13 +101,16 @@ ITypeParameter[] getTypeParameters() throws JavaModelException; */ int getNumberOfParameters(); /** - * Returns the binding key for this method. A binding key is a key that uniquely - * identifies this method. It allows access to generic info for parameterized - * methods. + * Returns the binding key for this method only if the given method is {@link #isResolved() resolved}. + * A binding key is a key that uniquely identifies this method. It allows access + * to generic info for parameterized methods. * + * <p>If the given method is not resolved, the returned key is simply the java element's key. + * </p> * @return the binding key for this method * @see org.eclipse.jdt.core.dom.IBinding#getKey() * @see BindingKey + * @see #isResolved() * @since 3.1 */ String getKey(); diff --git a/org.eclipse.jdt.core/search/org/eclipse/jdt/internal/core/search/IndexSelector.java b/org.eclipse.jdt.core/search/org/eclipse/jdt/internal/core/search/IndexSelector.java index da481a8f0..83730687d 100644 --- a/org.eclipse.jdt.core/search/org/eclipse/jdt/internal/core/search/IndexSelector.java +++ b/org.eclipse.jdt.core/search/org/eclipse/jdt/internal/core/search/IndexSelector.java @@ -202,7 +202,7 @@ private void initializeIndexLocations() { if (primaryType != null) { char[][] qualifiedName = CharOperation.splitOn('.', primaryType.getFullyQualifiedName().toCharArray()); char[][][] qualifiedNames = ReferenceCollection.internQualifiedNames(new char[][][] {qualifiedName}); - focusQualifiedName = qualifiedNames[0]; + focusQualifiedName = qualifiedNames.length == 0 ? qualifiedName : qualifiedNames[0]; } } } diff --git a/releng/build-scripts/build/test.properties b/releng/build-scripts/build/test.properties index a72879f9b..e424a5e84 100644 --- a/releng/build-scripts/build/test.properties +++ b/releng/build-scripts/build/test.properties @@ -3,7 +3,7 @@ config=linux.gtk.ppc64 # versions of test plugins: -org.eclipse.jdt.core.tests.builder=org.eclipse.jdt.core.tests.builder_3.3.100.v_A46 +org.eclipse.jdt.core.tests.builder=org.eclipse.jdt.core.tests.builder_3.3.100.v_A47 org.eclipse.jdt.core.tests.compiler=org.eclipse.jdt.core.tests.compiler_3.3.100
org.eclipse.jdt.core.tests.model=org.eclipse.jdt.core.tests.model_3.3.100
org.eclipse.test.performance=org.eclipse.test.performance_3.6.0
diff --git a/releng/map/otdt.map b/releng/map/otdt.map index 3262d1286..5c06b4e30 100644 --- a/releng/map/otdt.map +++ b/releng/map/otdt.map @@ -54,7 +54,7 @@ plugin@org.eclipse.objectteams.otdt.ui.tests.refactoring,0.7.0=SVN,url=svn://loc !plugin@org.eclipse.jdt.debug.tests=SVN,url=svn://localhost/svnroot/tools/org.eclipse.objectteams/,path=testplugins/org.eclipse.jdt.debug.tests
!-- .. but from original CVS:
-plugin@org.eclipse.jdt.core.tests.builder=v_A46,/cvsroot/eclipse,
+plugin@org.eclipse.jdt.core.tests.builder=v_A47,/cvsroot/eclipse,
plugin@org.eclipse.jdt.debug.tests=v20100419,/cvsroot/eclipse,
!-- not compiled but taken from org.eclipse.test:
|