Sophie

Sophie

distrib > Mandriva > 2007.1 > i586 > by-pkgid > 957da2639ff0ff03ed8e388494a58800 > files > 140

kdebase4-3.80.3-0.20070311.6mdv2007.1.src.rpm

Index: kdeeject/kdeeject
================================================================================
--- kdeeject/kdeeject
+++ kdeeject/kdeeject
@@ -4,12 +4,38 @@
 #
 # Copyright GPL v2 by David Faure <david@mandrakesoft.com>
 #
-if test $# -ge 1 -a "$1" != "--help"; then
-  quiet=0
-  if test "$1" = "-q"; then
-    quiet=1
-    shift
-  fi
+quiet=0
+if test "$1" = "-q"; then
+  quiet=1
+  shift
+fi
+
+if test "$1" = "--help"; then
+  "Usage: $0 <name> where name is a device or a mountpoint."
+   exit 0
+fi
+
+if test -z "$1"; then
+  for dev in /dev/cdrom /dev/dvd /dev/dvdram /dev/cdrecorder; do
+     if test -e $dev; then
+        lp=`readlink $dev`
+	if test -n "$lp"; then
+	    device=/dev/$lp
+	else
+	    device=$dev
+        fi
+        break
+    fi
+  done
+else
+  device=$1
+fi
+
+udi=`dcop kded mediamanager properties $device 2>/dev/null | head -n 1 `
+if test -n "$udi"; then
+    dcop kded mediamanager unmount "$udi" >/dev/null 2>&1
+fi
+
   # Checking for stuff in the PATH is ugly with sh.
   # I guess this is the reason for making this a kde app...
   OS=`uname -s`
@@ -31,7 +57,5 @@
   elif test $quiet -eq 0; then
     kdialog --title "KDE Eject" --error "Eject $1 failed!"
   fi
-else
-  kdialog --title "KDE Eject" --msgbox "Usage: $0 <name> where name is a device or a mountpoint."
-fi
+
 exit 1