| 774 | |
| 775 | |
| 776 | DataBuffer LldbAdapter::ReadMemory(std::uintptr_t address, std::size_t size) |
| 777 | { |
| 778 | if (!m_quitingMutex.try_lock()) |
| 779 | return DataBuffer{}; |
| 780 | |
| 781 | auto buffer = new uint8_t[size]; |
| 782 | SBError error; |
| 783 | size_t bytesRead = m_process.ReadMemory(address, buffer, size, error); |
| 784 | DataBuffer result; |
| 785 | if (bytesRead > 0 && error.Success()) |
| 786 | { |
| 787 | result.Append(buffer, bytesRead); |
| 788 | } |
| 789 | delete[] buffer; |
| 790 | m_quitingMutex.unlock(); |
| 791 | return result; |
| 792 | } |
| 793 | |
| 794 | |
| 795 | bool LldbAdapter::WriteMemory(std::uintptr_t address, const DataBuffer& buffer) |
nothing calls this directly
no outgoing calls
no test coverage detected