summaryrefslogtreecommitdiff
path: root/classes/logger/sql.php
diff options
context:
space:
mode:
Diffstat (limited to 'classes/logger/sql.php')
-rwxr-xr-xclasses/logger/sql.php8
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())");