This is the mail archive of the cygwin 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]
Other format: [Raw text]

Re: Unable to delete directory in Cygwin

Hash: SHA1

According to Gina Verlekar on 6/15/2006 3:53 AM:
> Hi,
> I have implemented some changes in the linker code for some intermediate
> processing. 
> For that I need to create a temporary directory, generate some
> intermediate 
> files in it, process those files by calling a function. After processing
> of the	
> intermediate files, I delete the intermediate files and the temporary
> directory.	
> While this logic works fine in the linux, the temporary directory does
> not get	
> deleted in cygwin.

Windows is not Linux, and will not allow users to delete in-use
directories (where a directory is considered in-use if it contains files,
or if any process is using that directory as its current working
directory), nor the clean deletion of files that are still open.  POSIX
allows this behavior, and cygwin cannot change Window's implementation of
deletion semantics.  Just because Linux behaves nicer doesn't mean that it
is portable to remove in-use directories.  Fix your code to first close
all outstanding file handles before trying to remove the files, and then
the directory.

That said, cygwin does try to emulate linux, and if someone were to
contribute a patch that would allow cygwin to emulate directory deletion
if it knows that all open handles have also been scheduled for unlinking
at process end, then

> /* ldmain.c */
> main()
> {
> .
> .
> my_function();
> .
> .
> delete tmp_directory;//I have to delete the tmp_directory only here 
> }

pseudocode like this is worthless when asking for help.  Post a simple,
self-contained, compiling testcase if you want more help.

- --
Life is short - so eat dessert first!

Eric Blake   
Version: GnuPG v1.4.2.1 (Cygwin)
Comment: Public key at
Comment: Using GnuPG with Mozilla -


Unsubscribe info:
Problem reports:

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