diff options
author | Greg Clayton <gclayton@apple.com> | 2013-03-21 00:24:59 +0000 |
---|---|---|
committer | Greg Clayton <gclayton@apple.com> | 2013-03-21 00:24:59 +0000 |
commit | c25e21c10ef857d034f1be4a5c16898e08f7c5a7 (patch) | |
tree | 3b66c2b1e21755ed1ac98d3470fd5cbdc70f0f37 /lldb/tools/debugserver/source/DNBDataRef.h | |
parent | 9be783da4598dac37ae033332d877d59c10400dd (diff) | |
download | bcm5719-llvm-c25e21c10ef857d034f1be4a5c16898e08f7c5a7.tar.gz bcm5719-llvm-c25e21c10ef857d034f1be4a5c16898e08f7c5a7.zip |
Simplify the logic for DNBDataRef::ValidOffsetForDataOfSize() and DNBDataRef::ValidOffset() functions.
llvm-svn: 177615
Diffstat (limited to 'lldb/tools/debugserver/source/DNBDataRef.h')
-rw-r--r-- | lldb/tools/debugserver/source/DNBDataRef.h | 18 |
1 files changed, 16 insertions, 2 deletions
diff --git a/lldb/tools/debugserver/source/DNBDataRef.h b/lldb/tools/debugserver/source/DNBDataRef.h index fbecb7d4a76..7721f78c4a8 100644 --- a/lldb/tools/debugserver/source/DNBDataRef.h +++ b/lldb/tools/debugserver/source/DNBDataRef.h @@ -56,8 +56,22 @@ public: m_swap = false; } - bool ValidOffset(offset_t offset) const { return (m_start < m_end) && ((uint32_t)(m_end - m_start) > offset); } - bool ValidOffsetForDataOfSize(offset_t offset, uint32_t num_bytes) const { return (m_start < m_end) && ((uint32_t)(m_end - m_start) > (offset + ((num_bytes > 0) ? (num_bytes - 1) : 0))); } + offset_t BytesLeft (offset_t offset) const + { + const offset_t size = GetSize(); + if (size > offset) + return size - offset; + return 0; + } + + bool ValidOffset(offset_t offset) const + { + return BytesLeft(offset) > 0; + } + bool ValidOffsetForDataOfSize(offset_t offset, uint32_t num_bytes) const + { + return num_bytes <= BytesLeft (offset); + } size_t GetSize() const { return m_end - m_start; } const uint8_t * GetDataStart() const { return m_start; } const uint8_t * GetDataEnd() const { return m_end; } |