DavidSpickett updated this revision to Diff 292142. DavidSpickett added a comment.
- Return early - Only check for expected error in TestMemoryRegion Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D87694/new/ https://reviews.llvm.org/D87694 Files: lldb/source/Commands/CommandObjectMemory.cpp lldb/test/API/functionalities/memory-region/TestMemoryRegion.py Index: lldb/test/API/functionalities/memory-region/TestMemoryRegion.py =================================================================== --- lldb/test/API/functionalities/memory-region/TestMemoryRegion.py +++ lldb/test/API/functionalities/memory-region/TestMemoryRegion.py @@ -41,6 +41,12 @@ self.assertFalse(result.Succeeded()) self.assertRegexpMatches(result.GetError(), "Usage: memory region ADDR") + # Test that when the address fails to parse, we show an error + interp.HandleCommand("memory region not_an_address", result) + self.assertFalse(result.Succeeded()) + self.assertRegexpMatches(result.GetError(), + "error: invalid address argument \"not_an_address\"") + # Now let's print the memory region starting at 0 which should always work. interp.HandleCommand("memory region 0x0", result) self.assertTrue(result.Succeeded()) Index: lldb/source/Commands/CommandObjectMemory.cpp =================================================================== --- lldb/source/Commands/CommandObjectMemory.cpp +++ lldb/source/Commands/CommandObjectMemory.cpp @@ -1707,6 +1707,7 @@ "invalid address argument \"%s\": %s\n", command[0].c_str(), error.AsCString()); result.SetStatus(eReturnStatusFailed); + return false; } }
Index: lldb/test/API/functionalities/memory-region/TestMemoryRegion.py =================================================================== --- lldb/test/API/functionalities/memory-region/TestMemoryRegion.py +++ lldb/test/API/functionalities/memory-region/TestMemoryRegion.py @@ -41,6 +41,12 @@ self.assertFalse(result.Succeeded()) self.assertRegexpMatches(result.GetError(), "Usage: memory region ADDR") + # Test that when the address fails to parse, we show an error + interp.HandleCommand("memory region not_an_address", result) + self.assertFalse(result.Succeeded()) + self.assertRegexpMatches(result.GetError(), + "error: invalid address argument \"not_an_address\"") + # Now let's print the memory region starting at 0 which should always work. interp.HandleCommand("memory region 0x0", result) self.assertTrue(result.Succeeded()) Index: lldb/source/Commands/CommandObjectMemory.cpp =================================================================== --- lldb/source/Commands/CommandObjectMemory.cpp +++ lldb/source/Commands/CommandObjectMemory.cpp @@ -1707,6 +1707,7 @@ "invalid address argument \"%s\": %s\n", command[0].c_str(), error.AsCString()); result.SetStatus(eReturnStatusFailed); + return false; } }
_______________________________________________ lldb-commits mailing list lldb-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits