summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'dev-db/mysql-connector-c')
-rw-r--r--dev-db/mysql-connector-c/files/mysql-connector-c-8.0.21-survive-malformed-charset-files.patch18
-rw-r--r--dev-db/mysql-connector-c/mysql-connector-c-8.0.21-r1.ebuild (renamed from dev-db/mysql-connector-c/mysql-connector-c-8.0.21.ebuild)1
2 files changed, 19 insertions, 0 deletions
diff --git a/dev-db/mysql-connector-c/files/mysql-connector-c-8.0.21-survive-malformed-charset-files.patch b/dev-db/mysql-connector-c/files/mysql-connector-c-8.0.21-survive-malformed-charset-files.patch
new file mode 100644
index 000000000000..72799f009c89
--- /dev/null
+++ b/dev-db/mysql-connector-c/files/mysql-connector-c-8.0.21-survive-malformed-charset-files.patch
@@ -0,0 +1,18 @@
+Description: don't crash on malformed charset files
+Origin: https://bugs.launchpad.net/ubuntu/+source/mysql-8.0/+bug/1877504/comments/19
+Bug: https://bugs.launchpad.net/ubuntu/+source/mysql-8.0/+bug/1884809
+Bug: https://bugs.gentoo.org/737002
+Forwarded: workaround, not needed
+
+--- a/mysys/charset.cc
++++ b/mysys/charset.cc
+@@ -922,7 +922,7 @@ size_t escape_quotes_for_mysql(CHARSET_I
+
+ void charset_uninit() {
+ for (CHARSET_INFO *cs : all_charsets) {
+- if (cs && cs->coll->uninit) {
++ if (cs && cs->coll && cs->coll->uninit) {
+ cs->coll->uninit(cs);
+ }
+ }
+
diff --git a/dev-db/mysql-connector-c/mysql-connector-c-8.0.21.ebuild b/dev-db/mysql-connector-c/mysql-connector-c-8.0.21-r1.ebuild
index c6e4dad56ed7..2cd9add19642 100644
--- a/dev-db/mysql-connector-c/mysql-connector-c-8.0.21.ebuild
+++ b/dev-db/mysql-connector-c/mysql-connector-c-8.0.21-r1.ebuild
@@ -44,6 +44,7 @@ PATCHES=(
"${FILESDIR}"/${PN}-8.0.18-always-build-decompress-utilities.patch
"${FILESDIR}"/${PN}-8.0.19-do-not-install-comp_err.patch
"${FILESDIR}"/${PN}-8.0.21-libressl.patch
+ "${FILESDIR}"/${PN}-8.0.21-survive-malformed-charset-files.patch
)
src_prepare() {