View | Details | Raw Unified | Return to bug 328362
Collapse All | Expand All

(-)formatter/org/eclipse/jdt/internal/formatter/Scribe.java (-1 / +3 lines)
Lines 418-425 Link Here
418
										}
418
										}
419
									}
419
									}
420
									// Update the replacement string
420
									// Update the replacement string
421
									if (replacementStart >= length) {
421
									if (replacementStart > length || (replacementStart == length && spacesOutsideLength > 0)) {
422
										edit.offset = -1;
422
										edit.offset = -1;
423
									} else if (spacesOutsideLength == 0 && replacementStart == length) {
424
										edit.replacement = ""; //$NON-NLS-1$
423
									} else {
425
									} else {
424
										edit.replacement = edit.replacement.substring(replacementStart);
426
										edit.replacement = edit.replacement.substring(replacementStart);
425
									}
427
									}
(-)src/org/eclipse/jdt/core/tests/formatter/FormatterBugsTests.java (+24 lines)
Lines 7604-7607 Link Here
7604
	);
7604
	);
7605
}
7605
}
7606
7606
7607
/**
7608
 * @bug 328362: [formatter] Format regions does not format as expected
7609
 * @test Ensure that the given regions are well formatted
7610
 * @see "https://bugs.eclipse.org/bugs/show_bug.cgi?id=328362"
7611
 */
7612
public void testBug328362() throws Exception {
7613
	String source =
7614
		"package test1;\n" + 
7615
		"\n" + 
7616
		"[#    class  A {#]\n" + 
7617
		"\n" + 
7618
		"[#        int  i;#]\n" + 
7619
		"\n" + 
7620
		"}\n";
7621
	formatSource(source,
7622
		"package test1;\n" + 
7623
		"\n" + 
7624
		"class A {\n" + 
7625
		"\n" + 
7626
		"	int i;\n" + 
7627
		"\n" + 
7628
		"}\n"
7629
	);
7630
}
7607
}
7631
}

Return to bug 328362