Index: /trunk/cgi-bin/IPDB.pm
===================================================================
--- /trunk/cgi-bin/IPDB.pm	(revision 748)
+++ /trunk/cgi-bin/IPDB.pm	(revision 749)
@@ -2560,4 +2560,20 @@
     } # scope eq 'clearpeer' || 'clearall'
 
+  } elsif ($args{newtype} =~ /.[enr]/) {
+    # Merge to leaf type
+
+    # Resize rDNS template for $prime
+    _rpc('resizeTemplate', oldcidr => "$binfo->{block}", newcidr => $newblock->network.'', rpcuser => $args{user});
+
+    # Assemble a list of blocks to delete...
+    my $cidrlist;
+    foreach my $mblock (@retlist) {
+      $cidrlist .= $mblock->{block}."," unless $mblock->{block} =~ $newblock;
+    }
+    # Delete all other records within the new block
+    $cidrlist .= $binfo->{block};
+    _rpc('delRevSet', cidrlist => $cidrlist, rpcuser => $args{user}, delforward => 'y', delsubs => 'y',
+        parpatt => $pinfo->{rdns});
+
   } # type grouping for rDNS calls
 
