modem-lib.pl: Check if character device exists before trying to connect to it.

This commit is contained in:
Michael Tremer
2014-06-12 16:44:07 +02:00
parent d6e6e21341
commit b3b33f8586

View File

@@ -33,7 +33,10 @@ sub new() {
bless $self, $class;
# Initialize the connetion to the modem.
$self->_initialize($port, $baud);
my $ret = $self->_initialize($port, $baud);
if ($ret) {
return undef;
}
if ($self->_is_working()) {
return $self;
@@ -54,9 +57,16 @@ sub DESTROY() {
sub _initialize() {
my ($self, $port, $baud) = @_;
# Check if the character device actually exists.
if (! -c $port) {
return 1;
}
# Establish connection to the modem.
$self->{modem} = new Device::Modem(port => $port);
$self->{modem}->connect(baudrate => $baud);
return 0;
}
sub _is_working() {