diff options
-rw-r--r-- | usr.sbin/apmd/apmd.8 | 5 | ||||
-rw-r--r-- | usr.sbin/apmd/apmd.c | 7 |
2 files changed, 8 insertions, 4 deletions
diff --git a/usr.sbin/apmd/apmd.8 b/usr.sbin/apmd/apmd.8 index 49ea563534b..b073f2a5605 100644 --- a/usr.sbin/apmd/apmd.8 +++ b/usr.sbin/apmd/apmd.8 @@ -24,7 +24,7 @@ .\" ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE .\" POSSIBILITY OF SUCH DAMAGE. .\" -.\" $Id: apmd.8,v 1.13 2001/03/22 04:51:13 angelos Exp $ +.\" $Id: apmd.8,v 1.14 2001/03/22 05:24:03 angelos Exp $ .\" .Dd March 24, 1996 .Dt APMD 8 @@ -166,7 +166,8 @@ mode. The resume program is run after resuming from a stand-by or suspended state. The powerup and powerdown programs are run after the power status (AC -connected or not) changes, as well as after a resume. +connected or not) changes, as well as after a resume (if the power +status changed in the mean time). .Sh FILES .Pa /etc/apm/suspend , .Pa /etc/apm/standby , diff --git a/usr.sbin/apmd/apmd.c b/usr.sbin/apmd/apmd.c index ebff27fea58..ab38ebe7e62 100644 --- a/usr.sbin/apmd/apmd.c +++ b/usr.sbin/apmd/apmd.c @@ -448,8 +448,11 @@ main(int argc, char *argv[]) case APM_NORMAL_RESUME: case APM_CRIT_RESUME: case APM_SYS_STANDBY_RESUME: - powerstatus = power_status(ctl_fd, 0, 0); - powerchange = 1; + powerbak = power_status(ctl_fd, 0, 0); + if (powerstatus != powerbak) { + powerstatus = powerbak; + powerchange = 1; + } resumes++; break; case APM_POWER_CHANGE: |