#
287749 |
|
13-Sep-2015 |
jilles |
MFC r287081: sh: Don't create bad parse result when postponing a bad substitution error.
An invalid substitution like ${var@} does not cause a parse error but is stored in the intermediate representation, to be written as part of the error message. If there is a CTL* byte in the stored part, this confuses some code such as the code to skip an unused alternative such as in ${var-alternative}.
To keep things simple, do not store CTL* bytes.
Found with afl-fuzz.
|
#
287749 |
|
13-Sep-2015 |
jilles |
MFC r287081: sh: Don't create bad parse result when postponing a bad substitution error.
An invalid substitution like ${var@} does not cause a parse error but is stored in the intermediate representation, to be written as part of the error message. If there is a CTL* byte in the stored part, this confuses some code such as the code to skip an unused alternative such as in ${var-alternative}.
To keep things simple, do not store CTL* bytes.
Found with afl-fuzz.
|