From d556869321b2e73ce379ab5ef86ee3cb9eb6f2a2 Mon Sep 17 00:00:00 2001 From: Oliver Behnke Date: Fri, 7 Feb 2020 12:31:31 +0000 Subject: [PATCH] Bug 16719: Pass through undef rather than empty string in LDAP mapping Nullable DB fields should be passed null in cases where ldap fields are empty and not replaced with empty strings. Signed-off-by: Martin Renvoize --- C4/Auth_with_ldap.pm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/C4/Auth_with_ldap.pm b/C4/Auth_with_ldap.pm index e861800c76..3981c9b8d4 100644 --- a/C4/Auth_with_ldap.pm +++ b/C4/Auth_with_ldap.pm @@ -274,9 +274,9 @@ sub ldap_entry_2_hash { my $data = $memberhash{ lc($mapping{$key}->{is}) }; # Net::LDAP returns all names in lowercase $debug and printf STDERR "mapping %20s ==> %-20s (%s)\n", $key, $mapping{$key}->{is}, $data; unless (defined $data) { - $data = $mapping{$key}->{content} || ''; # default or failsafe '' + $data = $mapping{$key}->{content} || undef; } - $borrower{$key} = ($data ne '') ? $data : ' ' ; + $borrower{$key} = $data; } $borrower{initials} = $memberhash{initials} || ( substr($borrower{'firstname'},0,1) -- 2.20.1