+ # Assign archipelagoes according to the source-info file
+ #
+ foreach my $arch (sort keys %{ $oceans{$ocean} }) {
+ foreach my $islename (sort keys %{ $oceans{$ocean}{$arch} }) {
+ my $islenode= $wiisland2node{$islename};
+ defined $islenode or
+ error("island $islename in source-info but not in WP map");
+ my $ccix= $wiarchs->connected_component_by_vertex($islenode);
+ my $oldarch= $wiccix2arch{$ccix};
+ error("island $islename in $arch in source-info".
+ " connected to $oldarch as well")
+ if defined $oldarch && $oldarch ne $arch;
+ printf DEBUG "%-5s force-island-arch cc%-2d %-10s %s\n",
+ $islenode, $ccix, $arch, $islename;
+ $wiccix2arch{$ccix}= $arch;
+ }
+ }
+