From 035c0cf4bb01805d2bacec7971597f03a6491af6 Mon Sep 17 00:00:00 2001 From: ivan Date: Thu, 10 Mar 2011 02:26:48 +0000 Subject: [PATCH] avoid runcentral's weird proble distributing tax exemptions since it doesn't apply to them anyway, RT#11476 --- FS/FS/cust_main/Billing.pm | 12 ++++++++++-- 1 file changed, 10 insertions(+), 2 deletions(-) diff --git a/FS/FS/cust_main/Billing.pm b/FS/FS/cust_main/Billing.pm index 44181eb7c..5efeb8268 100644 --- a/FS/FS/cust_main/Billing.pm +++ b/FS/FS/cust_main/Billing.pm @@ -726,8 +726,16 @@ sub calculate_taxes { foreach my $tax ( keys %$taxlisthash ) { foreach ( @{ $taxlisthash->{$tax} }[1 ... scalar(@{ $taxlisthash->{$tax} })] ) { next unless ref($_) eq 'FS::cust_bill_pkg'; - push @{ $packagemap{$_->pkgnum}->_cust_tax_exempt_pkg }, - splice( @{ $_->_cust_tax_exempt_pkg } ); + + my @cust_tax_exempt_pkg = splice( @{ $_->_cust_tax_exempt_pkg } ); + + next unless @cust_tax_exempt_pkg; #just avoiding the prob when irrelevant? + die "can't distribute tax exemptions: no line item for ". Dumper($_). + " in packagemap ". join(',', sort {$a<=>$b} keys %packagemap). "\n" + unless $packagemap{$_->pkgnum}; + + push @{ $packagemap{$_->pkgnum}->_cust_tax_exempt_pkg }, + @cust_tax_exempt_pkg; } } -- 2.11.0