Duplicate port names are handled without error

This commit is contained in:
Oliver Gorwits
2013-08-23 06:49:49 +01:00
parent 753133b394
commit 182378326e
2 changed files with 10 additions and 4 deletions

View File

@@ -1,3 +1,9 @@
2.012006 - 2013-08-23
[BUG FIXES]
* Duplicate port names are handled without error
2.012005 - 2013-08-16 2.012005 - 2013-08-16
[ENHANCEMENTS] [ENHANCEMENTS]

View File

@@ -189,7 +189,7 @@ sub store_interfaces {
} }
# build device interfaces suitable for DBIC # build device interfaces suitable for DBIC
my @interfaces; my %interfaces;
foreach my $entry (keys %$interfaces) { foreach my $entry (keys %$interfaces) {
my $port = $interfaces->{$entry}; my $port = $interfaces->{$entry};
@@ -231,7 +231,7 @@ sub store_interfaces {
} }
} }
push @interfaces, { $interfaces{$port} = {
port => $port, port => $port,
descr => $i_descr->{$entry}, descr => $i_descr->{$entry},
up => $i_up->{$entry}, up => $i_up->{$entry},
@@ -255,9 +255,9 @@ sub store_interfaces {
debug sprintf ' [%s] interfaces - removed %s interfaces', debug sprintf ' [%s] interfaces - removed %s interfaces',
$device->ip, $gone; $device->ip, $gone;
$device->update_or_insert(undef, {for => 'update'}); $device->update_or_insert(undef, {for => 'update'});
$device->ports->populate(\@interfaces); $device->ports->populate([values %interfaces]);
debug sprintf ' [%s] interfaces - added %d new interfaces', debug sprintf ' [%s] interfaces - added %d new interfaces',
$device->ip, scalar @interfaces; $device->ip, scalar values %interfaces;
}); });
} }