diff --git a/bind8/CHANGELOG b/bind8/CHANGELOG
index ba5fac4bf..931521629 100644
--- a/bind8/CHANGELOG
+++ b/bind8/CHANGELOG
@@ -69,3 +69,5 @@ BIND on Windows can now be configured using this module.
Mass record creation can now add records for the domain name (by entering @ as the name), as records that already exist.
---- Changes since 1.400 ----
Keys in ACL sections are no long mangled by Webmin. This means that each IP or key must be entered on a separate line in the Access Control Lists page.
+---- Changes since 1.410 ----
+Corrected parsing of records in zone files with no names, which inherit from the previous record.
diff --git a/bind8/edit_slave.cgi b/bind8/edit_slave.cgi
index 6f634edd3..69ac58728 100755
--- a/bind8/edit_slave.cgi
+++ b/bind8/edit_slave.cgi
@@ -43,9 +43,9 @@ if ($zone->{'file'}) {
if ($config{'show_list'}) {
# display as list
$mid = int((@rcodes+1)/2);
- print "
\n";
+ print " | \n";
&types_table(@rcodes[0..$mid-1]);
- print " | \n";
+ print " | \n";
&types_table(@rcodes[$mid..$#rcodes]);
print " | \n";
}
diff --git a/bind8/records-lib.pl b/bind8/records-lib.pl
index d88fcdb80..10791f4fc 100644
--- a/bind8/records-lib.pl
+++ b/bind8/records-lib.pl
@@ -207,7 +207,12 @@ while($i < @tok) {
$i++;
}
if ($dir{'name'} eq '') {
- local $prv = $#rv >= 0 ? $rv[$#rv] : $_[2];
+ # Name comes from previous record
+ for(my $p=$#rv; $p>=0; $p--) {
+ $prv = $rv[$p];
+ last if ($prv->{'name'});
+ }
+ $prv ||= $_[2];
$prv || &error(&text('efirst', $lnum[$i]+1, $file));
$dir{'name'} = $prv->{'name'};
$dir{'realname'} = $prv->{'realname'};
|