From: Moritz Bunkus Date: Thu, 30 Dec 2010 15:44:56 +0000 (+0100) Subject: assign_attributes: nur leeren String und undef bei Zahlenspaletn auf NULL mappen... X-Git-Tag: release-2.6.2beta1~17^2~1^2~3 X-Git-Url: http://wagnertech.de/git?a=commitdiff_plain;h=321730c8b122eec74794faa919875a32338458e7;p=kivitendo-erp.git assign_attributes: nur leeren String und undef bei Zahlenspaletn auf NULL mappen, Wert 0 aber nicht --- diff --git a/SL/DB/Object.pm b/SL/DB/Object.pm index 52b9300a9..5e58ed958 100644 --- a/SL/DB/Object.pm +++ b/SL/DB/Object.pm @@ -61,9 +61,10 @@ sub _assign_attributes { while (my ($attribute, $value) = each %attributes) { my $type = lc($types{$attribute} || 'text'); - $value = $type eq 'boolean' ? ($value ? 't' : 'f') - : $text_column_types{$type} ? $value - : ($value || undef); + $value = $type eq 'boolean' ? ($value ? 't' : 'f') + : $text_column_types{$type} ? $value + : defined($value) && ($value eq '') ? undef + : $value; $self->$attribute($value); }