Date: Thu, 13 Jun 2002 18:28:52 -0700 (PDT) From: Maxim Sobolev <sobomax@FreeBSD.org> To: cvs-committers@FreeBSD.org, cvs-all@FreeBSD.org Subject: cvs commit: src/usr.bin/sed main.c Message-ID: <200206140128.g5E1Sqd34821@freefall.freebsd.org>
next in thread | raw e-mail | index | archive | help
sobomax 2002/06/13 18:28:52 PDT
Modified files:
usr.bin/sed main.c
Log:
Fix one serious bug and one potential problem with in-place editing code:
- original version of code worked incorrectly when more than one
input files were specified - it was moving the last line from the 1st file
to be the first line of the 2nd, last line of the 2nd to be the first
line of the 3rd and so on;
- use mmap()->write() to create temporary file instead of
malloc()->read()->write(), which was not only slower, but also did not
bother to free allocated memory once backup file was created, potentially
leading to memory exhausting when regex is applied to a big file or a large
number of small ones.
Revision Changes Path
1.22 +60 -70 src/usr.bin/sed/main.c
To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe cvs-all" in the body of the message
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200206140128.g5E1Sqd34821>
