- my ($call, $is_node, $is_extnode, $here, $version, $build) = _decode_pc92_call($ent[0]);
- if ($call && $is_node && $call eq $pcall) {
- $parent->here(Route::here($here));
- $parent->version($version) if $version;
- $parent->build($build) if $build;
- } elsif ($is_extnode) {
- # reparent to external node (note that we must have received a 'C' or 'A' record
- # from the true parent node for this external before we get one for the this node
- unless ($parent = Route::Node::get($call)) {
- dbg("PCPROT: no previous C or A for this external node received, ignored") if isdbg('chanerr');
+
+ # look at the first one which will always be a node of some sort
+ # and update any information that needs to be done.
+ my ($call, $is_node, $is_extnode, $here, $version, $build) = @{$ent[0]};
+ if ($call && $is_node) {
+ if ($call eq $main::mycall) {
+ dbg("PCPROT: looped back on node entry, ignored") if isdbg('chanerr');