flag
This commit is contained in:
18
flag.c
18
flag.c
@@ -39,7 +39,6 @@ static void flag_help(void)
|
||||
fprintf(stdout, "USAGE: FLAG [path [ option | [+|-] attribute(s) ] [SUB]]\n");
|
||||
fprintf(stdout, "\n");
|
||||
fprintf(stdout, "386 Attributes:\n");
|
||||
fprintf(stdout, "--------------\n");
|
||||
fprintf(stdout, "\n");
|
||||
fprintf(stdout, "RO Read Only\n");
|
||||
fprintf(stdout, "RW Read Write\n");
|
||||
@@ -167,7 +166,7 @@ static int flag_apply(char *pattern, unsigned setbits, unsigned clearbits)
|
||||
{
|
||||
struct find_t ff;
|
||||
unsigned findattr = _A_RDONLY | _A_HIDDEN | _A_SYSTEM | _A_ARCH;
|
||||
int changed = 0;
|
||||
int shown = 0;
|
||||
|
||||
if (_dos_findfirst(pattern, findattr, &ff))
|
||||
return(-1);
|
||||
@@ -188,15 +187,20 @@ static int flag_apply(char *pattern, unsigned setbits, unsigned clearbits)
|
||||
newattr = (attr | setbits) & ~clearbits;
|
||||
|
||||
if (newattr != attr) {
|
||||
if (!_dos_setfileattr(fname, newattr))
|
||||
changed++;
|
||||
else
|
||||
if (_dos_setfileattr(fname, newattr)) {
|
||||
fprintf(stderr, "You don't have rights to change : %s\n", fname);
|
||||
continue;
|
||||
}
|
||||
attr = newattr;
|
||||
}
|
||||
|
||||
/* Novell FLAG prints the resulting file entry after a change command. */
|
||||
flag_display_one(fname, attr);
|
||||
shown++;
|
||||
|
||||
} while (!_dos_findnext(&ff));
|
||||
|
||||
return(changed);
|
||||
return(shown);
|
||||
}
|
||||
|
||||
int func_flag(int argc, char *argv[], int mode)
|
||||
@@ -237,8 +241,6 @@ int func_flag(int argc, char *argv[], int mode)
|
||||
return(1);
|
||||
}
|
||||
|
||||
if (rc) fprintf(stdout, "Changed some\n");
|
||||
else fprintf(stdout, "None changed\n");
|
||||
return(0);
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user