[lldb-dev] Backslashes in command arguments

Zachary Turner zturner at google.com
Thu Jan 8 14:31:44 PST 2015

FWIW, Removing backslash handling from this function (essentially ignoring
backslashes in command arguments) fixes about 12-15 tests on Windows with
no other changes.  I see there's some logic in Args for encoding and
decoding escape sequences, but this only happens if a particular command
option is set, and that command only only appears to be set for the
"prompt" command.  I'm not sure if removing the backslash logic from
SetCommandString would interfere with this command in any way, but it
doesn't seem like it would interfere with any other commands, unless I'm
missing something.

On Thu Jan 08 2015 at 1:43:16 PM Zachary Turner <zturner at google.com> wrote:

> One thing causing many tests to fail on Windows is the presence of
> backslashes in argument.  Until now, I've worked around this in many cases
> by making sure that arguments with backslashes are always quoted.
> But there are some cases where this is not easy to guarantee and now I'm
> leaning towards (at least on Windows) allowing backslashes in argument
> strings.  The code in question comes from the function *void
> SetCommandString (const char *command)* in the file Args.cpp
> In particular, it implements special handling of whitespace, single
> quotes, double quotes, and backslashes.  For the case of backslashes it
> removes them from the string.
> What would be the implications of removing backslash handling from this
> function for all platforms?  I would prefer to keep platform specific code
> out of generic code, but I think this needs to be changed on Windows.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/lldb-dev/attachments/20150108/72974770/attachment.html>

More information about the lldb-dev mailing list