### Eclipse Workspace Patch 1.0 #P org.eclipse.jdt.core Index: compiler/org/eclipse/jdt/internal/compiler/parser/Parser.java =================================================================== RCS file: /cvsroot/eclipse/org.eclipse.jdt.core/compiler/org/eclipse/jdt/internal/compiler/parser/Parser.java,v retrieving revision 1.417 diff -u -r1.417 Parser.java --- compiler/org/eclipse/jdt/internal/compiler/parser/Parser.java 19 Mar 2010 12:43:52 -0000 1.417 +++ compiler/org/eclipse/jdt/internal/compiler/parser/Parser.java 26 Mar 2010 07:36:23 -0000 @@ -10332,10 +10332,13 @@ this.currentElement = this.currentElement.parent; } else if(this.currentElement instanceof RecoveredField && !(this.currentElement instanceof RecoveredInitializer)) { - - int end = ((RecoveredField)this.currentElement).fieldDeclaration.sourceEnd; - this.currentElement.updateSourceEndIfNecessary(end); - this.currentElement = this.currentElement.parent; + // Do not move focus to parent if we are still inside an array initializer + // https://bugs.eclipse.org/bugs/show_bug.cgi?id=292087 + if (this.currentElement.bracketBalance <= 0) { + int end = ((RecoveredField)this.currentElement).fieldDeclaration.sourceEnd; + this.currentElement.updateSourceEndIfNecessary(end); + this.currentElement = this.currentElement.parent; + } } } }