]> git.pld-linux.org Git - packages/alsa-utils.git/blobdiff - alsasound.init
up to 1.2.1
[packages/alsa-utils.git] / alsasound.init
index 0710174bd1d9c9bd46902cd08b94e881c149335e..6c66b7e5bd8fd4c5d638e0b9a8a944fb9abaf7f6 100644 (file)
@@ -3,8 +3,6 @@
 # alsasound    This shell script takes care of starting and stopping \
 #              ALSA sound driver.
 #
-# This script requires /usr/sbin/alsactl program from alsa-utils package.
-#
 # Copyright (c) by Jaroslav Kysela <perex@jcu.cz>
 #
 #  This program is free software; you can redistribute it and/or modify
@@ -49,22 +47,6 @@ driver_start()
       /sbin/modprobe $line
       ok
     done
-
-  # restore driver settings
-  #
-  if [ -x /usr/sbin/alsactl ]; then
-    if [ -f /etc/asound.state ]; then
-      if [ "$(kernelver)" -lt "002006012" ]; then
-       for i in 1 2 3 4; do
-         [ -a /dev/snd/controlC0 ] && break
-         sleep 1
-       done
-      fi
-      /usr/sbin/alsactl restore
-    fi
-  else
-    show "ERROR: alsactl not found"; fail
-  fi
 }
 
 detect_stop()
@@ -79,14 +61,6 @@ detect_stop()
 
 driver_stop()
 {
-  #
-  # store driver settings
-  #
-  if [ -x /usr/sbin/alsactl ]; then
-    /usr/sbin/alsactl store
-  else
-    show '!!!alsactl not found!!!'; fail
-  fi
   #
   # remove all sound modules
   #
@@ -125,6 +99,11 @@ start() {
                        msg_already_running "ALSA driver"
                fi
        fi
+       # "restore" is handled via udev if running; if not, do it manually
+       if is_no "$START_UDEV" && [ -f /var/lib/alsa/asound.state ]; then
+               sleep 1
+               /sbin/alsactl restore
+       fi
 }
 
 # Stop daemons.
This page took 0.086588 seconds and 4 git commands to generate.