From c0c96c265c1f362558b7ba6aeac8004faeabd600 Mon Sep 17 00:00:00 2001 From: John Cortell Date: Wed, 21 Mar 2007 06:05:36 +0000 Subject: [PATCH] Fixed 178485. Breakpoints can disappear from the disassembler view if they're set on the first or last line in the view. --- .../views/disassembly/DisassemblyAnnotationModel.java | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) diff --git a/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/views/disassembly/DisassemblyAnnotationModel.java b/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/views/disassembly/DisassemblyAnnotationModel.java index 76852ecbafd..6b6dd25d8c1 100644 --- a/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/views/disassembly/DisassemblyAnnotationModel.java +++ b/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/views/disassembly/DisassemblyAnnotationModel.java @@ -145,7 +145,16 @@ public class DisassemblyAnnotationModel extends AnnotationModel { try { start = fDocument.getLineOffset( instrNumber - 1 ); if ( start > -1 ) { - return new Position( start, document.getLineLength( instrNumber - 1 ) ); + // Avoid the document boundaries; see bugzilla 178485 + int lineLen = document.getLineLength(instrNumber - 1); + if (start == 0) { + start++; + lineLen--; + } + if (start + lineLen == document.getLength()) { + lineLen--; + } + return new Position( start, lineLen ); } } catch( BadLocationException e ) {