diff options
author | Mystery Man <unknown@mandriva.org> | 2002-08-23 15:52:19 +0000 |
---|---|---|
committer | Mystery Man <unknown@mandriva.org> | 2002-08-23 15:52:19 +0000 |
commit | 4093b2d83713aa2c17ae96ed65950aedb3081057 (patch) | |
tree | 27b2356c02aabca32c7ea8072807c00177fd0516 /mdk-stage1/dietlibc/lib/ftw.c | |
parent | 0ef89968d7a68bc41d7018fa3ffd8d22bcdb2bb3 (diff) | |
download | drakx-backup-do-not-use-4093b2d83713aa2c17ae96ed65950aedb3081057.tar drakx-backup-do-not-use-4093b2d83713aa2c17ae96ed65950aedb3081057.tar.gz drakx-backup-do-not-use-4093b2d83713aa2c17ae96ed65950aedb3081057.tar.bz2 drakx-backup-do-not-use-4093b2d83713aa2c17ae96ed65950aedb3081057.tar.xz drakx-backup-do-not-use-4093b2d83713aa2c17ae96ed65950aedb3081057.zip |
This commit was manufactured by cvs2svn to create branch
'gdk-pixbuf-0-branch'.
Diffstat (limited to 'mdk-stage1/dietlibc/lib/ftw.c')
-rw-r--r-- | mdk-stage1/dietlibc/lib/ftw.c | 52 |
1 files changed, 0 insertions, 52 deletions
diff --git a/mdk-stage1/dietlibc/lib/ftw.c b/mdk-stage1/dietlibc/lib/ftw.c deleted file mode 100644 index a3c04af9a..000000000 --- a/mdk-stage1/dietlibc/lib/ftw.c +++ /dev/null @@ -1,52 +0,0 @@ -#include <linux/stat.h> -#include <unistd.h> -#include <limits.h> -#include <ftw.h> -#include <dirent.h> -#include <string.h> -#include <stdlib.h> - -int ftw(const char *dir,int (*fn)(const char *file, const struct stat *sb, int flag), int depth) { - char *cwd; - int cwdlen; - DIR *d; - struct dirent *de; - struct stat sb; - if (chdir(dir)) return -1; - cwd=alloca(PATH_MAX+1); - if (!getcwd(cwd,PATH_MAX)) return -1; - cwd[PATH_MAX]=0; - cwdlen=strlen(cwd); -/* write(1,"ftw in ",7); puts(cwd); */ - if (!(d=opendir("."))) return -1; - while ((de=readdir(d))) { - int res; - int flag; - int nlen; - char *filename; - if (de->d_name[0]=='.' && - (de->d_name[1]==0 || - (de->d_name[1]=='.' && de->d_name[2]==0))) continue; - nlen=strlen(de->d_name); - filename=alloca(nlen+cwdlen+3); - memmove(filename,cwd,cwdlen); - filename[cwdlen]='/'; - memmove(filename+cwdlen+1,de->d_name,nlen+1); - if (!lstat(de->d_name,&sb)) { - if (S_ISLNK(sb.st_mode)) flag=FTW_SL; else - if (S_ISDIR(sb.st_mode)) flag=FTW_D; else - flag=FTW_F; - } else - flag=FTW_NS; - res=fn(filename,&sb,flag); - if (res) return res; - if (flag==FTW_D && depth>0) { - res=ftw(filename,fn,depth-1); - chdir(dir); - if (res) return res; - } -/* puts(de->d_name); */ - } - closedir(d); - return 0; -} |