diff options
| author | Ivan Kohler <ivan@freeside.biz> | 2012-05-10 20:30:18 -0700 |
|---|---|---|
| committer | Ivan Kohler <ivan@freeside.biz> | 2012-05-10 20:30:18 -0700 |
| commit | 46571761a938080713ef03e1b61a5138f05c606e (patch) | |
| tree | 0478dbe0785bb20b09cf8006fa1f297391549763 /FS | |
| parent | d6c36f251779288c9147275c5a6d1d1ddf795b8f (diff) | |
fix uncancellation w/services that have been re-provisioned, RT#17518
Diffstat (limited to 'FS')
| -rw-r--r-- | FS/FS/cust_pkg.pm | 11 |
1 files changed, 10 insertions, 1 deletions
diff --git a/FS/FS/cust_pkg.pm b/FS/FS/cust_pkg.pm index 64736ba50..39a4d5c7f 100644 --- a/FS/FS/cust_pkg.pm +++ b/FS/FS/cust_pkg.pm @@ -976,7 +976,16 @@ sub uncancel { my $svc_error = $svc_x->insert; if ( $svc_error && $options{svc_fatal} ) { $dbh->rollback if $oldAutoCommit; - return $error; + return $svc_error; + } else { + my $cust_svc = qsearchs('cust_svc', { 'svcnum' => $svc_x->svcnum }); + if ( $cust_svc ) { + my $cs_error = $cust_svc->delete; + if ( $cs_error ) { + $dbh->rollback if $oldAutoCommit; + return $cs_error; + } + } } push @svc_errors, $svc_error if $svc_error; } |
