commit:     b25f2e9b34509633498ff8b61e00884b64e172c9
Author:     Sam James <sam <AT> gentoo <DOT> org>
AuthorDate: Mon Nov 25 23:27:06 2024 +0000
Commit:     Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Mon Nov 25 23:27:34 2024 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=b25f2e9b

sys-process/cronie: fix C23 compat

Closes: https://bugs.gentoo.org/880387
Signed-off-by: Sam James <sam <AT> gentoo.org>

 sys-process/cronie/cronie-1.7.2.ebuild          |  4 +++
 sys-process/cronie/files/cronie-1.7.2-c23.patch | 42 +++++++++++++++++++++++++
 2 files changed, 46 insertions(+)

diff --git a/sys-process/cronie/cronie-1.7.2.ebuild 
b/sys-process/cronie/cronie-1.7.2.ebuild
index a4d99c5828fd..fffb6482974d 100644
--- a/sys-process/cronie/cronie-1.7.2.ebuild
+++ b/sys-process/cronie/cronie-1.7.2.ebuild
@@ -33,6 +33,10 @@ RDEPEND="
        sys-apps/debianutils
 "
 
+PATCHES=(
+       "${FILESDIR}"/${P}-c23.patch
+)
+
 src_configure() {
        local myeconfargs=(
                $(use_with inotify)

diff --git a/sys-process/cronie/files/cronie-1.7.2-c23.patch 
b/sys-process/cronie/files/cronie-1.7.2-c23.patch
new file mode 100644
index 000000000000..a94f4bec5c4d
--- /dev/null
+++ b/sys-process/cronie/files/cronie-1.7.2-c23.patch
@@ -0,0 +1,42 @@
+https://bugs.gentoo.org/880387
+https://github.com/cronie-crond/cronie/issues/193
+https://github.com/cronie-crond/cronie/commit/09c630c654b2aeff06a90a412cce0a60ab4955a4
+
+From 09c630c654b2aeff06a90a412cce0a60ab4955a4 Mon Sep 17 00:00:00 2001
+From: Tomas Mraz <[email protected]>
+Date: Mon, 18 Nov 2024 21:02:30 +0100
+Subject: [PATCH] load_entry(): Make error_func prototype complete
+
+Fixes #193
+---
+ src/entry.c | 2 +-
+ src/funcs.h | 2 +-
+ 2 files changed, 2 insertions(+), 2 deletions(-)
+
+diff --git a/src/entry.c b/src/entry.c
+index 586eb9d..a2077e8 100644
+--- a/src/entry.c
++++ b/src/entry.c
+@@ -90,7 +90,7 @@ void free_entry(entry * e) {
+ /* return NULL if eof or syntax error occurs;
+  * otherwise return a pointer to a new entry.
+  */
+-entry *load_entry(FILE * file, void (*error_func) (), struct passwd *pw,
++entry *load_entry(FILE * file, void (*error_func) (const char *), struct 
passwd *pw,
+       char **envp) {
+       /* this function reads one crontab entry -- the next -- from a file.
+        * it skips any leading blank lines, ignores comments, and returns
+diff --git a/src/funcs.h b/src/funcs.h
+index 427e027..f28d634 100644
+--- a/src/funcs.h
++++ b/src/funcs.h
+@@ -89,7 +89,7 @@ char         *env_get(const char *, char **),
+ user          *load_user(int, struct passwd *, const char *, const char *, 
const char *),
+               *find_user(cron_db *, const char *, const char *);
+ 
+-entry         *load_entry(FILE *, void (*)(), struct passwd *, char **);
++entry         *load_entry(FILE *, void (*)(const char *), struct passwd *, 
char **);
+ 
+ FILE          *cron_popen(char *, const char *, struct passwd *, char **);
+ 
+

Reply via email to