fix article tags/labels not assigning properly on mysql because of the 4byte unicode workaround
This commit is contained in:
parent
6affdc59a3
commit
35c3735494
|
@ -1483,9 +1483,9 @@
|
|||
|
||||
$tag = preg_replace('/[\'\"\+\>\<]/', "", $tag);
|
||||
|
||||
// $tag = str_replace('"', "", $tag);
|
||||
// $tag = str_replace("+", " ", $tag);
|
||||
$tag = str_replace("technorati tag: ", "", $tag);
|
||||
if (DB_TYPE == "mysql") {
|
||||
$tag = preg_replace('/[\x{10000}-\x{10FFFF}]/u', "\xEF\xBF\xBD", $tag);
|
||||
}
|
||||
|
||||
return $tag;
|
||||
}
|
||||
|
|
|
@ -761,9 +761,13 @@
|
|||
// Workaround: 4-byte unicode requires utf8mb4 in MySQL. See https://tt-rss.org/forum/viewtopic.php?f=1&t=3377&p=20077#p20077
|
||||
if (DB_TYPE == "mysql") {
|
||||
foreach ($article as $k => $v) {
|
||||
|
||||
// i guess we'll have to take the risk of 4byte unicode labels & tags here
|
||||
if (!is_array($article[$k])) {
|
||||
$article[$k] = preg_replace('/[\x{10000}-\x{10FFFF}]/u', "\xEF\xBF\xBD", $v);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
$entry_tags = $article["tags"];
|
||||
$entry_guid = db_escape_string($entry_guid);
|
||||
|
|
Loading…
Reference in New Issue