Koha-clms/C4
Colin Campbell 60e9074bec Bug 15209 Validate passed MARC::Record objs in C4::Koha
Ensure that a passed MARC::Record is defined before calling
its methods. Otherwise you are open to occurences of the
error 'Can't call method "field" on an undefined value'
In a CGI environment you can live with such sloppiness but
in a persistent environment the error can cause the instance
to abort.
Made all routines passed a MARC::Record validate it before calling
its methods. Changed the parameter name from the meaningless
record to marcrecord to indicate its content. Added an explicit return
for all cases where no valid data returned. Cleaned up some logic for
clarity. I think we can assume that GetNormalizedOCLCNumber meant to
look at all 035s till it found an OCLC number not just the first.

Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>

Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com>

Signed-off-by: Brendan A Gallagher <brendan@bywatersolutions.com>
(cherry picked from commit 960458dee4)
Signed-off-by: Julian Maurice <julian.maurice@biblibre.com>
(cherry picked from commit 958985b2ff)
Signed-off-by: Frédéric Demians <f.demians@tamil.fr>
2016-02-11 19:33:50 +01:00
..
AuthoritiesMarc Bug 9978: Replace license header with the correct license (GPLv3+) 2015-04-20 09:59:38 -03:00
Barcodes Bug 15042: Barcode hbyymmincr does not work when receiving serials 2015-10-28 09:06:24 +13:00
Bookseller Bug 10402 follow-up: choose contacts for claims 2014-08-26 11:45:59 -03:00
ClassSortRoutine Bug 9978: Replace license header with the correct license (GPLv3+) 2015-04-20 09:59:38 -03:00
Creators Bug 12911: batch_id for new labels batches can be asssigned to several batches 2015-05-14 11:11:03 -03:00
External Bug 13758: Correct KOHA::VERSION in OverDrive.pm 2015-05-11 09:36:07 -03:00
Form Bug 9978: Replace license header with the correct license (GPLv3+) 2015-04-20 09:59:38 -03:00
Heading Bug 9978: Replace license header with the correct license (GPLv3+) 2015-04-20 09:59:38 -03:00
ILSDI Bug 9978: Replace license header with the correct license (GPLv3+) 2015-04-20 09:59:38 -03:00
Installer Bug 15680 - Fresh install of Koha cannot find any dependencies 2016-02-11 19:13:31 +01:00
Labels Bug 14781: Creation of barcode types 2of5 not functional 2015-11-29 21:25:45 +01:00
Linker Bug 9978: Replace license header with the correct license (GPLv3+) 2015-04-20 09:59:38 -03:00
Members Bug 14621: Messaging preferences table needs to be sorted 2015-09-23 04:57:01 +12:00
OAI Bug 9978: Replace license header with the correct license (GPLv3+) 2015-04-20 09:59:38 -03:00
Output Bug 9978: Replace license header with the correct license (GPLv3+) 2015-04-20 09:59:38 -03:00
Patroncards Bug 9978: Replace license header with the correct license (GPLv3+) 2015-04-20 09:59:38 -03:00
Reports Bug 5338: Serials Report 2015-05-19 10:27:27 -03:00
SIP Bug 15215: Remove warning due to misuse of UNIVERSAL 2015-11-29 22:15:40 +01:00
Search Bug 9978: Replace license header with the correct license (GPLv3+) 2015-04-20 09:59:38 -03:00
Serials Bug 7688: (follow-up) update license statements 2013-10-30 02:56:32 +00:00
Utils Bug 15252 - Patron search on start with does not work with several terms 2015-12-31 18:31:28 +01:00
VirtualShelves Bug 13986: Printing a list only prints the results of the page you are viewing 2015-05-15 16:01:33 -03:00
Accounts.pm Bug 9978: Replace license header with the correct license (GPLv3+) 2015-04-20 09:59:38 -03:00
Acquisition.pm Bug 15036: Do not overwrite complete status in basket ops 2015-11-29 21:47:20 +01:00
Auth.pm Bug 14034: Fix logout on refresh for shibboleth 2016-01-04 15:50:19 +01:00
Auth_cas_servers.yaml.orig Bug 5630 CAS improvements 2011-10-13 10:49:49 +13:00
Auth_with_cas.pm Bug 14121: Silence warnings t/db_dependent/Auth_with_cas.t 2015-07-22 09:54:34 +12:00
Auth_with_ldap.pm Bug 9978: Replace license header with the correct license (GPLv3+) 2015-04-20 09:59:38 -03:00
Auth_with_shibboleth.pm Bug 5010: Fix OPACBaseURL to include protocol 2015-06-07 19:47:49 +12:00
AuthoritiesMarc.pm Bug 15130: useless unitialization warnings when updating authorities 2015-11-29 21:30:31 +01:00
BackgroundJob.pm Bug 13606 Clear job data in session when the job is completed 2015-04-23 13:18:48 -03:00
Barcodes.pm Bug 9978: Replace license header with the correct license (GPLv3+) 2015-04-20 09:59:38 -03:00
Biblio.pm Bug 15572: TransformHtmlToMarc - rewrite the loop 2016-01-25 16:49:24 +01:00
Bookseller.pm Bug 9978: Replace license header with the correct license (GPLv3+) 2015-04-20 09:59:38 -03:00
Boolean.pm Bug 9978: Replace license header with the correct license (GPLv3+) 2015-04-20 09:59:38 -03:00
Branch.pm Bug 9978: (followup) Replace license header with the correct license (GPLv3+) 2015-04-20 09:59:43 -03:00
Breeding.pm Bug 13987: Fix server name in z39.50 authority search results 2015-04-22 14:39:00 -03:00
Budgets.pm Bug 14388: Funds should be sorted by budget_code 2015-11-29 21:39:59 +01:00
Calendar.pm Bug 9978: (followup) Replace license header with the correct license (GPLv3+) 2015-04-20 09:59:43 -03:00
Category.pm Bug 9978: Replace license header with the correct license (GPLv3+) 2015-04-20 09:59:38 -03:00
Charset.pm Bug 14078: (followup) converting from ISO5426 is not complete 2015-11-29 22:01:33 +01:00
Circulation.pm Bug 6756: Fix bad behaviors if AnonymousPatron is not defined 2015-09-23 05:41:28 +12:00
ClassSortRoutine.pm Bug 9978: Replace license header with the correct license (GPLv3+) 2015-04-20 09:59:38 -03:00
ClassSource.pm Bug 9978: Replace license header with the correct license (GPLv3+) 2015-04-20 09:59:38 -03:00
Context.pm Bug 14425: Typo in C4::Context IsSuperLibrarian perldoc 2015-06-29 22:00:26 +12:00
Contract.pm Bug 9978: Replace license header with the correct license (GPLv3+) 2015-04-20 09:59:38 -03:00
CourseReserves.pm Bug 15530 - Editing a course item via a disabled course disables it even if it is on other enabled courses 2016-02-11 19:07:20 +01:00
Creators.pm Bug 9978: Replace license header with the correct license (GPLv3+) 2015-04-20 09:59:38 -03:00
Csv.pm Bug 9978: Replace license header with the correct license (GPLv3+) 2015-04-20 09:59:38 -03:00
Dates.pm Bug 9978: Replace license header with the correct license (GPLv3+) 2015-04-20 09:59:38 -03:00
Debug.pm Bug 9978: Replace license header with the correct license (GPLv3+) 2015-04-20 09:59:38 -03:00
HTML5Media.pm Bug 12885: Fix if url contains +*... and HTML5 Media is enabled 2015-09-22 13:36:56 +12:00
Heading.pm Bug 9978: Replace license header with the correct license (GPLv3+) 2015-04-20 09:59:38 -03:00
HoldsQueue.pm Bug 14142 - Holds queue viewer only displays first subtitle from marc keyword mappings 2015-06-07 20:24:08 +12:00
Images.pm Bug 9978: Replace license header with the correct license (GPLv3+) 2015-04-20 09:59:38 -03:00
ImportBatch.pm Bug 12412: Add ability for plugins to convert arbitrary files to MARC from record staging tool 2015-05-04 15:33:51 -03:00
ImportExportFramework.pm Bug 9978: Replace license header with the correct license (GPLv3+) 2015-04-20 09:59:38 -03:00
Input.pm Bug 9978: Replace license header with the correct license (GPLv3+) 2015-04-20 09:59:38 -03:00
InstallAuth.pm Bug 9978: Replace license header with the correct license (GPLv3+) 2015-04-20 09:59:38 -03:00
Installer.pm Bug 13758: Move the Koha version from kohaversion.pl 2015-05-07 11:39:04 -03:00
ItemCirculationAlertPreference.pm Bug 9978: Replace license header with the correct license (GPLv3+) 2015-04-20 09:59:38 -03:00
ItemType.pm Bug 9978: Replace license header with the correct license (GPLv3+) 2015-04-20 09:59:38 -03:00
Items.pm Bug 15027: Correct Type in C4::Items perldoc 2015-10-24 22:31:20 +13:00
Koha.pm Bug 15209 Validate passed MARC::Record objs in C4::Koha 2016-02-11 19:33:50 +01:00
Labels.pm Bug 8315 - remove use C4::* version 2012-07-13 14:17:20 +02:00
Languages.pm Bug 12616: Locale in subscriptions not preselecting correctly 2015-07-10 09:18:31 +12:00
Letters.pm Bug 15429 Followup to avoid test failing 2015-12-31 19:25:10 +01:00
Linker.pm Bug 9978: Replace license header with the correct license (GPLv3+) 2015-04-20 09:59:38 -03:00
Log.pm Bug 13889: (QA followup) Supress warning, set object column to undef instead of 0 2015-05-04 11:12:49 -03:00
MarcModificationTemplates.pm Bug 11413: Fix field_numbers 2014-11-14 12:05:47 -03:00
Matcher.pm Bug 9978: Replace license header with the correct license (GPLv3+) 2015-04-20 09:59:38 -03:00
Members.pm Bug 15344: Remove some other calls of GetMemberDetails from pl scripts 2015-12-31 18:13:01 +01:00
Message.pm Bug 9978: Replace license header with the correct license (GPLv3+) 2015-04-20 09:59:38 -03:00
NewsChannels.pm Bug 12507 - News does not always display in staff or OPAC 2014-08-24 12:37:06 -03:00
Output.pm Bug 9978: Replace license header with the correct license (GPLv3+) 2015-04-20 09:59:38 -03:00
Overdues.pm Bug 14538: editing perl doc for CalcFine 2016-01-25 17:10:38 +01:00
Patroncards.pm Bug 8315 - remove use C4::* version 2012-07-13 14:17:20 +02:00
Print.pm Bug 9978: Replace license header with the correct license (GPLv3+) 2015-04-20 09:59:38 -03:00
Ratings.pm Bug 13998: Reintroduce use of Koha::Database for C4::Ratings 2015-04-20 10:24:13 -03:00
Record.pm Bug 12404: Allow equal sign '=' in the TT directive 2015-04-27 10:43:23 -03:00
Reports.pm Bug 9978: Replace license header with the correct license (GPLv3+) 2015-04-20 09:59:38 -03:00
Reserves.pm Bug 14640: 'Cancel Hold' check box on check-out confirmation does not cancel the hold when item is checked out. 2015-09-23 05:59:00 +12:00
Review.pm Bug 13969: Replace calls to $sth->fetchrow* with a call to $dbh->selectrow* and Cleaning files 2015-05-14 11:11:41 -03:00
Ris.pm Bug 14971: fix RIS export 2015-12-14 18:56:15 +01:00
RotatingCollections.pm Bug 15066: Make transfer rotating collection works under Plack 2015-11-29 21:20:44 +01:00
SMS.pm Bug 14421: Corrected example in SMS.pm to working version with hashref. 2015-06-30 08:34:08 +12:00
Scheduler.pm Bug 9978: Replace license header with the correct license (GPLv3+) 2015-04-20 09:59:38 -03:00
Scrubber.pm Bug 9978: Replace license header with the correct license (GPLv3+) 2015-04-20 09:59:38 -03:00
Search.pm Bug 13022 [QA Followup] - Allow the pref to be unset for unlimited item status checks 2016-01-04 15:58:20 +01:00
Serials.pm Bug 13423: Remove unused serials-recieve 2015-05-14 11:48:17 -03:00
Service.pm Bug 9978: Replace license header with the correct license (GPLv3+) 2015-04-20 09:59:38 -03:00
ShelfBrowser.pm Bug 9978: Replace license header with the correct license (GPLv3+) 2015-04-20 09:59:38 -03:00
SocialData.pm Bug 9978: (followup) Replace license header with the correct license (GPLv3+) 2015-04-20 09:59:43 -03:00
Stats.pm Bug 9978: Replace license header with the correct license (GPLv3+) 2015-04-20 09:59:38 -03:00
Suggestions.pm Bug 13156 Display borrower's cardnumber who did a suggestion in suggestion.pl 2015-04-22 12:09:47 -03:00
TTParser.pm Bug 9978: Replace license header with the correct license (GPLv3+) 2015-04-20 09:59:38 -03:00
Tags.pm Bug 9978: Replace license header with the correct license (GPLv3+) 2015-04-20 09:59:38 -03:00
Templates.pm Bug 9978: (followup) Replace license header with the correct license (GPLv3+) 2015-04-20 09:59:43 -03:00
TmplToken.pm Bug 6679: (follow-up) fix 9 perlcritic violations in C4/TmplTokenType.pm 2016-02-11 18:56:39 +01:00
TmplTokenType.pm Bug 6679: (follow-up) fix 9 perlcritic violations in C4/TmplTokenType.pm 2016-02-11 18:56:39 +01:00
UploadedFile.pm Bug 9978: Replace license header with the correct license (GPLv3+) 2015-04-20 09:59:38 -03:00
UsageStats.pm Bug 15101: Correct typo AllowPkiAuth vs AllowPKIAuth 2015-12-31 17:51:13 +01:00
VirtualShelves.pm Bug 13421: (QA followup) Change creation_time to created_on 2015-05-04 12:31:59 -03:00
XISBN.pm Bug 9978: Replace license header with the correct license (GPLv3+) 2015-04-20 09:59:38 -03:00
XSLT.pm Bug 8992: XSLT changes 2015-04-28 15:47:39 -03:00