bug 4508: fix crash when editing patron attributes or message prefs
authorGalen Charlton <gmcharlt@gmail.com>
Wed, 26 May 2010 14:51:09 +0000 (10:51 -0400)
committerGalen Charlton <gmcharlt@gmail.com>
Wed, 26 May 2010 14:52:44 +0000 (10:52 -0400)
When editing patron attributes or messaging preferences on the
patron editor, Koha would crash with the following error:

Software error:
Can't use an undefined value as an ARRAY reference at
/home/koha/kohaclone/C4/SQLHelper.pm line 186.

This would occur only when editing the specific attribute
or message preferences section, not when editing the entire
patron record.

Signed-off-by: Galen Charlton <gmcharlt@gmail.com>
members/memberentry.pl

index c158285..5cb4d72 100755 (executable)
@@ -335,7 +335,10 @@ if ((!$nok) and $nodouble and ($op eq 'insert' or $op eq 'save')){
                        delete $newdata{'password'};
                        delete $newdata{'userid'};
                }
-               &ModMember(%newdata);
+               &ModMember(%newdata) unless scalar(keys %newdata) <= 1; # bug 4508 - avoid crash if we're not
+                                                                # updating any columns in the borrowers table,
+                                                                # which can happen if we're only editing the
+                                                                # patron attributes or messaging preferences sections
         if (C4::Context->preference('ExtendedPatronAttributes') and $input->param('setting_extended_patron_attributes')) {
             C4::Members::Attributes::SetBorrowerAttributes($borrowernumber, $extended_patron_attributes);
         }