Skip site navigation (1)Skip section navigation (2)
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>