diff options
| -rw-r--r-- | FS/FS/svc_acct.pm | 21 | 
1 files changed, 11 insertions, 10 deletions
| diff --git a/FS/FS/svc_acct.pm b/FS/FS/svc_acct.pm index 5b3264cbc..67c075a67 100644 --- a/FS/FS/svc_acct.pm +++ b/FS/FS/svc_acct.pm @@ -571,18 +571,19 @@ sub replace {      return $error if $error;    } -  #false laziness with sub insert (and cust_main) -  my $queue = new FS::queue { -    'svcnum' => $new->svcnum, -    'job'    => 'FS::svc_acct::append_fuzzyfiles' -  }; -  $error = $queue->insert($new->username); -  if ( $error ) { -    $dbh->rollback if $oldAutoCommit; -    return "queueing job (transaction rolled back): $error"; +  if ( $new->username ne $old->username ) { +    #false laziness with sub insert (and cust_main) +    my $queue = new FS::queue { +      'svcnum' => $new->svcnum, +      'job'    => 'FS::svc_acct::append_fuzzyfiles' +    }; +    $error = $queue->insert($new->username); +    if ( $error ) { +      $dbh->rollback if $oldAutoCommit; +      return "queueing job (transaction rolled back): $error"; +    }    } -    $dbh->commit or die $dbh->errstr if $oldAutoCommit;    ''; #no error  } | 
