summaryrefslogtreecommitdiff
path: root/Ivy.pm
diff options
context:
space:
mode:
Diffstat (limited to 'Ivy.pm')
-rw-r--r--Ivy.pm11
1 files changed, 5 insertions, 6 deletions
diff --git a/Ivy.pm b/Ivy.pm
index 8a1004f..7d96e63 100644
--- a/Ivy.pm
+++ b/Ivy.pm
@@ -1,7 +1,7 @@
#
# Ivy, Perl interface
#
-# Copyright 1997-2006
+# Copyright 1997-2008
# Centre d'Études de la Navigation Aérienne
#
# Authors: Alexandre Bustico <alexandre.bustico@cena.fr>
@@ -1519,7 +1519,8 @@ sub _getMessages ($$)
# on recupere le couple call back, regexp correspondant
# a l'identifiant et on appelle la fonction avec les parametres
# traites par la regexp
- if (my @cb = @{$self->[recCbList][$id]->[1]}) {
+ if (ref ($self->[recCbList][$id]) eq 'ARRAY') {
+ my @cb = @{$self->[recCbList][$id]->[1]};
my $cb = shift @cb;
# cleaning $sendername with previous \004 used for connection status
@@ -1778,10 +1779,8 @@ sub _removeFileDescriptor ($$$)
# uniquement si on est dans le thread principal
# sinon le select merde salement sur ce coup
my $peerPort = $fd->peerport() ;
- if ($peerPort == 0) {
-# syswrite ($trace, "_removeFileDescriptor : peerport is NULL, don't do anything\n");
- return;
- }
+ $peerPort = 0 unless defined $peerPort;
+
# syswrite ($trace, sprintf ("_removeFileDescriptor : suppression dans le fdset de %s[%s]:%d\n",
# (gethostbyaddr ($fd->peeraddr(),AF_INET))[0],
# join (':', unpack ('C4', $fd->peeraddr())),