diff --git a/meta-oe/recipes-support/joe/joe/0001-Fix-assign-to-stdin-use-freopen-instead-issue.patch b/meta-oe/recipes-support/joe/joe/0001-Fix-assign-to-stdin-use-freopen-instead-issue.patch new file mode 100644 index 0000000000..53c9edd6db --- /dev/null +++ b/meta-oe/recipes-support/joe/joe/0001-Fix-assign-to-stdin-use-freopen-instead-issue.patch @@ -0,0 +1,31 @@ +From 0be9f4f2b7c4202b183f65aa65ecfd32f565385d Mon Sep 17 00:00:00 2001 +From: Joe Allen +Date: Wed, 6 May 2026 09:34:34 -0400 +Subject: [PATCH] Fix assign to stdin, use freopen instead issue + +Upstream-Status: Backport [0be9f4f2b7c4202b183f65aa65ecfd32f565385d] +Signed-off-by: Max Krummenacher + +--- + joe/main.c | 5 ++++- + 1 file changed, 4 insertions(+), 1 deletion(-) + +diff --git a/joe/main.c b/joe/main.c +index bfbfb90711e8..61f0324ee094 100644 +--- a/joe/main.c ++++ b/joe/main.c +@@ -755,7 +755,10 @@ int main(int argc, char **real_argv, const char * const *envv) + /* Close stdin, so that if user kills the copying the program feeding stdin sees a SIGPIPE */ + /* It won't if there are any extra file descriptors open */ + fclose(stdin); +- stdin = fopen("/dev/tty", "rb"); ++ if (!freopen("/dev/tty", "rb", stdin)) ++ { ++ /* This should not fail */ ++ } + } + } + +-- +2.51.0 + diff --git a/meta-oe/recipes-support/joe/joe_4.8.bb b/meta-oe/recipes-support/joe/joe_4.8.bb index 77ffc14517..7b901e1e3b 100644 --- a/meta-oe/recipes-support/joe/joe_4.8.bb +++ b/meta-oe/recipes-support/joe/joe_4.8.bb @@ -4,7 +4,10 @@ HOMEPAGE = "http://joe-editor.sourceforge.net/" LICENSE = "GPL-2.0-only" LIC_FILES_CHKSUM = "file://COPYING;md5=b234ee4d69f5fce4486a80fdaf4a4263" -SRC_URI = "${SOURCEFORGE_MIRROR}/joe-editor/joe-${PV}.tar.gz" +SRC_URI = " \ + ${SOURCEFORGE_MIRROR}/joe-editor/joe-${PV}.tar.gz \ + file://0001-Fix-assign-to-stdin-use-freopen-instead-issue.patch \ +" PACKAGECONFIG ??= "curses" PACKAGECONFIG[curses] = "--enable-curses,--disable-curses,ncurses,ncurses-terminfo"