summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorSlávek Banko <slavek.banko@axis.cz>2013-05-12 16:47:40 +0200
committerSlávek Banko <slavek.banko@axis.cz>2013-05-12 16:47:40 +0200
commit42fc3b28988488dfefc5815b8efd265dba5b125a (patch)
tree7ddcda9d1e98c2822c25cfc2f5c5d94ad4d122d9
parentd48a6acee440373307f66fe441407f76d42abded (diff)
downloadtdebase-42fc3b28.tar.gz
tdebase-42fc3b28.zip
Fix halbackend does not manage to invoke 'fuser' command
-rw-r--r--tdeioslave/media/mediamanager/halbackend.cpp16
1 files changed, 12 insertions, 4 deletions
diff --git a/tdeioslave/media/mediamanager/halbackend.cpp b/tdeioslave/media/mediamanager/halbackend.cpp
index a9db771b9..65807b102 100644
--- a/tdeioslave/media/mediamanager/halbackend.cpp
+++ b/tdeioslave/media/mediamanager/halbackend.cpp
@@ -1299,10 +1299,14 @@ static TQString mount_priv(const char *udi, const char *mount_point, const char
TQString HALBackend::listUsingProcesses(const Medium* medium)
{
TQString proclist, fullmsg;
- TQString cmdline = TQString("/usr/bin/env fuser -vm %1 2>&1").arg(TDEProcess::quote(medium->mountPoint()));
- FILE *fuser = popen(cmdline.latin1(), "r");
+ TQString fuserpath = TDEStandardDirs::findExe("fuser", TQString("/sbin:/usr/sbin:") + getenv( "PATH" ));
+ FILE *fuser = NULL;
uint counter = 0;
+ if (!fuserpath.isEmpty()) {
+ TQString cmdline = TQString("/usr/bin/env %1 -vm %2 2>&1").arg(fuserpath, TDEProcess::quote(medium->mountPoint()));
+ fuser = popen(cmdline.latin1(), "r");
+ }
if (fuser) {
proclist += "<pre>";
TQTextIStream is(fuser);
@@ -1336,10 +1340,14 @@ TQString HALBackend::listUsingProcesses(const Medium* medium)
TQString HALBackend::killUsingProcesses(const Medium* medium)
{
TQString proclist, fullmsg;
- TQString cmdline = TQString("/usr/bin/env fuser -vmk %1 2>&1").arg(TDEProcess::quote(medium->mountPoint()));
- FILE *fuser = popen(cmdline.latin1(), "r");
+ TQString fuserpath = TDEStandardDirs::findExe("fuser", TQString("/sbin:/usr/sbin:") + getenv( "PATH" ));
+ FILE *fuser = NULL;
uint counter = 0;
+ if (!fuserpath.isEmpty()) {
+ TQString cmdline = TQString("/usr/bin/env %1 -vmk %2 2>&1").arg(fuserpath, TDEProcess::quote(medium->mountPoint()));
+ fuser = popen(cmdline.latin1(), "r");
+ }
if (fuser) {
proclist += "<pre>";
TQTextIStream is(fuser);