diff options
author | Ivan Kohler <ivan@freeside.biz> | 2014-05-30 14:04:09 -0700 |
---|---|---|
committer | Ivan Kohler <ivan@freeside.biz> | 2014-05-30 14:04:09 -0700 |
commit | dba6b1030a2694cbb69371c171e4ebb8c52db830 (patch) | |
tree | e3bf8f3b15c283be12558282900f8224d8e9eafd /FS/FS/TicketSystem.pm | |
parent | 5700d83bcd475134cff8afb28307174c09116924 (diff) |
MySQL support, RT#28895
Diffstat (limited to 'FS/FS/TicketSystem.pm')
-rw-r--r-- | FS/FS/TicketSystem.pm | 28 |
1 files changed, 18 insertions, 10 deletions
diff --git a/FS/FS/TicketSystem.pm b/FS/FS/TicketSystem.pm index 3c972d0..7339d74 100644 --- a/FS/FS/TicketSystem.pm +++ b/FS/FS/TicketSystem.pm @@ -331,16 +331,24 @@ sub _upgrade_data { } } - #Pg-specific - my $cve_2013_3373_sql = q( - UPDATE Tickets SET Subject = REPLACE(Subject,E'\n','') - ); - #need this for mysql - #UPDATE Tickets SET Subject = REPLACE(Subject,'\n',''); - - my $cve_2013_3373_sth = $dbh->prepare( $cve_2013_3373_sql) - or die $dbh->errstr; - $cve_2013_3373_sth->execute or die $cve_2013_3373_sth->errstr; + my $cve_2013_3373_sql = ''; + if ( driver_name =~ /^Pg/i ) { + $cve_2013_3373_sql = q( + UPDATE Tickets SET Subject = REPLACE(Subject,E'\n','') + ); + } elsif ( driver_name =~ /^mysql/i ) { + $cve_2013_3373_sql = q( + UPDATE Tickets SET Subject = REPLACE(Subject,'\n',''); + ); + } else { + warn "WARNING: Don't know how to update RT Ticket Subjects for your database driver for CVE-2013-3373"; + } + if ( $cve_2013_3373_sql ) { + my $cve_2013_3373_sth = $dbh->prepare($cve_2013_3373_sql) + or die $dbh->errstr; + $cve_2013_3373_sth->execute + or die $cve_2013_3373_sth->errstr; + } # Remove dangling customer links, if any my %target_pkey = ('cust_main' => 'custnum', 'cust_svc' => 'svcnum'); |