bash `test -e' problem with cdrom drive and soft-disk drive

Corinna Vinschen corinna-cygwin@cygwin.com
Mon Jun 8 15:30:00 GMT 2009


On Jun  8 23:19, Haojun Bao wrote:
> Corinna Vinschen <corinna-cygwin@cygwin.com> writes:
> 
> > On Jun  8 22:53, Haojun Bao wrote:
> >> 
> >> If you have cd-rom/soft-disk drive, please run the following test case,
> >> 
> >>     for x in {a..z}; do 
> >>     if test -e /cygdrive/$x/Windows ; then
> >>        echo "Windows found on /cygdrive/$x"
> >>        cd /cygdrive/$x
> >>     fi
> >>     done
> >>     
> >> And here's the result:
> >> 
> >>     Windows found on /cygdrive/a
> >>     bash: cd: /cygdrive/a: No medium found
> >>     Windows found on /cygdrive/c
> >>     Windows found on /cygdrive/j
> >>     bash: cd: /cygdrive/j: No medium found
> >>     Windows found on /cygdrive/k
> >>     bash: cd: /cygdrive/k: No medium found
> >
> > And what's the problem?
> Also, here's another test case:
> [...]
> Since I have nothing in drive A:/J:/K:, I think something is wrong with
> the file system mounting. Can you reproduce it? 

Easily.  Thanks for the testcase!

> Oh, forgot to mention, I'm testing the cygwin-1.7.

The problem was in one core path conversion function in Cygwin.  The
status code returned by the NT function used to test the file for
existance in a case like that, STATUS_NO_MEDIA_IN_DEVICE, was not
handled at all.  Patched in CVS.  This will be fixed in the next 1.7
test release.


Corinna

-- 
Corinna Vinschen                  Please, send mails regarding Cygwin to
Cygwin Project Co-Leader          cygwin AT cygwin DOT com
Red Hat

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



More information about the Cygwin mailing list