diff options
author | Petr Vaněk <arkamar@gentoo.org> | 2024-10-02 19:36:00 +0200 |
---|---|---|
committer | Petr Vaněk <arkamar@gentoo.org> | 2024-10-02 19:43:51 +0200 |
commit | a420be1dffb7d144cda2161519165a47d1c22d45 (patch) | |
tree | c6a3bee7cfeae8dd3fc48726153ad0f42484ddac /mail-filter | |
parent | net-misc/httpie: remove unused patch (diff) | |
download | gentoo-a420be1dffb7d144cda2161519165a47d1c22d45.tar.gz gentoo-a420be1dffb7d144cda2161519165a47d1c22d45.tar.bz2 gentoo-a420be1dffb7d144cda2161519165a47d1c22d45.zip |
mail-filter/rspamd: fix build issue with lua5-{3,4}
Backport patch, which fixes a build issue with Lua 5.3 and 5.4.
Issue: https://github.com/rspamd/rspamd/issues/5163
Signed-off-by: Petr Vaněk <arkamar@gentoo.org>
Diffstat (limited to 'mail-filter')
-rw-r--r-- | mail-filter/rspamd/files/rspamd-3.10.0-libucl-type.patch | 36 | ||||
-rw-r--r-- | mail-filter/rspamd/rspamd-3.10.0-r1.ebuild (renamed from mail-filter/rspamd/rspamd-3.10.0.ebuild) | 3 |
2 files changed, 39 insertions, 0 deletions
diff --git a/mail-filter/rspamd/files/rspamd-3.10.0-libucl-type.patch b/mail-filter/rspamd/files/rspamd-3.10.0-libucl-type.patch new file mode 100644 index 000000000000..25d4c32d26ff --- /dev/null +++ b/mail-filter/rspamd/files/rspamd-3.10.0-libucl-type.patch @@ -0,0 +1,36 @@ +From 3041484f859f3d8cc2275c5189280c31ff3ffeda Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?Petr=20Van=C4=9Bk?= <arkamar@atlas.cz> +Date: Wed, 2 Oct 2024 15:01:07 +0200 +Subject: [PATCH] [Fix] Use correct type for keylen in lua_ucl_newindex + +The keylen variable used in lua_ucl_newindex function should use size_t +type instead of lua_Integer, because all functions that use keylen +expect it to be of size_t type. This mismatch leads to incompatible +pointer types, and modern versions of GCC fail to compile the code. + +Fixes: 9e87597ceb05 ("[Project] Allow manipulations with opaque UCL objects") +Issue: https://github.com/rspamd/rspamd/issues/5163 +PR: https://github.com/rspamd/rspamd/pull/5169 + +diff --git a/contrib/libucl/lua_ucl.c b/contrib/libucl/lua_ucl.c +index 19ac9cb127..473aefe0cf 100644 +--- a/contrib/libucl/lua_ucl.c ++++ b/contrib/libucl/lua_ucl.c +@@ -1426,7 +1426,7 @@ lua_ucl_newindex(lua_State *L) + + if (ucl_object_type(obj) == UCL_OBJECT) { + if (key_type == LUA_TSTRING) { +- lua_Integer keylen; ++ size_t keylen; + const char *key = lua_tolstring(L, 2, &keylen); + + ucl_object_t *value_obj = lua_ucl_object_get(L, 3); +@@ -1539,7 +1539,7 @@ lua_ucl_newindex(lua_State *L) + obj->value.av = NULL; + obj->type = UCL_OBJECT; + +- lua_Integer keylen; ++ size_t keylen; + const char *key = lua_tolstring(L, 2, &keylen); + + ucl_object_t *value_obj = lua_ucl_object_get(L, 3); diff --git a/mail-filter/rspamd/rspamd-3.10.0.ebuild b/mail-filter/rspamd/rspamd-3.10.0-r1.ebuild index 45df6738554b..8fb906ba42cb 100644 --- a/mail-filter/rspamd/rspamd-3.10.0.ebuild +++ b/mail-filter/rspamd/rspamd-3.10.0-r1.ebuild @@ -75,6 +75,9 @@ PATCHES=( # backward compatibility with <dev-libs/libfmt-11 "${FILESDIR}/${PN}-3.9.0-older-libfmt.patch" + + # see https://github.com/rspamd/rspamd/issues/5163 + "${FILESDIR}/${P}-libucl-type.patch" ) src_prepare() { |