From c146f5ae4d1f630b900709c635b9695a80095172 Mon Sep 17 00:00:00 2001 From: John Cortell Date: Thu, 1 Oct 2009 02:22:03 +0000 Subject: [PATCH] [290880] add null-pointer check on frame.getAddress() return value (applied patch) --- .../adapters/DisassemblyElementAnnotationProvider.java | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/elements/adapters/DisassemblyElementAnnotationProvider.java b/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/elements/adapters/DisassemblyElementAnnotationProvider.java index 24a86954842..c122c97c7ff 100644 --- a/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/elements/adapters/DisassemblyElementAnnotationProvider.java +++ b/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/elements/adapters/DisassemblyElementAnnotationProvider.java @@ -13,6 +13,7 @@ package org.eclipse.cdt.debug.internal.ui.elements.adapters; import java.math.BigInteger; +import org.eclipse.cdt.core.IAddress; import org.eclipse.cdt.debug.core.CDebugCorePlugin; import org.eclipse.cdt.debug.core.model.ICLineBreakpoint; import org.eclipse.cdt.debug.core.model.ICStackFrame; @@ -75,8 +76,8 @@ public class DisassemblyElementAnnotationProvider implements IDocumentElementAnn if ( element instanceof IDisassemblyInstruction ) { BigInteger address = ((IDisassemblyInstruction)element).getAdress().getValue(); ICStackFrame frame = (ICStackFrame)input; - BigInteger frameAddress = frame.getAddress().getValue(); - if ( address.equals( frameAddress ) ) { + IAddress frameAddress = frame.getAddress(); // will return null if frame has been disposed + if ( (frameAddress != null) && address.equals( frameAddress.getValue() ) ) { IThread thread = frame.getThread(); boolean topFrame; try {