[comp.sys.amiga.tech] Mg dired on gvp drive: List bug?

perley@trub (Donald P Perley) (12/29/89)

I was never able  to get Mg2a's dired function (directory edit) to
work with my GVP hard card. I figured maybe it had something to 
do with the fast file system.  My Christmas present to myself was
to take enough time to go through the source code and try to find the
problem.

It turns out that mg executes the List command on the full path name
to get the directory listing.

The volume name is "DH0(20MB)", the default assigned by the
gvp formatting script.  Here is what happens when I do List
(outside of mg):


	8.RAM DISK:> list dh0(20mb):tempdir
	Directory "dh0(20mb):" on Thursday 28-Dec-89
	tempdir                      Dir ----rwed Today     09:18:57
	1 directory - 1 block used
	8.RAM DISK:>

But if I use the device name instead of the volume name I get this:

	8.RAM DISK:> list dh0:tempdir
	Directory "dh0:tempdir" on Thursday 28-Dec-89
	file1                         42 ----rwed Today     09:18:53
	file2                         71 ----rwed Today     09:19:15
	2 files - 4 blocks used
	8.RAM DISK:>

( the proper response)

So having those parens in there (I assume that's the problem) changes
it from something like "ls -l" to "ls -l -d" in unix terms.

The easy solution is to rename the volumes (which does make the problem
go away).  

But why is it doing this?  Are parentheses legal in a volume name?
If so, where do I send a bug report?

Whether "DH0(20MB)" is legal or not, I am sending GVP a note to 
suggest they change the default in the setup script and warn them in case
someone calls asking why some commands don't work with their hard drive.

-don perley
perley@trub.crd.ge.com

riley@batcomputer.tn.cornell.edu (Daniel S. Riley) (12/31/89)

In article <10507@vdsvax.crd.ge.com> perley@trub.crd.ge.com (Donald P Perley) writes:
>The volume name is "DH0(20MB)", the default assigned by the
>gvp formatting script.  Here is what happens when I do List
>(outside of mg):

Parentheses are used in some AmigaDOS regular expressions (wildcards).  
They're used to delimit a list of choices, so the expression "f(a|b|i)b"
would match "fab", "fbb", and "fib".  I don't know about the real AmigaDOS 
list command, but the ARP version seems to scan the string for any 
potential wildcard characters, and change its behavior if it finds any.
This could cause the strange results you saw.

-Dan Riley (riley@tcgould.tn.cornell.edu, cornell!batcomputer!riley)
-Wilson Lab, Cornell University