Re: CYGWIN 1.5.7: rmdir of cwd with open file crashes process

2004-03-18 Thread Niel Markwick

Fixed in Cygwin 1.5.8.  thanks to a patch from Pierre Humblet.

 Hi.

 Problem: If an attempt is made to rmdir the currewnt working directory
when a
 file is open in that irectory, the process will apparantly crash!




--
Unsubscribe info:  http://cygwin.com/ml/#unsubscribe-simple
Problem reports:   http://cygwin.com/problems.html
Documentation: http://cygwin.com/docs.html
FAQ:   http://cygwin.com/faq/



CYGWIN 1.5.7: rmdir of cwd with open file crashes process

2004-03-12 Thread Niel Markwick
Hi.

Problem: If an attempt is made to rmdir the currwnt working directory when a
file is open in that irectory, the process will apparantly crash!

This was first noticed in Perl, with the following simple test case always
exiting with status 128
use File::Temp;
my $dir=tempdir(CLEANUP=1);
chdir $dir
open(FH,,testfile);
return 0;


Futher tests in C reveal that rmdir crashes internally
The attached C code tests the following 3 scenarios
1rmdir of the current working directory
rmdir succeeds, directory removed
2rmdir of a directory which is NOT current working directory when there
is a file open in the that directory:
rmdir returns error status 'Directory not empty'
3rmdir of the current working directory when there is a file open in
that directory:
** rmdir crashes internally !


--
$ uname -a
CYGWIN_NT-5.1 nielspc 1.5.7(0.109/3/2) 2004-01-30 19:32 i686 unknown unknown
Cygwin
Output of cygcheck -r -s -v attached as cygwin.out



begin 666 cygwin.out
M#0I#6=W:[EMAIL PROTECTED]@0V]N9FEG=7)A=EO;B!$:6%G;F]S=ECPT*
M0W5RF5N=!3[EMAIL PROTECTED][EMAIL PROTECTED])I($UAB Q,B R,#HP.3HP- R,# T
M#0H-E=I;F1O=W,@6% @2]M92!%9ET:6]N(%9EB [EMAIL PROTECTED];0@,C8P
M,!397)V:6-E(%!A8VL@,[EMAIL PROTECTED]6=W:6Y=7-R7QO8V%L
M7)I;@T*4,Z7-Y9W=I;EQB:6X-@E#.EQC6=W:6Y8FEN#0H)0SI8WEG
M=VEN7'5SEQ8,3%2-EQB:6X-@EC.EQ724Y$3U=37'-YW1E;3,R#0H)8SI
M5TE.1$]74PT*6,Z7%=)3D1/5U-4WES=5M,S)5V)E;0T*2)##0H)0SI
M8WEG=VEN7%!R;[EMAIL PROTECTED]2'5M;6EN9V)IF10V]N;F5C=EV:71Y
M7#N,#!06-C97-S;W)I97-(@T*#0I/[EMAIL PROTECTED])O;2!#.EQC6=W:6Y
M8FEN7ED+F5X92 H;F]N='-E8RD-E5)1#H@,3 P,RAM87)K=VEC;[EMAIL PROTECTED]
M.B U,3,H3F]N92D-C4Q,RA.;VYE*0T*#0I/[EMAIL PROTECTED])O;2!#.EQC6=W
M:6Y8FEN7ED+F5X92 H;G1S96,I#0I5240Z(#$P,#,H;6%R:W=I8VXI($=)
[EMAIL PROTECTED];F4I#0HP*')O;W0I( @( @( @( @( U,3,H3F]N92D@
M( @( @( @( -C4T-A!9UI;FES=')A=]RRD@(#4T-2A5V5RRD-
M@T*4WES1ER.B!#.EQ724Y$3U=37%-YW1E;3,R#0I7:6Y$:7(Z($,Z7%=)
M3D1/5U,-@T*2$]-12 ](!D.EQC6=W:6YH;VUE7UAFMW:6-N)PT*34%+
M15]-3T1%([EMAIL PROTECTED]'5N:[EMAIL PROTECTED]@/[EMAIL 
PROTECTED];64O;6%R:W=I8VXG#0I54T52
M([EMAIL PROTECTED]UAFMW:6-N)PT*#0I!3$Q54T524U!23T9)3$4@/[EMAIL PROTECTED]1]C=6UE
M;G1S(%N9!3971T:6YGUQ!;[EMAIL PROTECTED]G,G#0I!4%!$051!([EMAIL PROTECTED],Z7$1O
M8W5M96YTR!A;[EMAIL PROTECTED]EN9W-3W=N97)07!P;EC871I;[EMAIL PROTECTED]%T82-
MD-,245.5$Y!344@/[EMAIL PROTECTED]V]L92-D-/34U/3E!23T=204U24Q%4R ]
M(!#.EQ0F]GF%M($9I;5S7$-O;6UO;B!:6QER-D-/35!55$523D%-
M12 ](!.245,4U!#)PT*0T]-4U!%0R ](!#.EQ724Y$3U=37'-YW1E;3,R
M7-M9YE4G#0I#5E-?4E-(([EMAIL PROTECTED]]B:6XOW-H)PT*1$E34$Q!62 ](!L
M;V-A;AOW0Z,-DA/345$4DE612 ](!#.B-DA/3450051(([EMAIL PROTECTED]
M;V-U;65N=',@86YD(%-E='1I;F=S7$]W;F5R)PT*2$]35$Y!344@/2!@;FEE
M;'-P8R-DE.1D]0051(([EMAIL PROTECTED]]UW(O;]C86PO:6YF;SHO=7-R+VEN9F\Z
M+W5SB]S:%R92]I;F9O.B]UW(O875T;W1O;VPO95V96PO:6YF;SHO=7-R
M+V%U=]T;V]L+W-T86)L92]I;F9O.B-DQ/1T].4T525D52([EMAIL PROTECTED]3DE%
M3%-00R-DU!3E!!5$@@/[EMAIL PROTECTED]B]L;V-A;]M86XZ+W5SB]M86XZ+W5S
MB]S:%R92]M86XZ+W5SB]A=71O=]O;]D979E;]M86XZ.B]UW(O6#$Q
M4C8O;6%N.B]UW(OW-L+VUA;B-DY534)%4E]/1E]04D]#15-33U)3(#T@
M8#(G#0I/3$105T0@/[EMAIL PROTECTED]B]B:6XG#0I/4R ](!7:6YD;W=S7TY4)PT*
M4$%'15(@/2!@;5SR MB-E!!5$A%6%0@/[EMAIL PROTECTED]/33LN15A%.RY050[
M+D--1#LN5D)3.RY60D4[+DI3.RY*4T4[+E=31CLN5U-()PT*4%)/0T534T]2
M7T%20TA)5$5#5%5212 ](!X.#8G#0I04D]#15-33U)?241%3E1)1DE%4B ]
M([EMAIL PROTECTED]:6QY(#$U($UO95L(#(@4W1E'!I;F@[EMAIL PROTECTED]
M=5L)PT*4%)/0T534T]27TQ%5D5,([EMAIL PROTECTED])PT*4%)/0T534T]27U)%5DE3
M24].([EMAIL PROTECTED] R,#4G#0I04D]'4D%-1DE,15,@/[EMAIL PROTECTED]4')O9W)A;2!:6QE
MR-E!23TU05 ]( D41')PT*4%,Q([EMAIL PROTECTED];7# S,UTP.UQW7# P-PT*
M7# S,ULS,FU75QU0%QH(%Q;7# S,ULS,VU=UPP,S-;,U70T*) G#0I3
M15-324].3D%-12 ](!#;VYS;VQE)PT*4TA,5DP@/2!@,2-E-94U1%3412
M259%([EMAIL PROTECTED],Z)PT*4UE35$5-4D]/5 ](!#.EQ724Y$3U=3)PT*5$5-4 ]
M(!C.EQ$3T-5345^,5Q/=VYEEQ,3T-!3%-^,5Q496UP)PT*5$5232 ](!C
M6=W:6XG#0I435 @/[EMAIL PROTECTED]1$]#54U%?C%3W=N97)3$]#04Q3?C%55M
M-E1:([EMAIL PROTECTED]TQ0T535TR+$TS+C4N,\P,CHP,#HP,Q-,3 N-2XP
M+S S.C P.C P)PT*55-%4D1/34%)3B ](!.245,4U!#)PT*55-%4DY!344@
M/[EMAIL PROTECTED](G#0I54T524%)/1DE,12 ](!#.EQ$;V-U;65N=',@86YD(%-E
M='1I;F=S7$]W;F5R)PT*5TE.1$E2([EMAIL PROTECTED],Z7%=)3D1/5U,G#0I?([EMAIL PROTECTED]]U
MW(O8FEN+V-Y9V-H96-K)PT*#0I(2T597T-54E)%3E1?55-%4EQ3;V9T=V%R
M95Q#6=N=7,@4V]L=71I;VYS#0I(2T597T-54E)%3E1?55-%4EQ3;V9T=V%R
M95Q#6=N=7,@4V]L=71I;VYS7$-Y9W=I;@T*2$M%65]#55)214Y47U5315)
M4V]F='=AF50WEG;G5S(%-O;'5T:6]NUQ#6=W:6Y;6]U;G1S('8R#0I(
M2T597T-54E)%3E1?55-%4EQ3;V9T=V%R95Q#6=N=7,@4V]L=71I;VYS7$-Y
M9W=I;EQ0F]GF%M($]P=EO;G,-DA+15E?0U524D5.5%]54T527%-O9G1W
M87)E7$-Y9VYUR!3;VQU=EO;G-0UE'5TE.+D1,3!S971U T*2$M%65]#
M55)214Y47U5315)4V]F='=AF50WEG;G5S(%-O;'5T:6]NUQ#64=724XN
M1$Q,('-E='5P7(Q-2XP#0I(2T597T-54E)%3E1?55-%4EQ3;V9T=V%R95Q#
M6=N=7,@4V]L=71I;VYS7$-91U=)3BY$3$P@V5T=7!8C$U+C!;6]U;G1S
M#0I(2T597T-54E)%3E1?55-%4EQ3;V9T=V%R95Q#6=N=7,@4V]L=71I;VYS
M7$-91U=)3BY$3$P@V5T=7!8C$U+C!;6]U;G1S7# P#0H@(AD969A=6QT
M*2 ](!#.B-B @=6YI ](