diff options
author | Fritz Elfert <felfert@to.com> | 2001-02-02 04:49:20 +0000 |
---|---|---|
committer | Fritz Elfert <felfert@to.com> | 2001-02-02 04:49:20 +0000 |
commit | 9fac7af37460c6a73a7debac1ba82b094a8f066c (patch) | |
tree | c6ef3e0ebd088c62348f140289f82482d82db1cf /lib/rfsv.cc | |
parent | 4da48658c8f1dfbf5960bb1768dc6d154c528734 (diff) | |
download | plptools-9fac7af37460c6a73a7debac1ba82b094a8f066c.tar.gz plptools-9fac7af37460c6a73a7debac1ba82b094a8f066c.tar.bz2 plptools-9fac7af37460c6a73a7debac1ba82b094a8f066c.zip |
Replaced lot of ugly char * by string.
Fixed bug in plpftp's filename-completion, which was introduced
yesterday.
Added a class PlpUID for dealing with application-UIDs
Added UID->mimetype mapping in kioslave.
Diffstat (limited to 'lib/rfsv.cc')
-rw-r--r-- | lib/rfsv.cc | 45 |
1 files changed, 25 insertions, 20 deletions
diff --git a/lib/rfsv.cc b/lib/rfsv.cc index cd13cb3..68635d5 100644 --- a/lib/rfsv.cc +++ b/lib/rfsv.cc @@ -116,30 +116,35 @@ Enum<rfsv::errs> rfsv::getStatus(void) { return status; } -// beware this returns static data -const char * const rfsv:: +string rfsv:: +convertSlash(const string &name) +{ + string tmp = ""; + for (const char *p = name.c_str(); *p; p++) + tmp += (*p == '/') ? '\\' : *p; + return tmp; +} + +string rfsv:: attr2String(const long attr) { - static char buf[11]; - buf[0] = ((attr & PSI_A_DIR) ? 'd' : '-'); - buf[1] = ((attr & PSI_A_READ) ? 'r' : '-'); - buf[2] = ((attr & PSI_A_RDONLY) ? '-' : 'w'); - buf[3] = ((attr & PSI_A_HIDDEN) ? 'h' : '-'); - buf[4] = ((attr & PSI_A_SYSTEM) ? 's' : '-'); - buf[5] = ((attr & PSI_A_ARCHIVE) ? 'a' : '-'); - buf[6] = ((attr & PSI_A_VOLUME) ? 'v' : '-'); + string tmp = ""; + tmp += ((attr & PSI_A_DIR) ? 'd' : '-'); + tmp += ((attr & PSI_A_READ) ? 'r' : '-'); + tmp += ((attr & PSI_A_RDONLY) ? '-' : 'w'); + tmp += ((attr & PSI_A_HIDDEN) ? 'h' : '-'); + tmp += ((attr & PSI_A_SYSTEM) ? 's' : '-'); + tmp += ((attr & PSI_A_ARCHIVE) ? 'a' : '-'); + tmp += ((attr & PSI_A_VOLUME) ? 'v' : '-'); // EPOC - buf[7] = ((attr & PSI_A_NORMAL) ? 'n' : '-'); - buf[8] = ((attr & PSI_A_TEMP) ? 't' : '-'); - buf[9] = ((attr & PSI_A_COMPRESSED) ? 'c' : '-'); - + tmp += ((attr & PSI_A_NORMAL) ? 'n' : '-'); + tmp += ((attr & PSI_A_TEMP) ? 't' : '-'); + tmp += ((attr & PSI_A_COMPRESSED) ? 'c' : '-'); // SIBO - buf[7] = ((attr & PSI_A_EXEC) ? 'x' : buf[7]); - buf[8] = ((attr & PSI_A_STREAM) ? 'b' : buf[8]); - buf[9] = ((attr & PSI_A_TEXT) ? 't' : buf[9]); - - buf[10] = '\0'; - return (char *) (&buf); + tmp[7] = ((attr & PSI_A_EXEC) ? 'x' : tmp[7]); + tmp[8] = ((attr & PSI_A_STREAM) ? 'b' : tmp[8]); + tmp[9] = ((attr & PSI_A_TEXT) ? 't' : tmp[9]); + return tmp; } |