diff options
author | Fritz Elfert <felfert@to.com> | 2001-03-27 01:17:19 +0000 |
---|---|---|
committer | Fritz Elfert <felfert@to.com> | 2001-03-27 01:17:19 +0000 |
commit | fb6e57695452dc5265a35532f74e918490880723 (patch) | |
tree | 1f3f2738ed4466b3505eb0cecfcf9e3ec2a0757f /kde2/kioslave | |
parent | c1c226e16aa579be9e64cba3c4bdca201923096c (diff) | |
download | plptools-fb6e57695452dc5265a35532f74e918490880723.tar.gz plptools-fb6e57695452dc5265a35532f74e918490880723.tar.bz2 plptools-fb6e57695452dc5265a35532f74e918490880723.zip |
plpprops: Changes for recent fixes in KDE-Libs
KPsion: Autobackup now handled correctly
Diffstat (limited to 'kde2/kioslave')
-rw-r--r-- | kde2/kioslave/kio_plp.cpp | 29 | ||||
-rw-r--r-- | kde2/kioslave/kio_plp.h | 5 |
2 files changed, 22 insertions, 12 deletions
diff --git a/kde2/kioslave/kio_plp.cpp b/kde2/kioslave/kio_plp.cpp index bfa6d70..2374dc3 100644 --- a/kde2/kioslave/kio_plp.cpp +++ b/kde2/kioslave/kio_plp.cpp @@ -322,6 +322,23 @@ uid2mime(PlpDirent &e) { } void PLPProtocol:: +appendUIDmime(PlpDirent &e, UDSEntry &entry) { + QString tmp; + + if ((e.getAttr() & rfsv::PSI_A_DIR) == 0) { + PlpUID u = e.getUID(); + UidMap::Iterator it = puids.find(u); + if (it != puids.end()) { + UDSAtom atom; + + atom.m_uds = KIO::UDS_MIME_TYPE; + atom.m_str = it.data(); + entry.append(atom); + } + } +} + +void PLPProtocol:: listDir(const KURL& _url) { KURL url(_url); QString path(QFile::encodeName(url.path(-1))); @@ -371,18 +388,13 @@ listDir(const KURL& _url) { UDSAtom atom; PlpDirent e = files[i]; - long attr = e.getAttr(); entry.clear(); atom.m_uds = KIO::UDS_NAME; atom.m_str = e.getName(); entry.append(atom); - if ((attr & rfsv::PSI_A_DIR) == 0) { - atom.m_uds = KIO::UDS_MIME_TYPE; - atom.m_str = uid2mime(e); - entry.append(atom); - } + appendUIDmime(e, entry); completeUDSEntry(entry, e, rom); listEntry(entry, false); @@ -431,18 +443,15 @@ createVirtualDirEntry(UDSEntry & entry, bool rdonly, int type) { atom.m_long = S_IFDIR; entry.append(atom); atom.m_uds = KIO::UDS_GUESSED_MIME_TYPE; - atom.m_uds = KIO::UDS_MIME_TYPE; atom.m_str = QString("inode/x-psion-drive"); entry.append(atom); break; case PLP_FTYPE_DRIVE: atom.m_uds = KIO::UDS_FILE_TYPE; - atom.m_long = S_IFDIR; + atom.m_long = S_IFREG; entry.append(atom); atom.m_uds = KIO::UDS_GUESSED_MIME_TYPE; atom.m_str = QString("inode/x-psion-drive"); - atom.m_uds = KIO::UDS_MIME_TYPE; - atom.m_str = QString("inode/x-psion-drive"); entry.append(atom); break; case PLP_FTYPE_OWNER: diff --git a/kde2/kioslave/kio_plp.h b/kde2/kioslave/kio_plp.h index 9119e6d..c5c0701 100644 --- a/kde2/kioslave/kio_plp.h +++ b/kde2/kioslave/kio_plp.h @@ -38,7 +38,7 @@ class PLPProtocol : public KIO::SlaveBase { public: PLPProtocol (const QCString &pool, const QCString &app); virtual ~PLPProtocol(); - + virtual void openConnection(); virtual void closeConnection(); @@ -74,6 +74,7 @@ private: QString uid2mime(PlpDirent &e); int checkSpecial(const QString& path); void setOwner(KIO::UDSEntry & entry); + void appendUIDmime(PlpDirent &e, KIO::UDSEntry &entry); rfsv *plpRfsv; rpcs *plpRpcs; @@ -81,7 +82,7 @@ private: ppsocket *plpRpcsSocket; QStringList drives; QMap<QString,char> drivechars; - UidMap puids; + UidMap puids; QString currentHost; int currentPort; time_t t_last; |