summaryrefslogtreecommitdiffstats
path: root/redhat/applications/k3b/k3b-1.0.3-umount.patch
diff options
context:
space:
mode:
authoralbator <albator@arcadia.vtf>2011-09-11 17:52:34 +0200
committeralbator <albator@arcadia.vtf>2011-09-11 17:52:34 +0200
commit3b770cc37baeae9763a8f420204ede457d6d4672 (patch)
tree7c78a74ab2316235267f12bd678f98e415d10a68 /redhat/applications/k3b/k3b-1.0.3-umount.patch
parent33d2f707818e7b3191df081c2e485789d0d7c331 (diff)
downloadtde-packaging-3b770cc37baeae9763a8f420204ede457d6d4672.tar.gz
tde-packaging-3b770cc37baeae9763a8f420204ede457d6d4672.zip
Initial build for K3B
Diffstat (limited to 'redhat/applications/k3b/k3b-1.0.3-umount.patch')
-rw-r--r--redhat/applications/k3b/k3b-1.0.3-umount.patch48
1 files changed, 48 insertions, 0 deletions
diff --git a/redhat/applications/k3b/k3b-1.0.3-umount.patch b/redhat/applications/k3b/k3b-1.0.3-umount.patch
new file mode 100644
index 000000000..394aff152
--- /dev/null
+++ b/redhat/applications/k3b/k3b-1.0.3-umount.patch
@@ -0,0 +1,48 @@
+--- k3b-1.0.3/libk3b/core/k3bglobals.cpp.umount 2007-07-27 21:26:30.000000000 +0200
++++ k3b-1.0.3/libk3b/core/k3bglobals.cpp 2007-07-27 21:31:26.000000000 +0200
+@@ -569,7 +569,24 @@
+ return true;
+ }
+
+- // now try pmount
++#ifdef HAVE_HAL
++ if (!K3bDevice::HalConnection::instance()->unmount( dev ))
++ return true;
++#endif
++
++ QString gumountBin = K3b::findExe( "gnome-umount" );
++ if( !gumountBin.isEmpty() ) {
++ KProcess p;
++ p << gumountBin;
++ p << "-u";
++ p << "-d";
++ p << dev->blockDeviceName();
++ p.start( KProcess::Block );
++ if( !p.exitStatus() )
++ return true;
++ }
++
++// now try pmount
+ QString pumountBin = K3b::findExe( "pumount" );
+ if( !pumountBin.isEmpty() ) {
+ KProcess p;
+@@ -577,15 +592,11 @@
+ p << "-l"; // lazy unmount
+ p << dev->blockDeviceName();
+ p.start( KProcess::Block );
+- return !p.exitStatus();
+- }
+- else {
+-#ifdef HAVE_HAL
+- return !K3bDevice::HalConnection::instance()->unmount( dev );
+-#else
+- return false;
+-#endif
++ if( !p.exitStatus() )
++ return true;
+ }
++
++ return false;
+ }
+
+