Will the true fix you mention get rid of the call to select()?  Because if so, then we might be able to consider re-enabling this on Windows sooner than I had anticipated.<br><br><div class="gmail_quote">On Mon Nov 17 2014 at 4:44:47 PM Greg Clayton <<a href="mailto:gclayton@apple.com">gclayton@apple.com</a>> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">Author: gclayton<br>
Date: Mon Nov 17 18:39:31 2014<br>
New Revision: 222206<br>
<br>
URL: <a href="http://llvm.org/viewvc/llvm-project?rev=222206&view=rev" target="_blank">http://llvm.org/viewvc/llvm-<u></u>project?rev=222206&view=rev</a><br>
Log:<br>
Fixed a broken test suite test after recent editline merges.<br>
<br>
The problem is that editline currently is trying to be smart when we paste things into a terminal window. It detects that input is pending and multi-line input is accepted as long as there is anything pending.<br>
<br>
So if you open lldb and paste the text between the quotes:<br>
<br>
"command regex carp<br>
s/^$/help/<br>
<br>
carp<br>
"<br>
<br>
We still still be stuck in the "command regex" multi-line input reader as it will have all three lines:<br>
<br>
"s/^$/help/<br>
<br>
carp<br>
"<br>
<br>
The true fix for this is something Kate Stone will soon work on:<br>
<br>
- multi-line input readers must opt into this paste/pending input feature ("expr" will opt into it, all other commands won't)<br>
- If we are in a multi-line input reader that requests this and stuff is pasted, then it will do what it does today<br>
- if we start in a IOHandler that doesn't need/want pending input and text is pasted, and we transistion to a IOHandler that does want this functionality, then disable the pending input. Example text would be:<br>
<br>
"frame variable<br>
thread backtrace<br>
expr<br>
for (int i=0;i<10;++i)<br>
  (int)printf("i = %i\n", i);<br>
<br>
frame select 0<br>
"<br>
<br>
When we push the expression multi-line reader we would disable the pending input because we had pending input _before_ we entered "expr".<br>
<br>
If we did this first:<br>
<br>
(lldb) expr<br>
<br>
Then we pasted:<br>
<br>
"void foo()<br>
{<br>
}<br>
<br>
void bar()<br>
{<br>
}<br>
"<br>
<br>
Then we would allow the pending input to not look for an empty line to terminate the expression. We filed radar 19008425 to track fixing this issue.<br>
<br>
<br>
Modified:<br>
    lldb/trunk/test/<u></u>functionalities/command_regex/<u></u>TestCommandRegex.py<br>
<br>
Modified: lldb/trunk/test/<u></u>functionalities/command_regex/<u></u>TestCommandRegex.py<br>
URL: <a href="http://llvm.org/viewvc/llvm-project/lldb/trunk/test/functionalities/command_regex/TestCommandRegex.py?rev=222206&r1=222205&r2=222206&view=diff" target="_blank">http://llvm.org/viewvc/llvm-<u></u>project/lldb/trunk/test/<u></u>functionalities/command_regex/<u></u>TestCommandRegex.py?rev=<u></u>222206&r1=222205&r2=222206&<u></u>view=diff</a><br>
==============================<u></u>==============================<u></u>==================<br>
--- lldb/trunk/test/<u></u>functionalities/command_regex/<u></u>TestCommandRegex.py (original)<br>
+++ lldb/trunk/test/<u></u>functionalities/command_regex/<u></u>TestCommandRegex.py Mon Nov 17 18:39:31 2014<br>
@@ -32,6 +32,7 @@ class CommandRegexTestCase(TestBase)<u></u>:<br>
         child.sendline('s/^$/help/')<br>
         child.expect_exact(regex_<u></u>prompt1)<br>
         child.sendline('')<br>
+        child.expect_exact(prompt)<br>
         # Help!<br>
         child.sendline('Help__')<br>
         # If we see the familiar 'help' output, the test is done.<br>
<br>
<br>
______________________________<u></u>_________________<br>
lldb-commits mailing list<br>
<a href="mailto:lldb-commits@cs.uiuc.edu" target="_blank">lldb-commits@cs.uiuc.edu</a><br>
<a href="http://lists.cs.uiuc.edu/mailman/listinfo/lldb-commits" target="_blank">http://lists.cs.uiuc.edu/<u></u>mailman/listinfo/lldb-commits</a><br>
</blockquote></div>