From a6372bfafa12301c00d77f7b806810177ced0e15 Mon Sep 17 00:00:00 2001 From: =?utf8?q?Bernd=20Ble=C3=9Fmann?= Date: Fri, 16 Aug 2013 16:46:24 +0200 Subject: [PATCH] _check_multiplexed setzt error im Fehlerfall. --- SL/Helper/Csv.pm | 22 ++++++++++++++++++++-- 1 file changed, 20 insertions(+), 2 deletions(-) diff --git a/SL/Helper/Csv.pm b/SL/Helper/Csv.pm index 491c393b6..85f175889 100644 --- a/SL/Helper/Csv.pm +++ b/SL/Helper/Csv.pm @@ -111,13 +111,31 @@ sub _check_multiplexed { if (scalar @profile > 1) { # Each profile needs a class and a row_ident my $info_ok = all { defined $_->{class} && defined $_->{row_ident} } @profile; + $self->_push_error([ + 0, + "missing class or row_ident in one of the profiles for multiplexed data", + 0, + 0]) unless $info_ok; # If header is given, there need to be a header for each profile # and no empty headers. if ($info_ok && $self->header) { my @header = @{ $self->header }; - $info_ok = $info_ok && scalar @profile == scalar @header; - $info_ok = $info_ok && all { scalar @$_ > 0} @header; + my $t_ok = scalar @profile == scalar @header; + $self->_push_error([ + 0, + "number of headers and number of profiles must be the same for multiplexed data", + 0, + 0]) unless $t_ok; + $info_ok = $info_ok && $t_ok; + + $t_ok = all { scalar @$_ > 0} @header; + $self->_push_error([ + 0, + "no empty headers are allowed for multiplexed data", + 0, + 0]) unless $t_ok; + $info_ok = $info_ok && $t_ok; } $self->is_multiplexed($info_ok); return $info_ok; -- 2.20.1