diff options
| author | Andreas Brachold <vdr07@deltab.de> | 2008-05-14 21:08:28 +0000 |
|---|---|---|
| committer | Andreas Brachold <vdr07@deltab.de> | 2008-05-14 21:08:28 +0000 |
| commit | d68d98fa943d0eba896e5d216c809b5818ec4fb4 (patch) | |
| tree | 6f324ada83ef9c5fb0433b7f6381f55780940e0d /bin | |
| parent | 45a83ae70347e03cec97821a8bc55c3d04574d05 (diff) | |
| download | xxv-d68d98fa943d0eba896e5d216c809b5818ec4fb4.tar.gz xxv-d68d98fa943d0eba896e5d216c809b5818ec4fb4.tar.bz2 | |
* Losing mysql connection if process fork
Diffstat (limited to 'bin')
| -rwxr-xr-x | bin/xxvd | 28 |
1 files changed, 13 insertions, 15 deletions
@@ -328,27 +328,25 @@ sub getDbh { my $dbh = DBI->connect($dsn, $usr, $pwd,{ PrintError => 1, AutoCommit => 1, + mysql_enable_utf8 => ($charset =~ m/UTF-8/ ? 1 : 0), + mysql_auto_reconnect => 1 }); if($dbh) { debug sprintf('Connect to database: %s successful.', $dsn); - if ($charset) { - my $NAMES = { - 'UTF-8' => 'utf8', - 'ISO-8859-1' => 'latin1', - 'ISO-8859-2' => 'latin2', - 'ISO-8859-5' => 'latin5', - 'ISO-8859-7' => 'latin7', - 'ISO-8859-15' => 'latin1', - }; - my $n = $NAMES->{$charset} || 'latin1'; - if (!($dbh->do("set character set '" . $n . "'"))) { - panic sprintf("Could not set charset: %s :", $n, $DBI::errstr); - } - #$dbh->{'mysql_enable_utf8'} = 1 if($n eq 'utf8'); + my $NAMES = { + 'UTF-8' => 'utf8', + 'ISO-8859-1' => 'latin1', + 'ISO-8859-2' => 'latin2', + 'ISO-8859-5' => 'latin5', + 'ISO-8859-7' => 'latin7', + 'ISO-8859-15' => 'latin1', + }; + my $n = $NAMES->{$charset} || 'latin1'; + if (!($dbh->do("set character set '" . $n . "'"))) { + panic sprintf("Could not set charset: %s :", $n, $DBI::errstr); } - $dbh->{'mysql_auto_reconnect'} = 1; } else { panic sprintf("Could not connect to database: %s :", $dsn, $DBI::errstr); &quit(1); |
