From 209710a46b78377f7e9160169df257f2a36d9b3a Mon Sep 17 00:00:00 2001 From: Mikhail Khodjaiants Date: Thu, 21 Nov 2002 21:58:05 +0000 Subject: [PATCH] The memory view does not display values if the address expression is '0xFFFFFFFF'. --- debug/org.eclipse.cdt.debug.core/ChangeLog | 4 ++++ .../internal/core/model/CFormattedMemoryBlock.java | 14 ++++++++++++-- 2 files changed, 16 insertions(+), 2 deletions(-) diff --git a/debug/org.eclipse.cdt.debug.core/ChangeLog b/debug/org.eclipse.cdt.debug.core/ChangeLog index a1d9ea73146..b32f544c2b1 100644 --- a/debug/org.eclipse.cdt.debug.core/ChangeLog +++ b/debug/org.eclipse.cdt.debug.core/ChangeLog @@ -1,3 +1,7 @@ +2002-11-21 Mikhail Khodjaiants + The memory view does not display values if the address expression is '0xFFFFFFFF'. + * CFormattedMemoryBlock.java + 2002-11-21 Mikhail Khodjaiants Added the handler of ICDIDestroyedEvent to 'CFormattedMemoryBlock. * CFormattedMemoryBlock.java diff --git a/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/model/CFormattedMemoryBlock.java b/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/model/CFormattedMemoryBlock.java index 35ef02886d8..fc20314ad69 100644 --- a/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/model/CFormattedMemoryBlock.java +++ b/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/model/CFormattedMemoryBlock.java @@ -290,7 +290,7 @@ public class CFormattedMemoryBlock extends CDebugElement while( bytes != null && offset < bytes.length ) { int length = Math.min( fWordSize * fNumberOfColumns, bytes.length - offset ); - fRows.add( new CFormattedMemoryBlockRow( getStartAddress() + offset, + fRows.add( new CFormattedMemoryBlockRow( getRowAddress( offset ), createData( bytes, offset, length ), createAscii( bytes, offset, length ) ) ); offset += length; @@ -790,5 +790,15 @@ public class CFormattedMemoryBlock extends CDebugElement public boolean isStartAddressChanged() { return fStartAddressChanged; - } + } + + private long getRowAddress( int offset ) + { + long result = getStartAddress() + offset; + if ( result > 0xFFFFFFFFL ) + { + result -= 0xFFFFFFFFL; + } + return result; + } }