diff --git a/scripts/irssi_logger.pl b/scripts/irssi_logger.pl index c6097aa6..2ca574d1 100644 --- a/scripts/irssi_logger.pl +++ b/scripts/irssi_logger.pl @@ -118,7 +118,13 @@ sub write_db { defined or $_ = "" for @vals; - $dbh->do($sql, undef, @vals) || Irssi::print("Can't log to DB! " . DBI::errstr); + $dbh->do($sql, undef, @vals); + if ($dbh->err) { + Irssi::print("Can't log to DB! " . DBI::errstr); + if (!$dbh->ping) { + $dbh->connect(); + } + } } }