<div dir="ltr">Hi Hans!<div><br></div><div>The author of this commit asks me is there a chance to include this changes to 3.9 release? I'm not sure about our policy when RC has already been tagged.</div><div class="gmail_extra"><br><div class="gmail_quote">On Fri, Jul 29, 2016 at 9:01 AM, Ilia K via lldb-commits <span dir="ltr"><<a href="mailto:lldb-commits@lists.llvm.org" target="_blank">lldb-commits@lists.llvm.org</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">Author: ki.stfu<br>
Date: Fri Jul 29 01:01:20 2016<br>
New Revision: 277117<br>
<br>
URL: <a href="http://llvm.org/viewvc/llvm-project?rev=277117&view=rev" rel="noreferrer" target="_blank">http://llvm.org/viewvc/llvm-project?rev=277117&view=rev</a><br>
Log:<br>
Fix -break-insert not working when using absolute paths (MI)<br>
<br>
Summary:<br>
When trying to parse the -break-insert arguments as a named location, the string parsing was not configured to allow directory paths. This patch adds a constructor to allow the parsing of string as directory path along with the other parameters.<br>
<br>
This fixes <a href="https://llvm.org/bugs/show_bug.cgi?id=28709" rel="noreferrer" target="_blank">https://llvm.org/bugs/show_bug.cgi?id=28709</a><br>
<br>
Patch from <a href="mailto:malaperle@gmail.com" target="_blank">malaperle@gmail.com</a><br>
Reviewers: clayborg, ki.stfu<br>
Subscribers: lldb-commits, ki.stfu<br>
Differential Revision: <a href="https://reviews.llvm.org/D22902" rel="noreferrer" target="_blank">https://reviews.llvm.org/D22902</a><br>
<br>
<br>
Modified:<br>
    lldb/trunk/packages/Python/lldbsuite/test/tools/lldb-mi/breakpoint/TestMiBreak.py<br>
    lldb/trunk/tools/lldb-mi/MICmdArgValString.cpp<br>
    lldb/trunk/tools/lldb-mi/MICmdArgValString.h<br>
    lldb/trunk/tools/lldb-mi/MICmdCmdBreak.cpp<br>
<br>
Modified: lldb/trunk/packages/Python/lldbsuite/test/tools/lldb-mi/breakpoint/TestMiBreak.py<br>
URL: <a href="http://llvm.org/viewvc/llvm-project/lldb/trunk/packages/Python/lldbsuite/test/tools/lldb-mi/breakpoint/TestMiBreak.py?rev=277117&r1=277116&r2=277117&view=diff" rel="noreferrer" target="_blank">http://llvm.org/viewvc/llvm-project/lldb/trunk/packages/Python/lldbsuite/test/tools/lldb-mi/breakpoint/TestMiBreak.py?rev=277117&r1=277116&r2=277117&view=diff</a><br>
==============================================================================<br>
--- lldb/trunk/packages/Python/lldbsuite/test/tools/lldb-mi/breakpoint/TestMiBreak.py (original)<br>
+++ lldb/trunk/packages/Python/lldbsuite/test/tools/lldb-mi/breakpoint/TestMiBreak.py Fri Jul 29 01:01:20 2016<br>
@@ -155,7 +155,6 @@ class MiBreakTestCase(lldbmi_testcase.Mi<br>
<br>
     @skipIfWindows #<a href="http://llvm.org/pr24452" rel="noreferrer" target="_blank">llvm.org/pr24452</a>: Get lldb-mi tests working on Windows<br>
     @skipIfFreeBSD # <a href="http://llvm.org/pr22411" rel="noreferrer" target="_blank">llvm.org/pr22411</a>: Failure presumably due to known thread races<br>
-    @unittest2.expectedFailure("-break-insert doesn't work for absolute path")<br>
     def test_lldbmi_break_insert_file_line_absolute_path(self):<br>
         """Test that 'lldb-mi --interpreter' works for file:line breakpoints."""<br>
<br>
<br>
Modified: lldb/trunk/tools/lldb-mi/MICmdArgValString.cpp<br>
URL: <a href="http://llvm.org/viewvc/llvm-project/lldb/trunk/tools/lldb-mi/MICmdArgValString.cpp?rev=277117&r1=277116&r2=277117&view=diff" rel="noreferrer" target="_blank">http://llvm.org/viewvc/llvm-project/lldb/trunk/tools/lldb-mi/MICmdArgValString.cpp?rev=277117&r1=277116&r2=277117&view=diff</a><br>
==============================================================================<br>
--- lldb/trunk/tools/lldb-mi/MICmdArgValString.cpp (original)<br>
+++ lldb/trunk/tools/lldb-mi/MICmdArgValString.cpp Fri Jul 29 01:01:20 2016<br>
@@ -85,6 +85,30 @@ CMICmdArgValString::CMICmdArgValString(c<br>
 }<br>
<br>
 //++ ------------------------------------------------------------------------------------<br>
+// Details: CMICmdArgValString constructor.<br>
+// Type:    Method.<br>
+// Args:    vrArgName       - (R) Argument's name to search by.<br>
+//          vbMandatory     - (R) True = Yes must be present, false = optional argument.<br>
+//          vbHandleByCmd   - (R) True = Command processes *this option, false = not handled.<br>
+//          vbHandleQuotes  - (R) True = Parse a string surrounded by quotes spaces are not delimiters, false = only text up to<br>
+// next delimiting space character.<br>
+//          vbAcceptNumbers - (R) True = Parse a string and accept as a number if number, false = numbers not recognised as<br>
+//          vbHandleDirPaths - (R) True = Parse a string and accept as a file path if a path, false = file paths are not<br>
+// string types.<br>
+// Return:  None.<br>
+// Throws:  None.<br>
+//--<br>
+CMICmdArgValString::CMICmdArgValString(const CMIUtilString &vrArgName, const bool vbMandatory, const bool vbHandleByCmd,<br>
+               const bool vbHandleQuotes, const bool vbAcceptNumbers, const bool vbHandleDirPaths)<br>
+    : CMICmdArgValBaseTemplate(vrArgName, vbMandatory, vbHandleByCmd)<br>
+    , m_bHandleQuotedString(vbHandleQuotes)<br>
+    , m_bAcceptNumbers(vbAcceptNumbers)<br>
+    , m_bHandleDirPaths(vbHandleDirPaths)<br>
+    , m_bHandleAnything(false)<br>
+{<br>
+}<br>
+<br>
+//++ ------------------------------------------------------------------------------------<br>
 // Details: CMICmdArgValString destructor.<br>
 // Type:    Overridden.<br>
 // Args:    None.<br>
<br>
Modified: lldb/trunk/tools/lldb-mi/MICmdArgValString.h<br>
URL: <a href="http://llvm.org/viewvc/llvm-project/lldb/trunk/tools/lldb-mi/MICmdArgValString.h?rev=277117&r1=277116&r2=277117&view=diff" rel="noreferrer" target="_blank">http://llvm.org/viewvc/llvm-project/lldb/trunk/tools/lldb-mi/MICmdArgValString.h?rev=277117&r1=277116&r2=277117&view=diff</a><br>
==============================================================================<br>
--- lldb/trunk/tools/lldb-mi/MICmdArgValString.h (original)<br>
+++ lldb/trunk/tools/lldb-mi/MICmdArgValString.h Fri Jul 29 01:01:20 2016<br>
@@ -32,6 +32,8 @@ class CMICmdArgValString : public CMICmd<br>
     /* ctor */ CMICmdArgValString(const bool vbHandleQuotes, const bool vbAcceptNumbers, const bool vbHandleDirPaths);<br>
     /* ctor */ CMICmdArgValString(const CMIUtilString &vrArgName, const bool vbMandatory, const bool vbHandleByCmd,<br>
                                   const bool vbHandleQuotes = false, const bool vbAcceptNumbers = false);<br>
+    /* ctor */ CMICmdArgValString(const CMIUtilString &vrArgName, const bool vbMandatory, const bool vbHandleByCmd,<br>
+                                  const bool vbHandleQuotes, const bool vbAcceptNumbers, const bool vbHandleDirPaths);<br>
     //<br>
     bool IsStringArg(const CMIUtilString &vrTxt) const;<br>
<br>
<br>
Modified: lldb/trunk/tools/lldb-mi/MICmdCmdBreak.cpp<br>
URL: <a href="http://llvm.org/viewvc/llvm-project/lldb/trunk/tools/lldb-mi/MICmdCmdBreak.cpp?rev=277117&r1=277116&r2=277117&view=diff" rel="noreferrer" target="_blank">http://llvm.org/viewvc/llvm-project/lldb/trunk/tools/lldb-mi/MICmdCmdBreak.cpp?rev=277117&r1=277116&r2=277117&view=diff</a><br>
==============================================================================<br>
--- lldb/trunk/tools/lldb-mi/MICmdCmdBreak.cpp (original)<br>
+++ lldb/trunk/tools/lldb-mi/MICmdCmdBreak.cpp Fri Jul 29 01:01:20 2016<br>
@@ -100,7 +100,7 @@ CMICmdCmdBreakInsert::ParseArgs()<br>
         new CMICmdArgValOptionShort(m_constStrArgNamedInoreCnt, false, true, CMICmdArgValListBase::eArgValType_Number, 1));<br>
     m_setCmdArgs.Add(new CMICmdArgValOptionShort(m_constStrArgNamedRestrictBrkPtToThreadId, false, true,<br>
                                                    CMICmdArgValListBase::eArgValType_Number, 1));<br>
-    m_setCmdArgs.Add(new CMICmdArgValString(m_constStrArgNamedLocation, false, true));<br>
+    m_setCmdArgs.Add(new CMICmdArgValString(m_constStrArgNamedLocation, false, true, false, false, true));<br>
     return ParseValidateCmdOptions();<br>
 }<br>
<br>
<br>
<br>
_______________________________________________<br>
lldb-commits mailing list<br>
<a href="mailto:lldb-commits@lists.llvm.org" target="_blank">lldb-commits@lists.llvm.org</a><br>
<a href="http://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits" rel="noreferrer" target="_blank">http://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits</a><br>
</blockquote></div><div><br></div>-- <br><div data-smartmail="gmail_signature"><div dir="ltr">- Ilia</div></div>
</div></div>