最新ルールに従う様に
このコミットが含まれているのは:
コミット
0aaf5f12b2
56
listpass.c
56
listpass.c
|
@ -18,37 +18,37 @@ void listpass(char* basePath, int level) {
|
|||
}
|
||||
|
||||
while ((entry = readdir(dir)) != NULL) {
|
||||
if (strcmp(entry->d_name, ".") != 0 && strcmp(entry->d_name, "..") != 0) {
|
||||
char path[1000];
|
||||
int needed = snprintf(path, sizeof(path), "%s/%s", basePath, entry->d_name);
|
||||
if (needed >= (int)sizeof(path) || needed < 0) {
|
||||
if (lang != NULL && strncmp(lang, "en", 2) == 0) perror("Error: Path is too long, or failed to getting lenth");
|
||||
else perror("エラー:パスが長すぎる、又は長さを受取に失敗");
|
||||
continue;
|
||||
}
|
||||
if (strcmp(entry->d_name, ".") == 0 || strcmp(entry->d_name, "..") == 0) {
|
||||
continue;
|
||||
}
|
||||
|
||||
struct stat statbuf;
|
||||
if (stat(path, &statbuf) == -1) {
|
||||
if (lang != NULL && strncmp(lang, "en", 2) == 0) perror("Failed to reading file status");
|
||||
else perror("ファイル状況を読込に失敗");
|
||||
continue;
|
||||
}
|
||||
char path[1000];
|
||||
int needed = snprintf(path, sizeof(path), "%s/%s", basePath, entry->d_name);
|
||||
if (needed >= (int)sizeof(path) || needed < 0) {
|
||||
if (lang != NULL && strncmp(lang, "en", 2) == 0) perror("Error: Path is too long, or failed to getting lenth");
|
||||
else perror("エラー:パスが長すぎる、又は長さを受取に失敗");
|
||||
continue;
|
||||
}
|
||||
|
||||
for (int i = 0; i < level; i++) {
|
||||
printf(" ");
|
||||
}
|
||||
struct stat statbuf;
|
||||
if (stat(path, &statbuf) == -1) {
|
||||
if (lang != NULL && strncmp(lang, "en", 2) == 0) perror("Failed to reading file status");
|
||||
else perror("ファイル状況を読込に失敗");
|
||||
continue;
|
||||
}
|
||||
|
||||
if (S_ISDIR(statbuf.st_mode)) {
|
||||
printf("|-- %s\n", entry->d_name);
|
||||
listpass(path, level + 1);
|
||||
} else if (S_ISREG(statbuf.st_mode)) {
|
||||
char* filename = entry->d_name;
|
||||
char* ext = strstr(filename, ".gpg");
|
||||
if (ext) {
|
||||
*ext = '\0';
|
||||
}
|
||||
printf("|-- %s\n", filename);
|
||||
}
|
||||
for (int i = 0; i < level; i++) {
|
||||
printf(" ");
|
||||
}
|
||||
|
||||
if (S_ISDIR(statbuf.st_mode)) {
|
||||
printf("|-- %s\n", entry->d_name);
|
||||
listpass(path, level + 1);
|
||||
} else if (S_ISREG(statbuf.st_mode)) {
|
||||
char* filename = entry->d_name;
|
||||
char* ext = strstr(filename, ".gpg");
|
||||
if (ext) *ext = '\0';
|
||||
printf("|-- %s\n", filename);
|
||||
}
|
||||
}
|
||||
|
||||
|
|
読み込み中…
新しいイシューから参照