summaryrefslogtreecommitdiff
path: root/xpp/utils/zconf/Zaptel/Xpp/Line.pm
diff options
context:
space:
mode:
Diffstat (limited to 'xpp/utils/zconf/Zaptel/Xpp/Line.pm')
-rw-r--r--xpp/utils/zconf/Zaptel/Xpp/Line.pm8
1 files changed, 6 insertions, 2 deletions
diff --git a/xpp/utils/zconf/Zaptel/Xpp/Line.pm b/xpp/utils/zconf/Zaptel/Xpp/Line.pm
index e3e04f0..0014aed 100644
--- a/xpp/utils/zconf/Zaptel/Xpp/Line.pm
+++ b/xpp/utils/zconf/Zaptel/Xpp/Line.pm
@@ -39,15 +39,19 @@ sub create_all($$) {
die "Failed globbing '$procdir/*_info'" unless defined $infofile;
my $type = $xpd->type;
open(F, "$infofile") || die "Failed opening '$infofile': $!";
+ my $battery_info = 0;
while (<F>) {
chomp;
if($type eq 'FXO') {
- if(s/^\s*battery\s*:\s*//) {
+ $battery_info = 1 if /^Battery:/;
+ if($battery_info && s/^\s*on\s*:\s*//) {
my @batt = split;
foreach my $l (@lines) {
die unless @batt;
- $l->{BATTERY} = shift @batt;
+ my $state = shift @batt;
+ $l->{BATTERY} = ($state eq '+') ? 1 : 0;
}
+ $battery_info = 0;
die if @batt;
}
}