mirror of
https://github.com/sheumann/hush.git
synced 2024-09-12 00:55:11 +00:00
The previous fix for 's/a/1/;s/b/2/;t one;p;:one;p' broke the case of
echo fooba | ./busybox sed -n 's/foo//;s/bar/found/p' I really need to start adding these tests to the testsuite. keep the substituted and altered flags seperate
This commit is contained in:
parent
3fe475677a
commit
edc388cf4e
@ -915,8 +915,7 @@ static void process_file(FILE * file)
|
||||
}
|
||||
}
|
||||
#endif
|
||||
altered = substituted;
|
||||
if (!be_quiet && altered && ((sed_cmd->next == NULL)
|
||||
if (!be_quiet && substituted && ((sed_cmd->next == NULL)
|
||||
|| (sed_cmd->next->cmd != 's'))) {
|
||||
force_print = 1;
|
||||
}
|
||||
@ -1105,7 +1104,7 @@ static void process_file(FILE * file)
|
||||
/* we will print the line unless we were told to be quiet or if the
|
||||
* line was altered (via a 'd'elete or 's'ubstitution), in which case
|
||||
* the altered line was already printed */
|
||||
if ((!be_quiet && !altered) || force_print) {
|
||||
if ((!be_quiet && !altered && !substituted) || force_print) {
|
||||
puts(pattern_space);
|
||||
}
|
||||
free(pattern_space);
|
||||
|
Loading…
Reference in New Issue
Block a user