* editors/sed.c (process_file): Stop processing deleted lines.

* testsuite/sed/sed-does-not-substitute-in-delete-line: New.
This commit is contained in:
Matt Kraai 2002-04-01 16:17:37 +00:00
parent 75ce8d7c88
commit 5c69cd84ff
2 changed files with 7 additions and 0 deletions

View File

@ -659,6 +659,7 @@ static void process_file(FILE *file)
/* we are currently within the beginning & ending address range */
still_in_range
) {
int deleted = 0;
/*
* actual sedding
@ -671,6 +672,7 @@ static void process_file(FILE *file)
case 'd':
altered++;
deleted = 1;
break;
case 's':
@ -772,6 +774,9 @@ static void process_file(FILE *file)
else {
still_in_range = 1;
}
if (deleted)
break;
}
}

View File

@ -0,0 +1,2 @@
echo foo | busybox sed -e /foo/d -e s/foo/bar/ >foo
cmp foo /dev/null