From f2bf9ba8063bb8692c6c498af71340113c5faab9 Mon Sep 17 00:00:00 2001
From: Nick Clemens <nick@bywatersolutions.com>
Date: Tue, 14 Jan 2020 16:13:25 +0000
Subject: [PATCH] Bug 24421: Check if subfields are valid using the biblio tag

To test:
 1 - Enable the sysprefs
     AutoCreateAuthorities
     BiblioAddsAuthorities
     CatalogModuleRelink
 2 - Open a record with a subject heading with a subdivision and add a new subfield, or add a new unauthroized heading to a record and save it
    e.g. 650$aChess$xOpenings$vFiction.
 3 - Save the record, note the created authority and that field is linked
 4 - Save the record again and note the authority number changes
 5 - Find and view the authority linked to the record
 6 - The record is for 'Chess', not Chess openings'
 7 - Search authorities for 'Chess' - note duplicated records
 8 - Apply patch, restart all
 9 - Save the record, auth number increases again, we shoudl create the correct record this time
10 - Save again, auth number should not change
11 - Search authorities and confirm the generated authority has the correct subfields
---
 C4/Biblio.pm | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/C4/Biblio.pm b/C4/Biblio.pm
index ce0d4fbdb6..a789c7f267 100644
--- a/C4/Biblio.pm
+++ b/C4/Biblio.pm
@@ -550,7 +550,7 @@ sub LinkBibHeadingsToAuthorities {
                         $authfield->add_subfields( $_->[0] => $_->[1] )
                           if ( $_->[0] =~ /[A-z]/ && $_->[0] ne "a"
                             && C4::Heading::valid_bib_heading_subfield(
-                                $authority_type->auth_tag_to_report, $_->[0] )
+                                $field->tag, $_->[0] )
                             );
                     } $field->subfields();
                     $marcrecordauth->insert_fields_ordered($authfield);
-- 
2.11.0