From ec7e569d55575f26ba481684ff157c8ec3985002 Mon Sep 17 00:00:00 2001 From: Nick Clemens Date: Wed, 31 Oct 2018 12:18:58 +0000 Subject: [PATCH] Bug 21742: Fix YouTube variable propagation The loop to find all media has an $isyoutube variable. This was declared outside the loop and never reset. Once a YouTube video was encountered all subsequent videos were considered as YouTube. This patch reduces the scope of the variable and resets per loop. To test: 1 - Enable HTML5Media and HTML5MediaYouTube 2 - Add 856$u to record for a youtube vido and a pdf (sample record attached to bug) 3 - View the record, the Play media tab has two video boxes 4 - Play the second, it fails 5 - Apply patch 6 - View record, Play media should include only one video link Signed-off-by: Devinim Signed-off-by: Jonathan Druart Signed-off-by: Nick Clemens (cherry picked from commit 8ceba54c8dcfd9b598375b8af432c0111ec63d04) Signed-off-by: Martin Renvoize --- C4/HTML5Media.pm | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/C4/HTML5Media.pm b/C4/HTML5Media.pm index 1ac22f17c3..c77e8a40bc 100644 --- a/C4/HTML5Media.pm +++ b/C4/HTML5Media.pm @@ -50,8 +50,8 @@ sub gethtml5media { my @HTML5MediaExtensions = split( /\|/, C4::Context->preference("HTML5MediaExtensions") ); my $HTML5MediaYouTube = C4::Context->preference("HTML5MediaYouTube"); my $marcflavour = C4::Context->preference("marcflavour"); - my $isyoutube = 0; foreach my $HTML5Media_field (@HTML5Media_fields) { + my $isyoutube = 0; my %HTML5Media; # protocol if ( $HTML5Media_field->indicator(1) eq '1' ) { -- 2.39.5