Files -i support.
This commit is contained in:
parent
f890326d69
commit
92e8467736
14
Files.c
14
Files.c
|
@ -268,7 +268,7 @@ int exclude(CInfoPBRec *pb) {
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
void dir(int dirID) {
|
void one_dir(int dirID) {
|
||||||
unsigned char buffer[256+1];
|
unsigned char buffer[256+1];
|
||||||
OSErr err;
|
OSErr err;
|
||||||
CInfoPBRec pb;
|
CInfoPBRec pb;
|
||||||
|
@ -306,6 +306,7 @@ void one_file(const char *name) {
|
||||||
|
|
||||||
CInfoPBRec pb;
|
CInfoPBRec pb;
|
||||||
OSErr err;
|
OSErr err;
|
||||||
|
int dir;
|
||||||
|
|
||||||
char *pstr = c2p(name);
|
char *pstr = c2p(name);
|
||||||
|
|
||||||
|
@ -322,6 +323,15 @@ void one_file(const char *name) {
|
||||||
|
|
||||||
if (exclude(&pb)) return;
|
if (exclude(&pb)) return;
|
||||||
|
|
||||||
|
dir = pb.hFileInfo.ioFlAttrib & (1<<4) ? 1 : 0;
|
||||||
|
|
||||||
|
if (dir && !_i) {
|
||||||
|
if (!_o) printf(":%s:\n", name); // print directory name.
|
||||||
|
one_dir(pb.dirInfo.ioDrDirID);
|
||||||
|
fputc('\n', stdout);
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
// todo -- if directory, etc.
|
// todo -- if directory, etc.
|
||||||
if (_x) {
|
if (_x) {
|
||||||
format(name, &pb, _x);
|
format(name, &pb, _x);
|
||||||
|
@ -532,7 +542,7 @@ int main(int argc, char **argv) {
|
||||||
if (_x && !_n) header(_x);
|
if (_x && !_n) header(_x);
|
||||||
|
|
||||||
|
|
||||||
if (argc == 0) dir(0);
|
if (argc == 0) one_dir(0);
|
||||||
|
|
||||||
for (i = 0; i < argc; ++i) {
|
for (i = 0; i < argc; ++i) {
|
||||||
one_file(argv[i]);
|
one_file(argv[i]);
|
||||||
|
|
Loading…
Reference in New Issue