-rw-r--r-- | core/opiealarm/opiealarm.c | 15 |
1 files changed, 8 insertions, 7 deletions
diff --git a/core/opiealarm/opiealarm.c b/core/opiealarm/opiealarm.c index 5ea24b7..072dca7 100644 --- a/core/opiealarm/opiealarm.c +++ b/core/opiealarm/opiealarm.c @@ -23,12 +23,13 @@ #include <signal.h> #include <errno.h> #include <string.h> #define PIDFILE "/var/run/opiealarm.pid" +#define TIMEFILE "/var/run/resumeat" #define APMFILE "/proc/apm" int resume ( int resuspend ); int suspend ( int fix_rtc ); int main ( int argc, char **argv ); int fork_with_pidfile ( void ); @@ -242,29 +243,29 @@ int suspend ( int fix_rtc ) struct tm set; set = *gmtime ( &syst ); // if the difference between system and hardware time is more than 3 seconds, // we have to set the RTC (hwclock --systohc), or alarms won't work reliably. - if ( ioctl ( fd, RTC_SET_TIME, &set ) < 0 ) + if ( ioctl ( fd, RTC_SET_TIME, &set ) < 0 ) break; // ( 1, "ioctl RTC_SET_TIME" ); } - // read the wakeup time from /etc/resumeat - if (!( fp = fopen ( "/etc/resumeat", "r" ))) - break; // ( 1, "/etc/resumeat" ); + // read the wakeup time from TIMEFILE + if (!( fp = fopen ( TIMEFILE, "r" ))) + break; // ( 1, TIMEFILE ); if ( !fgets ( buf, sizeof( buf ) - 1, fp )) - break; // ( 1, "/etc/resumeat" ); + break; // ( 1, TIMEFILE ); fclose ( fp ); alrt = atoi ( buf ); // get the alarm time if ( alrt == 0 ) - break; // ( 0, "/etc/resumeat contains an invalid time description" ); + break; // ( 0, TIMEFILE " contains an invalid time description" ); alrt -= 5; // wake up 5 sec before the specified time alr = *gmtime ( &alrt ); if ( ioctl ( fd, RTC_ALM_SET, &alr ) < 0 ) // set RTC alarm time break; // ( 1, "ioctl RTC_ALM_SET" ); @@ -287,13 +288,13 @@ int suspend ( int fix_rtc ) close ( fd ); remove_pidfile ( ); return 0; - } while ( 0 ) + } while ( 0 ); if ( fp != NULL ) fclose ( fp ); if ( fd != -1 ) close ( fd ); |