diff options
Diffstat (limited to 'FS')
| -rw-r--r-- | FS/bin/freeside-selfservice-server | 11 | 
1 files changed, 10 insertions, 1 deletions
diff --git a/FS/bin/freeside-selfservice-server b/FS/bin/freeside-selfservice-server index 05fa72b43..d2358e33c 100644 --- a/FS/bin/freeside-selfservice-server +++ b/FS/bin/freeside-selfservice-server @@ -74,7 +74,13 @@ while (1) {      warn "receiving packet from client\n" if $Debug; -    my $packet = fd_retrieve($reader); +    my $packet = eval { fd_retrieve($reader); }; +    if ( $@ ) { +      warn "Storable error receiving packet from client". +           " (assuming lost connection): $@\n" +        if $Debug; +      last; +    }      warn "packet received\n".           join('', map { " $_=>$packet->{$_}\n" } keys %$packet )        if $Debug > 1; @@ -120,6 +126,9 @@ while (1) {    } +  warn "connection lost, reconnecting\n" if $Debug; +  sleep 3; +  }  ###  | 
