PKG_NAME:=coreutils
PKG_VERSION:=9.9
-PKG_RELEASE:=1
+PKG_RELEASE:=2
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.xz
PKG_SOURCE_URL:=@GNU/coreutils
--- /dev/null
+From bd528f923482223649aa84be7d131e69356149da Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?P=C3=A1draig=20Brady?= <P@draigBrady.com>
+Date: Sun, 4 Jan 2026 12:45:46 +0000
+Subject: [PATCH] copy: fix possible infinite loop with SEEK_HOLE
+
+Commit v9.8-95-g4c0cf3864 intended to initialize
+ext_start to src_pos, as was described at:
+https://lists.gnu.org/r/coreutils/2025-11/msg00035.html
+However ipos was inadvertently used, which is only
+valid the first time through the loop.
+
+* src/copy-file-data.c (lseek_copy): Use scan_inference->hole_start
+only with the initial offset passed to lseek_copy().
+Reported at https://github.com/coreutils/coreutils/issues/159
+
+--- a/src/copy-file-data.c
++++ b/src/copy-file-data.c
+@@ -338,7 +338,7 @@ lseek_copy (int src_fd, int dest_fd, cha
+ for (off_t ext_start = scan_inference->ext_start;
+ 0 <= ext_start && ext_start < max_ipos; )
+ {
+- off_t ext_end = (ext_start == ipos
++ off_t ext_end = (ext_start == src_pos
+ ? scan_inference->hole_start
+ : lseek (src_fd, ext_start, SEEK_HOLE));
+ if (0 <= ext_end)
+++ /dev/null
---- a/Makefile.am
-+++ b/Makefile.am
-@@ -17,7 +17,7 @@
-
- ALL_RECURSIVE_TARGETS =
-
--SUBDIRS = po . gnulib-tests
-+SUBDIRS = po
-
- EXTRA_DIST = \
- .mailmap \
-@@ -209,6 +209,3 @@ AM_CPPFLAGS = -Ilib -I$(top_srcdir)/lib
- include $(top_srcdir)/gl/local.mk
- include $(top_srcdir)/lib/local.mk
- include $(top_srcdir)/src/local.mk
--include $(top_srcdir)/doc/local.mk
--include $(top_srcdir)/man/local.mk
--include $(top_srcdir)/tests/local.mk
---- a/Makefile.in
-+++ b/Makefile.in
-@@ -4701,11 +4701,7 @@ RECURSIVE_TARGETS = all-recursive check-
- install-ps-recursive install-recursive installcheck-recursive \
- installdirs-recursive pdf-recursive ps-recursive \
- tags-recursive uninstall-recursive
--am__can_run_installinfo = \
-- case $$AM_UPDATE_INFO_DIR in \
-- n|no|NO) false;; \
-- *) (install-info --version) >/dev/null 2>&1;; \
-- esac
-+am__can_run_installinfo = false
- am__vpath_adj_setup = srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`;
- am__vpath_adj = case $$p in \
- $(srcdir)/*) f=`echo "$$p" | sed "s|^$$srcdirstrip/||"`;; \
-@@ -4960,11 +4956,10 @@ am__DIST_COMMON = $(doc_coreutils_TEXINF
- $(top_srcdir)/build-aux/missing \
- $(top_srcdir)/build-aux/test-driver \
- $(top_srcdir)/build-aux/texinfo.tex \
-- $(top_srcdir)/build-aux/ylwrap $(top_srcdir)/doc/local.mk \
-+ $(top_srcdir)/build-aux/ylwrap \
- $(top_srcdir)/gl/local.mk $(top_srcdir)/lib/alloca.c \
-- $(top_srcdir)/lib/config.hin $(top_srcdir)/lib/local.mk \
-- $(top_srcdir)/man/local.mk $(top_srcdir)/src/local.mk \
-- $(top_srcdir)/src/single-binary.mk \
-+ $(top_srcdir)/lib/local.mk \
-+ $(top_srcdir)/src/local.mk \
- $(top_srcdir)/tests/local.mk ABOUT-NLS AUTHORS COPYING \
- ChangeLog INSTALL NEWS README THANKS TODO build-aux/compile \
- build-aux/config.guess build-aux/config.rpath \
-@@ -5085,7 +5080,7 @@ ERRNO_H = @ERRNO_H@
- ETAGS = @ETAGS@
- EUIDACCESS_LIBGEN = @EUIDACCESS_LIBGEN@
- EXEEXT = @EXEEXT@
--EXTRA_MANS = @EXTRA_MANS@
-+EXTRA_MANS =
- FDATASYNC_LIB = @FDATASYNC_LIB@
- FILE_HAS_ACL_LIB = @FILE_HAS_ACL_LIB@
- FLOAT_H = @FLOAT_H@
-@@ -7185,7 +7180,7 @@ localedir_c_make = @localedir_c_make@
- localstatedir = @localstatedir@
- localstatedir_c = @localstatedir_c@
- localstatedir_c_make = @localstatedir_c_make@
--man1_MANS = @man1_MANS@
-+man1_MANS =
- mandir = @mandir@
- mandir_c = @mandir_c@
- mandir_c_make = @mandir_c_make@
-@@ -7234,7 +7229,7 @@ top_build_prefix = @top_build_prefix@
- top_builddir = @top_builddir@
- top_srcdir = @top_srcdir@
- ALL_RECURSIVE_TARGETS = distcheck-hook check-root
--SUBDIRS = po . gnulib-tests
-+SUBDIRS = po
- EXTRA_DIST = .mailmap .prev-version .version .vg-suppressions \
- README-install THANKS.in THANKS-to-translators THANKStt.in \
- bootstrap bootstrap.conf build-aux/gen-lists-of-programs.sh \
-@@ -9633,7 +9628,7 @@ all: $(BUILT_SOURCES)
- .SUFFIXES: .1 .c .dvi .log .o .obj .pl .pl$(EXEEXT) .ps .sh .sh$(EXEEXT) .trs .x .xpl .xpl$(EXEEXT) .y
- am--refresh: Makefile
- @:
--$(srcdir)/Makefile.in: $(srcdir)/Makefile.am $(top_srcdir)/gl/local.mk $(top_srcdir)/lib/local.mk $(srcdir)/lib/gnulib.mk $(top_srcdir)/src/local.mk $(srcdir)/src/cu-progs.mk $(top_srcdir)/src/single-binary.mk $(top_srcdir)/doc/local.mk $(top_srcdir)/man/local.mk $(top_srcdir)/tests/local.mk $(am__configure_deps)
-+$(srcdir)/Makefile.in: $(srcdir)/Makefile.am $(top_srcdir)/gl/local.mk $(top_srcdir)/lib/local.mk $(srcdir)/lib/gnulib.mk $(top_srcdir)/src/local.mk $(srcdir)/src/cu-progs.mk $(top_srcdir)/src/single-binary.mk $(am__configure_deps)
- @for dep in $?; do \
- case '$(am__configure_deps)' in \
- *$$dep*) \
-@@ -9655,7 +9650,7 @@ Makefile: $(srcdir)/Makefile.in $(top_bu
- echo ' cd $(top_builddir) && $(SHELL) ./config.status $@ $(am__maybe_remake_depfiles)'; \
- cd $(top_builddir) && $(SHELL) ./config.status $@ $(am__maybe_remake_depfiles);; \
- esac;
--$(top_srcdir)/gl/local.mk $(top_srcdir)/lib/local.mk $(srcdir)/lib/gnulib.mk $(top_srcdir)/src/local.mk $(srcdir)/src/cu-progs.mk $(top_srcdir)/src/single-binary.mk $(top_srcdir)/doc/local.mk $(top_srcdir)/man/local.mk $(top_srcdir)/tests/local.mk $(am__empty):
-+$(top_srcdir)/gl/local.mk $(top_srcdir)/lib/local.mk $(srcdir)/lib/gnulib.mk $(top_srcdir)/src/local.mk $(srcdir)/src/cu-progs.mk $(top_srcdir)/src/single-binary.mk $(am__empty):
-
- $(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES)
- $(SHELL) ./config.status --recheck
--- /dev/null
+--- a/Makefile.am
++++ b/Makefile.am
+@@ -17,7 +17,7 @@
+
+ ALL_RECURSIVE_TARGETS =
+
+-SUBDIRS = po . gnulib-tests
++SUBDIRS = po
+
+ EXTRA_DIST = \
+ .mailmap \
+@@ -209,6 +209,3 @@ AM_CPPFLAGS = -Ilib -I$(top_srcdir)/lib
+ include $(top_srcdir)/gl/local.mk
+ include $(top_srcdir)/lib/local.mk
+ include $(top_srcdir)/src/local.mk
+-include $(top_srcdir)/doc/local.mk
+-include $(top_srcdir)/man/local.mk
+-include $(top_srcdir)/tests/local.mk
+--- a/Makefile.in
++++ b/Makefile.in
+@@ -4701,11 +4701,7 @@ RECURSIVE_TARGETS = all-recursive check-
+ install-ps-recursive install-recursive installcheck-recursive \
+ installdirs-recursive pdf-recursive ps-recursive \
+ tags-recursive uninstall-recursive
+-am__can_run_installinfo = \
+- case $$AM_UPDATE_INFO_DIR in \
+- n|no|NO) false;; \
+- *) (install-info --version) >/dev/null 2>&1;; \
+- esac
++am__can_run_installinfo = false
+ am__vpath_adj_setup = srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`;
+ am__vpath_adj = case $$p in \
+ $(srcdir)/*) f=`echo "$$p" | sed "s|^$$srcdirstrip/||"`;; \
+@@ -4960,11 +4956,10 @@ am__DIST_COMMON = $(doc_coreutils_TEXINF
+ $(top_srcdir)/build-aux/missing \
+ $(top_srcdir)/build-aux/test-driver \
+ $(top_srcdir)/build-aux/texinfo.tex \
+- $(top_srcdir)/build-aux/ylwrap $(top_srcdir)/doc/local.mk \
++ $(top_srcdir)/build-aux/ylwrap \
+ $(top_srcdir)/gl/local.mk $(top_srcdir)/lib/alloca.c \
+- $(top_srcdir)/lib/config.hin $(top_srcdir)/lib/local.mk \
+- $(top_srcdir)/man/local.mk $(top_srcdir)/src/local.mk \
+- $(top_srcdir)/src/single-binary.mk \
++ $(top_srcdir)/lib/local.mk \
++ $(top_srcdir)/src/local.mk \
+ $(top_srcdir)/tests/local.mk ABOUT-NLS AUTHORS COPYING \
+ ChangeLog INSTALL NEWS README THANKS TODO build-aux/compile \
+ build-aux/config.guess build-aux/config.rpath \
+@@ -5085,7 +5080,7 @@ ERRNO_H = @ERRNO_H@
+ ETAGS = @ETAGS@
+ EUIDACCESS_LIBGEN = @EUIDACCESS_LIBGEN@
+ EXEEXT = @EXEEXT@
+-EXTRA_MANS = @EXTRA_MANS@
++EXTRA_MANS =
+ FDATASYNC_LIB = @FDATASYNC_LIB@
+ FILE_HAS_ACL_LIB = @FILE_HAS_ACL_LIB@
+ FLOAT_H = @FLOAT_H@
+@@ -7185,7 +7180,7 @@ localedir_c_make = @localedir_c_make@
+ localstatedir = @localstatedir@
+ localstatedir_c = @localstatedir_c@
+ localstatedir_c_make = @localstatedir_c_make@
+-man1_MANS = @man1_MANS@
++man1_MANS =
+ mandir = @mandir@
+ mandir_c = @mandir_c@
+ mandir_c_make = @mandir_c_make@
+@@ -7234,7 +7229,7 @@ top_build_prefix = @top_build_prefix@
+ top_builddir = @top_builddir@
+ top_srcdir = @top_srcdir@
+ ALL_RECURSIVE_TARGETS = distcheck-hook check-root
+-SUBDIRS = po . gnulib-tests
++SUBDIRS = po
+ EXTRA_DIST = .mailmap .prev-version .version .vg-suppressions \
+ README-install THANKS.in THANKS-to-translators THANKStt.in \
+ bootstrap bootstrap.conf build-aux/gen-lists-of-programs.sh \
+@@ -9633,7 +9628,7 @@ all: $(BUILT_SOURCES)
+ .SUFFIXES: .1 .c .dvi .log .o .obj .pl .pl$(EXEEXT) .ps .sh .sh$(EXEEXT) .trs .x .xpl .xpl$(EXEEXT) .y
+ am--refresh: Makefile
+ @:
+-$(srcdir)/Makefile.in: $(srcdir)/Makefile.am $(top_srcdir)/gl/local.mk $(top_srcdir)/lib/local.mk $(srcdir)/lib/gnulib.mk $(top_srcdir)/src/local.mk $(srcdir)/src/cu-progs.mk $(top_srcdir)/src/single-binary.mk $(top_srcdir)/doc/local.mk $(top_srcdir)/man/local.mk $(top_srcdir)/tests/local.mk $(am__configure_deps)
++$(srcdir)/Makefile.in: $(srcdir)/Makefile.am $(top_srcdir)/gl/local.mk $(top_srcdir)/lib/local.mk $(srcdir)/lib/gnulib.mk $(top_srcdir)/src/local.mk $(srcdir)/src/cu-progs.mk $(top_srcdir)/src/single-binary.mk $(am__configure_deps)
+ @for dep in $?; do \
+ case '$(am__configure_deps)' in \
+ *$$dep*) \
+@@ -9655,7 +9650,7 @@ Makefile: $(srcdir)/Makefile.in $(top_bu
+ echo ' cd $(top_builddir) && $(SHELL) ./config.status $@ $(am__maybe_remake_depfiles)'; \
+ cd $(top_builddir) && $(SHELL) ./config.status $@ $(am__maybe_remake_depfiles);; \
+ esac;
+-$(top_srcdir)/gl/local.mk $(top_srcdir)/lib/local.mk $(srcdir)/lib/gnulib.mk $(top_srcdir)/src/local.mk $(srcdir)/src/cu-progs.mk $(top_srcdir)/src/single-binary.mk $(top_srcdir)/doc/local.mk $(top_srcdir)/man/local.mk $(top_srcdir)/tests/local.mk $(am__empty):
++$(top_srcdir)/gl/local.mk $(top_srcdir)/lib/local.mk $(srcdir)/lib/gnulib.mk $(top_srcdir)/src/local.mk $(srcdir)/src/cu-progs.mk $(top_srcdir)/src/single-binary.mk $(am__empty):
+
+ $(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES)
+ $(SHELL) ./config.status --recheck