Index: lldb/trunk/packages/Python/lldbsuite/test/tools/lldb-mi/breakpoint/TestMiBreak.py =================================================================== --- lldb/trunk/packages/Python/lldbsuite/test/tools/lldb-mi/breakpoint/TestMiBreak.py +++ lldb/trunk/packages/Python/lldbsuite/test/tools/lldb-mi/breakpoint/TestMiBreak.py @@ -155,7 +155,6 @@ @skipIfWindows #llvm.org/pr24452: Get lldb-mi tests working on Windows @skipIfFreeBSD # llvm.org/pr22411: Failure presumably due to known thread races - @unittest2.expectedFailure("-break-insert doesn't work for absolute path") def test_lldbmi_break_insert_file_line_absolute_path(self): """Test that 'lldb-mi --interpreter' works for file:line breakpoints.""" Index: lldb/trunk/tools/lldb-mi/MICmdArgValString.h =================================================================== --- lldb/trunk/tools/lldb-mi/MICmdArgValString.h +++ lldb/trunk/tools/lldb-mi/MICmdArgValString.h @@ -32,6 +32,8 @@ /* ctor */ CMICmdArgValString(const bool vbHandleQuotes, const bool vbAcceptNumbers, const bool vbHandleDirPaths); /* ctor */ CMICmdArgValString(const CMIUtilString &vrArgName, const bool vbMandatory, const bool vbHandleByCmd, const bool vbHandleQuotes = false, const bool vbAcceptNumbers = false); + /* ctor */ CMICmdArgValString(const CMIUtilString &vrArgName, const bool vbMandatory, const bool vbHandleByCmd, + const bool vbHandleQuotes, const bool vbAcceptNumbers, const bool vbHandleDirPaths); // bool IsStringArg(const CMIUtilString &vrTxt) const; Index: lldb/trunk/tools/lldb-mi/MICmdArgValString.cpp =================================================================== --- lldb/trunk/tools/lldb-mi/MICmdArgValString.cpp +++ lldb/trunk/tools/lldb-mi/MICmdArgValString.cpp @@ -85,6 +85,30 @@ } //++ ------------------------------------------------------------------------------------ +// Details: CMICmdArgValString constructor. +// Type: Method. +// Args: vrArgName - (R) Argument's name to search by. +// vbMandatory - (R) True = Yes must be present, false = optional argument. +// vbHandleByCmd - (R) True = Command processes *this option, false = not handled. +// vbHandleQuotes - (R) True = Parse a string surrounded by quotes spaces are not delimiters, false = only text up to +// next delimiting space character. +// vbAcceptNumbers - (R) True = Parse a string and accept as a number if number, false = numbers not recognised as +// vbHandleDirPaths - (R) True = Parse a string and accept as a file path if a path, false = file paths are not +// string types. +// Return: None. +// Throws: None. +//-- +CMICmdArgValString::CMICmdArgValString(const CMIUtilString &vrArgName, const bool vbMandatory, const bool vbHandleByCmd, + const bool vbHandleQuotes, const bool vbAcceptNumbers, const bool vbHandleDirPaths) + : CMICmdArgValBaseTemplate(vrArgName, vbMandatory, vbHandleByCmd) + , m_bHandleQuotedString(vbHandleQuotes) + , m_bAcceptNumbers(vbAcceptNumbers) + , m_bHandleDirPaths(vbHandleDirPaths) + , m_bHandleAnything(false) +{ +} + +//++ ------------------------------------------------------------------------------------ // Details: CMICmdArgValString destructor. // Type: Overridden. // Args: None. Index: lldb/trunk/tools/lldb-mi/MICmdCmdBreak.cpp =================================================================== --- lldb/trunk/tools/lldb-mi/MICmdCmdBreak.cpp +++ lldb/trunk/tools/lldb-mi/MICmdCmdBreak.cpp @@ -100,7 +100,7 @@ new CMICmdArgValOptionShort(m_constStrArgNamedInoreCnt, false, true, CMICmdArgValListBase::eArgValType_Number, 1)); m_setCmdArgs.Add(new CMICmdArgValOptionShort(m_constStrArgNamedRestrictBrkPtToThreadId, false, true, CMICmdArgValListBase::eArgValType_Number, 1)); - m_setCmdArgs.Add(new CMICmdArgValString(m_constStrArgNamedLocation, false, true)); + m_setCmdArgs.Add(new CMICmdArgValString(m_constStrArgNamedLocation, false, true, false, false, true)); return ParseValidateCmdOptions(); }