From: minima <minima>
Date: Tue, 24 Aug 2004 08:12:11 +0000 (+0000)
Subject: add delete_interface on disconnect
X-Git-Tag: R_1_51B
X-Git-Url: http://dxspider.org/gitweb/gitweb.cgi?a=commitdiff_plain;h=82a069702aa7b9e345886974fe4481de05beff03;p=spider.git

add delete_interface on disconnect
---

diff --git a/perl/DXProt.pm b/perl/DXProt.pm
index 69085f35..c96d787e 100644
--- a/perl/DXProt.pm
+++ b/perl/DXProt.pm
@@ -2307,6 +2307,8 @@ sub disconnect
 			eph_del_regex("^PC1[679].*$c");
 		}
 	}
+
+	RouteDB::delete_interface($call);
 	
 	# remove them from the pc19list as well
 	while (my ($k,$v) = each %pc19list) {
diff --git a/perl/RouteDB.pm b/perl/RouteDB.pm
index c9c01ff4..42cf693f 100644
--- a/perl/RouteDB.pm
+++ b/perl/RouteDB.pm
@@ -106,6 +106,14 @@ sub delete
 	delete $ref->{item}->{$interface} if $ref;
 }
 
+sub delete_interface
+{
+	my $interface = shift;
+	foreach my $ref (values %list) {
+		delete $ref->{item}->{$interface};
+	}
+}
+
 #
 # generic AUTOLOAD for accessors
 #