Subject: Re: sed -i problem?
From: Bob McGowan <[email-masked]>
To: Robert Mecklenburg <[email-masked]>, [email-masked]
Cc: Cygwin Users List <[email-masked]>
Date: Fri, 03 Jan 2003 09:17:22 -0800

Some additional info, perhaps helpful in the final analysis -

Supply a suffix to the -i option, the original gets renamed with the suffix 
appended, and the temp file gets renamed to the original name.

This was found by checking the file dates from a long listing, not strace-ing 
the execution.

This may also provide a work-around for Robert, requiring the removal of the 
backup file, but at least the original named file has the edited content, as 
desired.

Bob

Max Bowsher wrote:
> Robert Mecklenburg wrote:
> 
>>I seem to be having problem with the -i flag in sed 4.0.1 in the
>>latest cygwin release.  The docs state -i places output in a tmp file
>>and renames the tmp to the original when finished.  It appears the
>>rename is not happening for me:
> 
> [snip example]
> 
> I did a quick bit of strace-ing, and it seems that sed isn't closing the
> input and output files before doing the rename. Unsurprisingly, this fails
> with "Access is denied.".
> 
> But sed is trying to close the files. It gets as far as
> lib/utils.c:ck_fclose(stream), but then it does something complicated with a
> linked list, and ends up never calling do_ck_fclose(), which would actually
> call fclose().
> 
> Right, I've got no more time now, so hopefully someone else will take my
> analysis, and finish tracking down this bug.
> 
> Max.
> 
> 
> 
> --
> Unsubscribe info:      http://cygwin.com/ml/#unsubscribe-simple
> Bug reporting:         http://cygwin.com/bugs.html
> Documentation:         http://cygwin.com/docs.html
> FAQ:                   http://cygwin.com/faq/

-- 
Bob McGowan
Staff Development Engineer
VERITAS Software
[email-masked]

--
Unsubscribe info:      http://cygwin.com/ml/#unsubscribe-simple
Bug reporting:         http://cygwin.com/bugs.html
Documentation:         http://cygwin.com/docs.html
FAQ:                   http://cygwin.com/faq/