diff options
Diffstat (limited to 'classes/logger')
-rwxr-xr-x | classes/logger/sql.php | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/classes/logger/sql.php b/classes/logger/sql.php index 73552c143..352d71324 100755 --- a/classes/logger/sql.php +++ b/classes/logger/sql.php @@ -12,6 +12,14 @@ class Logger_SQL { $owner_uid = $_SESSION["uid"] ? $_SESSION["uid"] : null; + if (DB_TYPE == "mysql") + $context = substr($context, 0, 65534); + + // passed error message may contain invalid unicode characters, failing to insert an error here + // would break the execution entirely by generating an actual fatal error instead of a E_WARNING etc + $errstr = UConverter::transcode($errstr, 'UTF-8', 'UTF-8'); + $context = UConverter::transcode($context, 'UTF-8', 'UTF-8'); + $sth = $this->pdo->prepare("INSERT INTO ttrss_error_log (errno, errstr, filename, lineno, context, owner_uid, created_at) VALUES (?, ?, ?, ?, ?, ?, NOW())"); |