chiark
/
gitweb
/
~mdw
/
disorder
/ commitdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
| commitdiff |
tree
raw
|
patch
|
inline
| side by side (parent:
6c81eef
)
report unreadable tracks and dirs
author
Richard Kettlewell
<rjk@greenend.org.uk>
Mon, 15 Oct 2007 21:09:38 +0000
(22:09 +0100)
committer
Richard Kettlewell
<rjk@greenend.org.uk>
Mon, 15 Oct 2007 21:09:38 +0000
(22:09 +0100)
plugins/fs.c
patch
|
blob
|
blame
|
history
diff --git
a/plugins/fs.c
b/plugins/fs.c
index fe27d054885140702c16eb5e2d1e4ce084171378..167c1dd7198e39251d462563df91db80c3ddbf56 100644
(file)
--- a/
plugins/fs.c
+++ b/
plugins/fs.c
@@
-39,12
+39,9
@@
void disorder_scan(const char *path) {
char *np;
if(stat(path, &sb) < 0) {
char *np;
if(stat(path, &sb) < 0) {
- disorder_error(errno, "cannot
l
stat %s", path);
+ disorder_error(errno, "cannot stat %s", path);
return;
}
return;
}
- /* skip files that aren't world-readable */
- if(!(sb.st_mode & 0004))
- return;
if(S_ISDIR(sb.st_mode)) {
if(!(dp = opendir(path))) {
disorder_error(errno, "cannot open directory %s", path);
if(S_ISDIR(sb.st_mode)) {
if(!(dp = opendir(path))) {
disorder_error(errno, "cannot open directory %s", path);
@@
-60,9
+57,14
@@
void disorder_scan(const char *path) {
if(errno)
disorder_error(errno, "error reading directory %s", path);
closedir(dp);
if(errno)
disorder_error(errno, "error reading directory %s", path);
closedir(dp);
- } else if(S_ISREG(sb.st_mode))
+ } else if(S_ISREG(sb.st_mode)) {
+ if(access(path, R_OK) < 0) {
+ disorder_error(errno, "cannot access file %s", path);
+ return;
+ }
if(printf("%s%c", path, 0) < 0)
disorder_fatal(errno, "error writing to scanner output pipe");
if(printf("%s%c", path, 0) < 0)
disorder_fatal(errno, "error writing to scanner output pipe");
+ }
}
int disorder_check(const char attribute((unused)) *root, const char *path) {
}
int disorder_check(const char attribute((unused)) *root, const char *path) {