Skip to content

Commit 0d1bead

Browse files
committed
make m_local_buffer Optional, to allow for 0-sized buffers
1 parent c4fbbcc commit 0d1bead

File tree

1 file changed

+4
-4
lines changed

1 file changed

+4
-4
lines changed

lldb/source/Target/SwiftLanguageRuntimeDynamicTypeResolution.cpp

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -390,8 +390,8 @@ class LLDBMemoryReader : public swift::remote::MemoryReader {
390390
uint64_t size) override {
391391
if (m_local_buffer) {
392392
auto addr = address.getAddressData();
393-
if (addr >= m_local_buffer &&
394-
addr + size <= m_local_buffer + m_local_buffer_size) {
393+
if (addr >= *m_local_buffer &&
394+
addr + size <= *m_local_buffer + m_local_buffer_size) {
395395
// If this crashes, the assumptions stated in
396396
// GetDynamicTypeAndAddress_Protocol() most likely no longer
397397
// hold.
@@ -481,15 +481,15 @@ class LLDBMemoryReader : public swift::remote::MemoryReader {
481481

482482
void popLocalBuffer() {
483483
lldbassert(m_local_buffer);
484-
m_local_buffer = 0;
484+
m_local_buffer.reset();
485485
m_local_buffer_size = 0;
486486
}
487487

488488
private:
489489
Process &m_process;
490490
size_t m_max_read_amount;
491491

492-
uint64_t m_local_buffer = 0;
492+
llvm::Optional<uint64_t> m_local_buffer;
493493
uint64_t m_local_buffer_size = 0;
494494
};
495495

0 commit comments

Comments
 (0)