Unescape the token returned by builtin_commandline

Fixes #2075
This commit is contained in:
ridiculousfish 2015-05-19 22:13:55 -07:00
parent 386d6a77f2
commit 2008415106

View file

@ -206,7 +206,9 @@ static void write_part(const wchar_t *begin,
{ {
case TOK_STRING: case TOK_STRING:
{ {
out.append(escape_string(tok_last(&tok), UNESCAPE_INCOMPLETE)); wcstring tmp = tok_last(&tok);
unescape_string_in_place(&tmp, UNESCAPE_INCOMPLETE);
out.append(tmp);
out.push_back(L'\n'); out.push_back(L'\n');
break; break;
} }
@ -230,8 +232,9 @@ static void write_part(const wchar_t *begin,
} }
// debug( 0, L"woot2 %ls -> %ls", buff, esc ); // debug( 0, L"woot2 %ls -> %ls", buff, esc );
wcstring tmp = wcstring(begin, end - begin);
stdout_buffer.append(begin, end - begin); unescape_string_in_place(&tmp, UNESCAPE_INCOMPLETE);
stdout_buffer.append(tmp);
stdout_buffer.append(L"\n"); stdout_buffer.append(L"\n");
} }