This is the mail archive of the cygwin@cygwin.com mailing list for the Cygwin project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]

Re: unlink() problem


At 06:22 PM 7/31/2001, John Wiersba wrote:
>I'm having a problem with unlink().  I've scanned the FAQ and searched some
>in the newsgroup archives for information about the following problem.  I
>did find a post (see
>http://sources.redhat.com/ml/cygwin/2001-05/msg01095.html) but no apparent
>resolution.
>
>$ touch asdf
>$ perl -i -pe 1 asdf
>Can't do inplace edit on asdf: Permission denied.
>
>What perl is doing is equivalent to:
>
>$ perl -e '
>    open A, "< asdf" or die "one $!";  # open asdf for read
>    unlink "asdf";
>    open B, "> asdf" or die "two $!";  # open asdf for write
>    while (<A>) { print B }            # copy from A to B
>'
>two Permission denied at -e line 4.
>
>The problem:  after the unlink(), I can't open the same filename for write
>as I can on unix.  If I pause the program after unlinking asdf, it is still
>there and can be seen by ls, but can't be read by ls -l.  
>
>Is there a workaround for this behavior?  Is it considered a bug or is it
>just a quirk of the cygwin implementation of trying to implement unix
>filesystem semantics on top of windows?


The latter.  This has been quite a day for this issue!  This is the 
third time it came up.  Perhaps this qualifies as an FAQ now! ;-)

See my previous posts about this subject from earlier in the day:

http://www.cygwin.com/ml/cygwin/2001-07/msg01797.html
http://www.cygwin.com/ml/cygwin/2001-07/msg01774.html

There's also a related FAQ, although the message it mentions doesn't
seem to pop up anymore, which gives insight into the underlying 
implementation.  See:

http://www.cygwin.com/faq/faq_4.html#SEC57

Of course, the code is the "last word" on this subject in terms of the
actual implementation.







Larry Hall                              lhall@rfk.com
RFK Partners, Inc.                      http://www.rfk.com
118 Washington Street                   (508) 893-9779 - RFK Office
Holliston, MA 01746                     (508) 893-9889 - FAX


--
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/


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]