aboutsummaryrefslogtreecommitdiffstats
path: root/x11
diff options
context:
space:
mode:
authorlofi <lofi@FreeBSD.org>2005-07-12 21:53:12 +0800
committerlofi <lofi@FreeBSD.org>2005-07-12 21:53:12 +0800
commit9856d9a090beb1deab674171c74928a857c0aab3 (patch)
tree9b029db7b6861c3970298e78247a50b5550614a6 /x11
parent66e7f0fdf36961c70c95bf082a54098143aeda42 (diff)
downloadfreebsd-ports-gnome-9856d9a090beb1deab674171c74928a857c0aab3.tar.gz
freebsd-ports-gnome-9856d9a090beb1deab674171c74928a857c0aab3.tar.zst
freebsd-ports-gnome-9856d9a090beb1deab674171c74928a857c0aab3.zip
Fix some of the issues in the media:/ kioslave. proc filesystems should no
longer appear in the list, numbering of NFS filesystems should be okay now and removable media should be mountable, unmountable and browseable - if the user running KDE can mount them in the first place (i.e. vfs.usermount and mountpoint ownership still required). Obtained from: KDE SVN
Diffstat (limited to 'x11')
-rw-r--r--x11/kde4-baseapps/Makefile2
-rw-r--r--x11/kde4-baseapps/files/patch-kioslave_media_kdedmodule_fstabbackend.cpp63
-rw-r--r--x11/kde4-baseapps/files/patch-kioslave_media_kdedmodule_fstabbackend.h37
-rw-r--r--x11/kde4-runtime/Makefile2
-rw-r--r--x11/kde4-runtime/files/patch-kioslave_media_kdedmodule_fstabbackend.cpp63
-rw-r--r--x11/kde4-runtime/files/patch-kioslave_media_kdedmodule_fstabbackend.h37
-rw-r--r--x11/kde4-workspace/Makefile2
-rw-r--r--x11/kde4-workspace/files/patch-kioslave_media_kdedmodule_fstabbackend.cpp63
-rw-r--r--x11/kde4-workspace/files/patch-kioslave_media_kdedmodule_fstabbackend.h37
-rw-r--r--x11/kdebase3/Makefile2
-rw-r--r--x11/kdebase3/files/patch-kioslave_media_kdedmodule_fstabbackend.cpp63
-rw-r--r--x11/kdebase3/files/patch-kioslave_media_kdedmodule_fstabbackend.h37
-rw-r--r--x11/kdebase4-runtime/Makefile2
-rw-r--r--x11/kdebase4-runtime/files/patch-kioslave_media_kdedmodule_fstabbackend.cpp63
-rw-r--r--x11/kdebase4-runtime/files/patch-kioslave_media_kdedmodule_fstabbackend.h37
-rw-r--r--x11/kdebase4-workspace/Makefile2
-rw-r--r--x11/kdebase4-workspace/files/patch-kioslave_media_kdedmodule_fstabbackend.cpp63
-rw-r--r--x11/kdebase4-workspace/files/patch-kioslave_media_kdedmodule_fstabbackend.h37
-rw-r--r--x11/kdebase4/Makefile2
-rw-r--r--x11/kdebase4/files/patch-kioslave_media_kdedmodule_fstabbackend.cpp63
-rw-r--r--x11/kdebase4/files/patch-kioslave_media_kdedmodule_fstabbackend.h37
21 files changed, 707 insertions, 7 deletions
diff --git a/x11/kde4-baseapps/Makefile b/x11/kde4-baseapps/Makefile
index 9a9acf96aa95..b37100b46249 100644
--- a/x11/kde4-baseapps/Makefile
+++ b/x11/kde4-baseapps/Makefile
@@ -8,7 +8,7 @@
PORTNAME= kdebase
PORTVERSION= ${KDE_VERSION}
-PORTREVISION= 1
+PORTREVISION= 2
CATEGORIES= x11 kde
MASTER_SITES= ${MASTER_SITE_KDE}
MASTER_SITE_SUBDIR= stable/${PORTVERSION:S/.0//}/src
diff --git a/x11/kde4-baseapps/files/patch-kioslave_media_kdedmodule_fstabbackend.cpp b/x11/kde4-baseapps/files/patch-kioslave_media_kdedmodule_fstabbackend.cpp
new file mode 100644
index 000000000000..4fe077c27135
--- /dev/null
+++ b/x11/kde4-baseapps/files/patch-kioslave_media_kdedmodule_fstabbackend.cpp
@@ -0,0 +1,63 @@
+--- kioslave/media/kdedmodule/fstabbackend.cpp
++++ kioslave/media/kdedmodule/fstabbackend.cpp
+@@ -47,6 +47,12 @@
+ handleMtabChange();
+
+ KDirWatch::self()->startScan();
++
++#ifdef Q_OS_FREEBSD
++ connect( &m_mtabTimer, SIGNAL( timeout() ),
++ this, SLOT( handleMtabChange() ) );
++ m_mtabTimer.start(250);
++#endif
+ }
+
+ FstabBackend::~FstabBackend()
+@@ -86,7 +92,7 @@
+ || mount->mountType() == "tmpfs"
+ || mount->mountType() == "sysfs"
+ || mount->mountType() == "usbfs"
+- || mount->mountType() == "proc"
++ || mount->mountType().contains( "proc" )
+ || mount->mountType() == "unknown"
+ || mount->mountType() == "none"
+ || mount->mountedFrom() == "none"
+@@ -136,7 +142,7 @@
+ #if 0
+ else if ( !m_mtabIds.contains(id) )
+ {
+- QString name = generateName(dev);
++ QString name = generateName(dev, fs);
+
+ Medium *m = new Medium(id, name);
+
+@@ -205,7 +211,7 @@
+
+ if ( !m_fstabIds.contains(id) )
+ {
+- QString name = generateName(dev);
++ QString name = generateName(dev, fs);
+
+ Medium *m = new Medium(id, name);
+
+@@ -247,9 +253,18 @@
+ +m.replace("/", "");
+ }
+
+-QString FstabBackend::generateName(const QString &devNode)
++QString FstabBackend::generateName(const QString &devNode, const QString &fsType)
+ {
+- return KURL(devNode).fileName();
++ KURL url( devNode );
++
++ if ( url.isValid() )
++ {
++ return url.fileName();
++ }
++ else // surely something nfs or samba based
++ {
++ return fsType;
++ }
+ }
+
+ void FstabBackend::guess(const QString &devNode, const QString &mountPoint,
diff --git a/x11/kde4-baseapps/files/patch-kioslave_media_kdedmodule_fstabbackend.h b/x11/kde4-baseapps/files/patch-kioslave_media_kdedmodule_fstabbackend.h
new file mode 100644
index 000000000000..e9ceadf8e9b7
--- /dev/null
+++ b/x11/kde4-baseapps/files/patch-kioslave_media_kdedmodule_fstabbackend.h
@@ -0,0 +1,37 @@
+--- kioslave/media/kdedmodule/fstabbackend.h
++++ kioslave/media/kdedmodule/fstabbackend.h
+@@ -24,6 +24,10 @@
+ #include <qobject.h>
+ #include <qstringlist.h>
+
++#ifdef Q_OS_FREEBSD
++#include <qtimer.h>
++#endif
++
+ class FstabBackend : public QObject, public BackendBase
+ {
+ Q_OBJECT
+@@ -38,17 +42,20 @@
+ QString &label);
+ private slots:
+ void slotDirty(const QString &path);
+-
+-private:
+ void handleFstabChange();
+ void handleMtabChange();
+
++private:
+ static QString generateId(const QString &devNode,
+ const QString &mountPoint);
+- static QString generateName(const QString &devNode);
++ static QString generateName(const QString &devNode,
++ const QString &fsType);
+
+ QStringList m_mtabIds;
+ QStringList m_fstabIds;
++#ifdef Q_OS_FREEBSD
++ QTimer m_mtabTimer;
++#endif
+ };
+
+ #endif
diff --git a/x11/kde4-runtime/Makefile b/x11/kde4-runtime/Makefile
index 9a9acf96aa95..b37100b46249 100644
--- a/x11/kde4-runtime/Makefile
+++ b/x11/kde4-runtime/Makefile
@@ -8,7 +8,7 @@
PORTNAME= kdebase
PORTVERSION= ${KDE_VERSION}
-PORTREVISION= 1
+PORTREVISION= 2
CATEGORIES= x11 kde
MASTER_SITES= ${MASTER_SITE_KDE}
MASTER_SITE_SUBDIR= stable/${PORTVERSION:S/.0//}/src
diff --git a/x11/kde4-runtime/files/patch-kioslave_media_kdedmodule_fstabbackend.cpp b/x11/kde4-runtime/files/patch-kioslave_media_kdedmodule_fstabbackend.cpp
new file mode 100644
index 000000000000..4fe077c27135
--- /dev/null
+++ b/x11/kde4-runtime/files/patch-kioslave_media_kdedmodule_fstabbackend.cpp
@@ -0,0 +1,63 @@
+--- kioslave/media/kdedmodule/fstabbackend.cpp
++++ kioslave/media/kdedmodule/fstabbackend.cpp
+@@ -47,6 +47,12 @@
+ handleMtabChange();
+
+ KDirWatch::self()->startScan();
++
++#ifdef Q_OS_FREEBSD
++ connect( &m_mtabTimer, SIGNAL( timeout() ),
++ this, SLOT( handleMtabChange() ) );
++ m_mtabTimer.start(250);
++#endif
+ }
+
+ FstabBackend::~FstabBackend()
+@@ -86,7 +92,7 @@
+ || mount->mountType() == "tmpfs"
+ || mount->mountType() == "sysfs"
+ || mount->mountType() == "usbfs"
+- || mount->mountType() == "proc"
++ || mount->mountType().contains( "proc" )
+ || mount->mountType() == "unknown"
+ || mount->mountType() == "none"
+ || mount->mountedFrom() == "none"
+@@ -136,7 +142,7 @@
+ #if 0
+ else if ( !m_mtabIds.contains(id) )
+ {
+- QString name = generateName(dev);
++ QString name = generateName(dev, fs);
+
+ Medium *m = new Medium(id, name);
+
+@@ -205,7 +211,7 @@
+
+ if ( !m_fstabIds.contains(id) )
+ {
+- QString name = generateName(dev);
++ QString name = generateName(dev, fs);
+
+ Medium *m = new Medium(id, name);
+
+@@ -247,9 +253,18 @@
+ +m.replace("/", "");
+ }
+
+-QString FstabBackend::generateName(const QString &devNode)
++QString FstabBackend::generateName(const QString &devNode, const QString &fsType)
+ {
+- return KURL(devNode).fileName();
++ KURL url( devNode );
++
++ if ( url.isValid() )
++ {
++ return url.fileName();
++ }
++ else // surely something nfs or samba based
++ {
++ return fsType;
++ }
+ }
+
+ void FstabBackend::guess(const QString &devNode, const QString &mountPoint,
diff --git a/x11/kde4-runtime/files/patch-kioslave_media_kdedmodule_fstabbackend.h b/x11/kde4-runtime/files/patch-kioslave_media_kdedmodule_fstabbackend.h
new file mode 100644
index 000000000000..e9ceadf8e9b7
--- /dev/null
+++ b/x11/kde4-runtime/files/patch-kioslave_media_kdedmodule_fstabbackend.h
@@ -0,0 +1,37 @@
+--- kioslave/media/kdedmodule/fstabbackend.h
++++ kioslave/media/kdedmodule/fstabbackend.h
+@@ -24,6 +24,10 @@
+ #include <qobject.h>
+ #include <qstringlist.h>
+
++#ifdef Q_OS_FREEBSD
++#include <qtimer.h>
++#endif
++
+ class FstabBackend : public QObject, public BackendBase
+ {
+ Q_OBJECT
+@@ -38,17 +42,20 @@
+ QString &label);
+ private slots:
+ void slotDirty(const QString &path);
+-
+-private:
+ void handleFstabChange();
+ void handleMtabChange();
+
++private:
+ static QString generateId(const QString &devNode,
+ const QString &mountPoint);
+- static QString generateName(const QString &devNode);
++ static QString generateName(const QString &devNode,
++ const QString &fsType);
+
+ QStringList m_mtabIds;
+ QStringList m_fstabIds;
++#ifdef Q_OS_FREEBSD
++ QTimer m_mtabTimer;
++#endif
+ };
+
+ #endif
diff --git a/x11/kde4-workspace/Makefile b/x11/kde4-workspace/Makefile
index 9a9acf96aa95..b37100b46249 100644
--- a/x11/kde4-workspace/Makefile
+++ b/x11/kde4-workspace/Makefile
@@ -8,7 +8,7 @@
PORTNAME= kdebase
PORTVERSION= ${KDE_VERSION}
-PORTREVISION= 1
+PORTREVISION= 2
CATEGORIES= x11 kde
MASTER_SITES= ${MASTER_SITE_KDE}
MASTER_SITE_SUBDIR= stable/${PORTVERSION:S/.0//}/src
diff --git a/x11/kde4-workspace/files/patch-kioslave_media_kdedmodule_fstabbackend.cpp b/x11/kde4-workspace/files/patch-kioslave_media_kdedmodule_fstabbackend.cpp
new file mode 100644
index 000000000000..4fe077c27135
--- /dev/null
+++ b/x11/kde4-workspace/files/patch-kioslave_media_kdedmodule_fstabbackend.cpp
@@ -0,0 +1,63 @@
+--- kioslave/media/kdedmodule/fstabbackend.cpp
++++ kioslave/media/kdedmodule/fstabbackend.cpp
+@@ -47,6 +47,12 @@
+ handleMtabChange();
+
+ KDirWatch::self()->startScan();
++
++#ifdef Q_OS_FREEBSD
++ connect( &m_mtabTimer, SIGNAL( timeout() ),
++ this, SLOT( handleMtabChange() ) );
++ m_mtabTimer.start(250);
++#endif
+ }
+
+ FstabBackend::~FstabBackend()
+@@ -86,7 +92,7 @@
+ || mount->mountType() == "tmpfs"
+ || mount->mountType() == "sysfs"
+ || mount->mountType() == "usbfs"
+- || mount->mountType() == "proc"
++ || mount->mountType().contains( "proc" )
+ || mount->mountType() == "unknown"
+ || mount->mountType() == "none"
+ || mount->mountedFrom() == "none"
+@@ -136,7 +142,7 @@
+ #if 0
+ else if ( !m_mtabIds.contains(id) )
+ {
+- QString name = generateName(dev);
++ QString name = generateName(dev, fs);
+
+ Medium *m = new Medium(id, name);
+
+@@ -205,7 +211,7 @@
+
+ if ( !m_fstabIds.contains(id) )
+ {
+- QString name = generateName(dev);
++ QString name = generateName(dev, fs);
+
+ Medium *m = new Medium(id, name);
+
+@@ -247,9 +253,18 @@
+ +m.replace("/", "");
+ }
+
+-QString FstabBackend::generateName(const QString &devNode)
++QString FstabBackend::generateName(const QString &devNode, const QString &fsType)
+ {
+- return KURL(devNode).fileName();
++ KURL url( devNode );
++
++ if ( url.isValid() )
++ {
++ return url.fileName();
++ }
++ else // surely something nfs or samba based
++ {
++ return fsType;
++ }
+ }
+
+ void FstabBackend::guess(const QString &devNode, const QString &mountPoint,
diff --git a/x11/kde4-workspace/files/patch-kioslave_media_kdedmodule_fstabbackend.h b/x11/kde4-workspace/files/patch-kioslave_media_kdedmodule_fstabbackend.h
new file mode 100644
index 000000000000..e9ceadf8e9b7
--- /dev/null
+++ b/x11/kde4-workspace/files/patch-kioslave_media_kdedmodule_fstabbackend.h
@@ -0,0 +1,37 @@
+--- kioslave/media/kdedmodule/fstabbackend.h
++++ kioslave/media/kdedmodule/fstabbackend.h
+@@ -24,6 +24,10 @@
+ #include <qobject.h>
+ #include <qstringlist.h>
+
++#ifdef Q_OS_FREEBSD
++#include <qtimer.h>
++#endif
++
+ class FstabBackend : public QObject, public BackendBase
+ {
+ Q_OBJECT
+@@ -38,17 +42,20 @@
+ QString &label);
+ private slots:
+ void slotDirty(const QString &path);
+-
+-private:
+ void handleFstabChange();
+ void handleMtabChange();
+
++private:
+ static QString generateId(const QString &devNode,
+ const QString &mountPoint);
+- static QString generateName(const QString &devNode);
++ static QString generateName(const QString &devNode,
++ const QString &fsType);
+
+ QStringList m_mtabIds;
+ QStringList m_fstabIds;
++#ifdef Q_OS_FREEBSD
++ QTimer m_mtabTimer;
++#endif
+ };
+
+ #endif
diff --git a/x11/kdebase3/Makefile b/x11/kdebase3/Makefile
index 9a9acf96aa95..b37100b46249 100644
--- a/x11/kdebase3/Makefile
+++ b/x11/kdebase3/Makefile
@@ -8,7 +8,7 @@
PORTNAME= kdebase
PORTVERSION= ${KDE_VERSION}
-PORTREVISION= 1
+PORTREVISION= 2
CATEGORIES= x11 kde
MASTER_SITES= ${MASTER_SITE_KDE}
MASTER_SITE_SUBDIR= stable/${PORTVERSION:S/.0//}/src
diff --git a/x11/kdebase3/files/patch-kioslave_media_kdedmodule_fstabbackend.cpp b/x11/kdebase3/files/patch-kioslave_media_kdedmodule_fstabbackend.cpp
new file mode 100644
index 000000000000..4fe077c27135
--- /dev/null
+++ b/x11/kdebase3/files/patch-kioslave_media_kdedmodule_fstabbackend.cpp
@@ -0,0 +1,63 @@
+--- kioslave/media/kdedmodule/fstabbackend.cpp
++++ kioslave/media/kdedmodule/fstabbackend.cpp
+@@ -47,6 +47,12 @@
+ handleMtabChange();
+
+ KDirWatch::self()->startScan();
++
++#ifdef Q_OS_FREEBSD
++ connect( &m_mtabTimer, SIGNAL( timeout() ),
++ this, SLOT( handleMtabChange() ) );
++ m_mtabTimer.start(250);
++#endif
+ }
+
+ FstabBackend::~FstabBackend()
+@@ -86,7 +92,7 @@
+ || mount->mountType() == "tmpfs"
+ || mount->mountType() == "sysfs"
+ || mount->mountType() == "usbfs"
+- || mount->mountType() == "proc"
++ || mount->mountType().contains( "proc" )
+ || mount->mountType() == "unknown"
+ || mount->mountType() == "none"
+ || mount->mountedFrom() == "none"
+@@ -136,7 +142,7 @@
+ #if 0
+ else if ( !m_mtabIds.contains(id) )
+ {
+- QString name = generateName(dev);
++ QString name = generateName(dev, fs);
+
+ Medium *m = new Medium(id, name);
+
+@@ -205,7 +211,7 @@
+
+ if ( !m_fstabIds.contains(id) )
+ {
+- QString name = generateName(dev);
++ QString name = generateName(dev, fs);
+
+ Medium *m = new Medium(id, name);
+
+@@ -247,9 +253,18 @@
+ +m.replace("/", "");
+ }
+
+-QString FstabBackend::generateName(const QString &devNode)
++QString FstabBackend::generateName(const QString &devNode, const QString &fsType)
+ {
+- return KURL(devNode).fileName();
++ KURL url( devNode );
++
++ if ( url.isValid() )
++ {
++ return url.fileName();
++ }
++ else // surely something nfs or samba based
++ {
++ return fsType;
++ }
+ }
+
+ void FstabBackend::guess(const QString &devNode, const QString &mountPoint,
diff --git a/x11/kdebase3/files/patch-kioslave_media_kdedmodule_fstabbackend.h b/x11/kdebase3/files/patch-kioslave_media_kdedmodule_fstabbackend.h
new file mode 100644
index 000000000000..e9ceadf8e9b7
--- /dev/null
+++ b/x11/kdebase3/files/patch-kioslave_media_kdedmodule_fstabbackend.h
@@ -0,0 +1,37 @@
+--- kioslave/media/kdedmodule/fstabbackend.h
++++ kioslave/media/kdedmodule/fstabbackend.h
+@@ -24,6 +24,10 @@
+ #include <qobject.h>
+ #include <qstringlist.h>
+
++#ifdef Q_OS_FREEBSD
++#include <qtimer.h>
++#endif
++
+ class FstabBackend : public QObject, public BackendBase
+ {
+ Q_OBJECT
+@@ -38,17 +42,20 @@
+ QString &label);
+ private slots:
+ void slotDirty(const QString &path);
+-
+-private:
+ void handleFstabChange();
+ void handleMtabChange();
+
++private:
+ static QString generateId(const QString &devNode,
+ const QString &mountPoint);
+- static QString generateName(const QString &devNode);
++ static QString generateName(const QString &devNode,
++ const QString &fsType);
+
+ QStringList m_mtabIds;
+ QStringList m_fstabIds;
++#ifdef Q_OS_FREEBSD
++ QTimer m_mtabTimer;
++#endif
+ };
+
+ #endif
diff --git a/x11/kdebase4-runtime/Makefile b/x11/kdebase4-runtime/Makefile
index 9a9acf96aa95..b37100b46249 100644
--- a/x11/kdebase4-runtime/Makefile
+++ b/x11/kdebase4-runtime/Makefile
@@ -8,7 +8,7 @@
PORTNAME= kdebase
PORTVERSION= ${KDE_VERSION}
-PORTREVISION= 1
+PORTREVISION= 2
CATEGORIES= x11 kde
MASTER_SITES= ${MASTER_SITE_KDE}
MASTER_SITE_SUBDIR= stable/${PORTVERSION:S/.0//}/src
diff --git a/x11/kdebase4-runtime/files/patch-kioslave_media_kdedmodule_fstabbackend.cpp b/x11/kdebase4-runtime/files/patch-kioslave_media_kdedmodule_fstabbackend.cpp
new file mode 100644
index 000000000000..4fe077c27135
--- /dev/null
+++ b/x11/kdebase4-runtime/files/patch-kioslave_media_kdedmodule_fstabbackend.cpp
@@ -0,0 +1,63 @@
+--- kioslave/media/kdedmodule/fstabbackend.cpp
++++ kioslave/media/kdedmodule/fstabbackend.cpp
+@@ -47,6 +47,12 @@
+ handleMtabChange();
+
+ KDirWatch::self()->startScan();
++
++#ifdef Q_OS_FREEBSD
++ connect( &m_mtabTimer, SIGNAL( timeout() ),
++ this, SLOT( handleMtabChange() ) );
++ m_mtabTimer.start(250);
++#endif
+ }
+
+ FstabBackend::~FstabBackend()
+@@ -86,7 +92,7 @@
+ || mount->mountType() == "tmpfs"
+ || mount->mountType() == "sysfs"
+ || mount->mountType() == "usbfs"
+- || mount->mountType() == "proc"
++ || mount->mountType().contains( "proc" )
+ || mount->mountType() == "unknown"
+ || mount->mountType() == "none"
+ || mount->mountedFrom() == "none"
+@@ -136,7 +142,7 @@
+ #if 0
+ else if ( !m_mtabIds.contains(id) )
+ {
+- QString name = generateName(dev);
++ QString name = generateName(dev, fs);
+
+ Medium *m = new Medium(id, name);
+
+@@ -205,7 +211,7 @@
+
+ if ( !m_fstabIds.contains(id) )
+ {
+- QString name = generateName(dev);
++ QString name = generateName(dev, fs);
+
+ Medium *m = new Medium(id, name);
+
+@@ -247,9 +253,18 @@
+ +m.replace("/", "");
+ }
+
+-QString FstabBackend::generateName(const QString &devNode)
++QString FstabBackend::generateName(const QString &devNode, const QString &fsType)
+ {
+- return KURL(devNode).fileName();
++ KURL url( devNode );
++
++ if ( url.isValid() )
++ {
++ return url.fileName();
++ }
++ else // surely something nfs or samba based
++ {
++ return fsType;
++ }
+ }
+
+ void FstabBackend::guess(const QString &devNode, const QString &mountPoint,
diff --git a/x11/kdebase4-runtime/files/patch-kioslave_media_kdedmodule_fstabbackend.h b/x11/kdebase4-runtime/files/patch-kioslave_media_kdedmodule_fstabbackend.h
new file mode 100644
index 000000000000..e9ceadf8e9b7
--- /dev/null
+++ b/x11/kdebase4-runtime/files/patch-kioslave_media_kdedmodule_fstabbackend.h
@@ -0,0 +1,37 @@
+--- kioslave/media/kdedmodule/fstabbackend.h
++++ kioslave/media/kdedmodule/fstabbackend.h
+@@ -24,6 +24,10 @@
+ #include <qobject.h>
+ #include <qstringlist.h>
+
++#ifdef Q_OS_FREEBSD
++#include <qtimer.h>
++#endif
++
+ class FstabBackend : public QObject, public BackendBase
+ {
+ Q_OBJECT
+@@ -38,17 +42,20 @@
+ QString &label);
+ private slots:
+ void slotDirty(const QString &path);
+-
+-private:
+ void handleFstabChange();
+ void handleMtabChange();
+
++private:
+ static QString generateId(const QString &devNode,
+ const QString &mountPoint);
+- static QString generateName(const QString &devNode);
++ static QString generateName(const QString &devNode,
++ const QString &fsType);
+
+ QStringList m_mtabIds;
+ QStringList m_fstabIds;
++#ifdef Q_OS_FREEBSD
++ QTimer m_mtabTimer;
++#endif
+ };
+
+ #endif
diff --git a/x11/kdebase4-workspace/Makefile b/x11/kdebase4-workspace/Makefile
index 9a9acf96aa95..b37100b46249 100644
--- a/x11/kdebase4-workspace/Makefile
+++ b/x11/kdebase4-workspace/Makefile
@@ -8,7 +8,7 @@
PORTNAME= kdebase
PORTVERSION= ${KDE_VERSION}
-PORTREVISION= 1
+PORTREVISION= 2
CATEGORIES= x11 kde
MASTER_SITES= ${MASTER_SITE_KDE}
MASTER_SITE_SUBDIR= stable/${PORTVERSION:S/.0//}/src
diff --git a/x11/kdebase4-workspace/files/patch-kioslave_media_kdedmodule_fstabbackend.cpp b/x11/kdebase4-workspace/files/patch-kioslave_media_kdedmodule_fstabbackend.cpp
new file mode 100644
index 000000000000..4fe077c27135
--- /dev/null
+++ b/x11/kdebase4-workspace/files/patch-kioslave_media_kdedmodule_fstabbackend.cpp
@@ -0,0 +1,63 @@
+--- kioslave/media/kdedmodule/fstabbackend.cpp
++++ kioslave/media/kdedmodule/fstabbackend.cpp
+@@ -47,6 +47,12 @@
+ handleMtabChange();
+
+ KDirWatch::self()->startScan();
++
++#ifdef Q_OS_FREEBSD
++ connect( &m_mtabTimer, SIGNAL( timeout() ),
++ this, SLOT( handleMtabChange() ) );
++ m_mtabTimer.start(250);
++#endif
+ }
+
+ FstabBackend::~FstabBackend()
+@@ -86,7 +92,7 @@
+ || mount->mountType() == "tmpfs"
+ || mount->mountType() == "sysfs"
+ || mount->mountType() == "usbfs"
+- || mount->mountType() == "proc"
++ || mount->mountType().contains( "proc" )
+ || mount->mountType() == "unknown"
+ || mount->mountType() == "none"
+ || mount->mountedFrom() == "none"
+@@ -136,7 +142,7 @@
+ #if 0
+ else if ( !m_mtabIds.contains(id) )
+ {
+- QString name = generateName(dev);
++ QString name = generateName(dev, fs);
+
+ Medium *m = new Medium(id, name);
+
+@@ -205,7 +211,7 @@
+
+ if ( !m_fstabIds.contains(id) )
+ {
+- QString name = generateName(dev);
++ QString name = generateName(dev, fs);
+
+ Medium *m = new Medium(id, name);
+
+@@ -247,9 +253,18 @@
+ +m.replace("/", "");
+ }
+
+-QString FstabBackend::generateName(const QString &devNode)
++QString FstabBackend::generateName(const QString &devNode, const QString &fsType)
+ {
+- return KURL(devNode).fileName();
++ KURL url( devNode );
++
++ if ( url.isValid() )
++ {
++ return url.fileName();
++ }
++ else // surely something nfs or samba based
++ {
++ return fsType;
++ }
+ }
+
+ void FstabBackend::guess(const QString &devNode, const QString &mountPoint,
diff --git a/x11/kdebase4-workspace/files/patch-kioslave_media_kdedmodule_fstabbackend.h b/x11/kdebase4-workspace/files/patch-kioslave_media_kdedmodule_fstabbackend.h
new file mode 100644
index 000000000000..e9ceadf8e9b7
--- /dev/null
+++ b/x11/kdebase4-workspace/files/patch-kioslave_media_kdedmodule_fstabbackend.h
@@ -0,0 +1,37 @@
+--- kioslave/media/kdedmodule/fstabbackend.h
++++ kioslave/media/kdedmodule/fstabbackend.h
+@@ -24,6 +24,10 @@
+ #include <qobject.h>
+ #include <qstringlist.h>
+
++#ifdef Q_OS_FREEBSD
++#include <qtimer.h>
++#endif
++
+ class FstabBackend : public QObject, public BackendBase
+ {
+ Q_OBJECT
+@@ -38,17 +42,20 @@
+ QString &label);
+ private slots:
+ void slotDirty(const QString &path);
+-
+-private:
+ void handleFstabChange();
+ void handleMtabChange();
+
++private:
+ static QString generateId(const QString &devNode,
+ const QString &mountPoint);
+- static QString generateName(const QString &devNode);
++ static QString generateName(const QString &devNode,
++ const QString &fsType);
+
+ QStringList m_mtabIds;
+ QStringList m_fstabIds;
++#ifdef Q_OS_FREEBSD
++ QTimer m_mtabTimer;
++#endif
+ };
+
+ #endif
diff --git a/x11/kdebase4/Makefile b/x11/kdebase4/Makefile
index 9a9acf96aa95..b37100b46249 100644
--- a/x11/kdebase4/Makefile
+++ b/x11/kdebase4/Makefile
@@ -8,7 +8,7 @@
PORTNAME= kdebase
PORTVERSION= ${KDE_VERSION}
-PORTREVISION= 1
+PORTREVISION= 2
CATEGORIES= x11 kde
MASTER_SITES= ${MASTER_SITE_KDE}
MASTER_SITE_SUBDIR= stable/${PORTVERSION:S/.0//}/src
diff --git a/x11/kdebase4/files/patch-kioslave_media_kdedmodule_fstabbackend.cpp b/x11/kdebase4/files/patch-kioslave_media_kdedmodule_fstabbackend.cpp
new file mode 100644
index 000000000000..4fe077c27135
--- /dev/null
+++ b/x11/kdebase4/files/patch-kioslave_media_kdedmodule_fstabbackend.cpp
@@ -0,0 +1,63 @@
+--- kioslave/media/kdedmodule/fstabbackend.cpp
++++ kioslave/media/kdedmodule/fstabbackend.cpp
+@@ -47,6 +47,12 @@
+ handleMtabChange();
+
+ KDirWatch::self()->startScan();
++
++#ifdef Q_OS_FREEBSD
++ connect( &m_mtabTimer, SIGNAL( timeout() ),
++ this, SLOT( handleMtabChange() ) );
++ m_mtabTimer.start(250);
++#endif
+ }
+
+ FstabBackend::~FstabBackend()
+@@ -86,7 +92,7 @@
+ || mount->mountType() == "tmpfs"
+ || mount->mountType() == "sysfs"
+ || mount->mountType() == "usbfs"
+- || mount->mountType() == "proc"
++ || mount->mountType().contains( "proc" )
+ || mount->mountType() == "unknown"
+ || mount->mountType() == "none"
+ || mount->mountedFrom() == "none"
+@@ -136,7 +142,7 @@
+ #if 0
+ else if ( !m_mtabIds.contains(id) )
+ {
+- QString name = generateName(dev);
++ QString name = generateName(dev, fs);
+
+ Medium *m = new Medium(id, name);
+
+@@ -205,7 +211,7 @@
+
+ if ( !m_fstabIds.contains(id) )
+ {
+- QString name = generateName(dev);
++ QString name = generateName(dev, fs);
+
+ Medium *m = new Medium(id, name);
+
+@@ -247,9 +253,18 @@
+ +m.replace("/", "");
+ }
+
+-QString FstabBackend::generateName(const QString &devNode)
++QString FstabBackend::generateName(const QString &devNode, const QString &fsType)
+ {
+- return KURL(devNode).fileName();
++ KURL url( devNode );
++
++ if ( url.isValid() )
++ {
++ return url.fileName();
++ }
++ else // surely something nfs or samba based
++ {
++ return fsType;
++ }
+ }
+
+ void FstabBackend::guess(const QString &devNode, const QString &mountPoint,
diff --git a/x11/kdebase4/files/patch-kioslave_media_kdedmodule_fstabbackend.h b/x11/kdebase4/files/patch-kioslave_media_kdedmodule_fstabbackend.h
new file mode 100644
index 000000000000..e9ceadf8e9b7
--- /dev/null
+++ b/x11/kdebase4/files/patch-kioslave_media_kdedmodule_fstabbackend.h
@@ -0,0 +1,37 @@
+--- kioslave/media/kdedmodule/fstabbackend.h
++++ kioslave/media/kdedmodule/fstabbackend.h
+@@ -24,6 +24,10 @@
+ #include <qobject.h>
+ #include <qstringlist.h>
+
++#ifdef Q_OS_FREEBSD
++#include <qtimer.h>
++#endif
++
+ class FstabBackend : public QObject, public BackendBase
+ {
+ Q_OBJECT
+@@ -38,17 +42,20 @@
+ QString &label);
+ private slots:
+ void slotDirty(const QString &path);
+-
+-private:
+ void handleFstabChange();
+ void handleMtabChange();
+
++private:
+ static QString generateId(const QString &devNode,
+ const QString &mountPoint);
+- static QString generateName(const QString &devNode);
++ static QString generateName(const QString &devNode,
++ const QString &fsType);
+
+ QStringList m_mtabIds;
+ QStringList m_fstabIds;
++#ifdef Q_OS_FREEBSD
++ QTimer m_mtabTimer;
++#endif
+ };
+
+ #endif