Author: pebender
Date: Sat Sep 6 16:18:27 2008
New Revision: 3715
Modified:
trunk/gar-minimyth/script/meta/minimyth/files/source/rootfs/etc/rc.d.perl/init/lirc.pm
Log:
- Modified perl based lirc init script so that it can enable wakeup when
the LIRC device is a symbolic link.
- This does not work when using the sh based init scripts.
Modified:
trunk/gar-minimyth/script/meta/minimyth/files/source/rootfs/etc/rc.d.perl/init/lirc.pm
==============================================================================
---
trunk/gar-minimyth/script/meta/minimyth/files/source/rootfs/etc/rc.d.perl/init/lirc.pm
(original)
+++
trunk/gar-minimyth/script/meta/minimyth/files/source/rootfs/etc/rc.d.perl/init/lirc.pm
Sat Sep 6 16:18:27 2008
@@ -9,13 +9,14 @@
use strict;
use warnings;
+require Cwd;
require File::Copy;
require MiniMyth;
sub _remote_wakeup_enable
{
- my $self = shift;
- my $device_list = shift;
+ my $self = shift;
+ my $device = shift;
if ((! -r '/sys/class/lirc') ||
(! opendir(DIR, '/sys/class/lirc')))
@@ -42,7 +43,7 @@
}
close(FILE);
}
- if (! grep(/^$name,.*$/, @{$device_list}))
+ if ($name ne $device)
{
next;
}
@@ -244,7 +245,7 @@
mkdir('/var/lock', 0755);
mkdir('/var/run', 0755);
- # Start an LIRC daemon for each device.
+ # Enable wakeup and start an LIRC daemon for each device.
my $index = 0;
foreach my $device_item (@device_list)
{
@@ -252,6 +253,9 @@
my $device = $device_args[0];
my $driver = $device_args[1];
+ # Convert device to the actual device rather than the symbolic
link.
+ $device = Cwd::abs_path($device);
+
# Convert driver to the the lirc daemon appropriate driver.
if (($driver) && (open(FILE, '-|', '/usr/sbin/lircd --driver=help
2>&1')))
{
@@ -268,6 +272,12 @@
$driver = $driver_actual;
}
+ # Enable wakeup on remote.
+ if ($minimyth->var_get('MM_LIRC_WAKEUP_ENABLED') eq 'yes')
+ {
+ $self->_remote_wakeup_enable($device);
+ }
+
# Start daemon.
my $daemon = '';
my $instance = $device;
@@ -348,12 +358,6 @@
if ($irexec_enabled eq 'yes')
{
system(qq(/usr/bin/irexec -d /etc/lircrc));
- }
-
- # Enable wakeup on remote.
- if ($minimyth->var_get('MM_LIRC_WAKEUP_ENABLED') eq 'yes')
- {
- $self->_remote_wakeup_enable([EMAIL PROTECTED]);
}
return 1;
--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google Groups
"minimyth-commits" group.
To post to this group, send email to [email protected]
To unsubscribe from this group, send email to [EMAIL PROTECTED]
For more options, visit this group at
http://groups.google.com/group/minimyth-commits?hl=en
-~----------~----~----~----~------~----~------~--~---