Commit 3c2840e
committed
Close backslash-escaped-quote bypass; narrow changelog claim
dequoteForMatching tracked quote state without escape awareness, so a
backslash-escaped quote (\") still toggled quote state the same as a real
one. In real bash \" is a literal quote character that never opens or
closes a quoted span, so an operator or flag that follows is genuinely
unquoted. Skip the escaped character without touching quote state.
Also narrow the CHANGELOG's nested bash -c claim to what the tests
actually cover (one level of quoting inside -c), not true multi-level
nested-shell parsing, which remains a known gap tracked separately.1 parent 0d44afc commit 3c2840e
2 files changed
Lines changed: 30 additions & 1 deletion
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
45 | 45 | | |
46 | 46 | | |
47 | 47 | | |
| 48 | + | |
| 49 | + | |
| 50 | + | |
| 51 | + | |
| 52 | + | |
| 53 | + | |
48 | 54 | | |
49 | 55 | | |
50 | 56 | | |
51 | 57 | | |
52 | 58 | | |
53 | | - | |
| 59 | + | |
| 60 | + | |
| 61 | + | |
| 62 | + | |
| 63 | + | |
| 64 | + | |
| 65 | + | |
54 | 66 | | |
55 | 67 | | |
56 | 68 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
736 | 736 | | |
737 | 737 | | |
738 | 738 | | |
| 739 | + | |
| 740 | + | |
| 741 | + | |
| 742 | + | |
| 743 | + | |
| 744 | + | |
| 745 | + | |
| 746 | + | |
| 747 | + | |
| 748 | + | |
| 749 | + | |
| 750 | + | |
| 751 | + | |
| 752 | + | |
| 753 | + | |
| 754 | + | |
| 755 | + | |
739 | 756 | | |
740 | 757 | | |
741 | 758 | | |
| |||
0 commit comments