From: sandmann AT clio DOT rice DOT edu (Charles Sandmann) Message-Id: <10209020554.AA22904@clio.rice.edu> Subject: Re: Two rm.exe issues on XP To: acottrel AT ihug DOT com DOT au (Andrew Cottrell) Date: Mon, 2 Sep 2002 00:54:52 -0500 (CDT) Cc: djgpp-workers AT delorie DOT com In-Reply-To: <003a01c2517e$a2cae410$0100a8c0@p4> from "Andrew Cottrell" at Sep 01, 2002 04:12:31 PM X-Mailer: ELM [version 2.5 PL2] Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Reply-To: djgpp-workers AT delorie DOT com Errors-To: nobody AT delorie DOT com X-Mailing-List: djgpp-workers AT delorie DOT com X-Unsubscribes-To: listserv AT delorie DOT com Precedence: bulk > > > PROBLEM 2 - RM.EXE Operation not permitted (EPERM) > > > > > DJGPP_204 C:\dj204\gnu\build.gcc\gcc>rm -rf include > > > rm: cannot remove directory `include': Operation not permitted (EPERM) > > I suspect that once the fist bug is fixed then the second one may also be > fixed, but then again..... I have now seen this bug, and I know the problem. The cvs rm.exe changes directory into the tree, then aborts in the assert, which doesn't change the directory back. So the NTVDM has it's current directory in the tree, and you can't delete it. If I kill NTVDM then I can delete the directory with no EPERM message. When I saw this error, I could not delete the directory with Win2K's RMDIR either. So this is a side effect of the rm aborts, but not really a separate bug (at least not one we can fix). You can't delete a directory if there is a process with a current working directory there. Changing directories in DOS is dangerous (not volatile like unix). When you see this sort of thing, kill all NTVDMs and try again.