Hello community,

here is the log from the commit of package autogen for openSUSE:Factory checked 
in at 2019-03-27 16:14:35
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/autogen (Old)
 and      /work/SRC/openSUSE:Factory/.autogen.new.25356 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "autogen"

Wed Mar 27 16:14:35 2019 rev:48 rq:688388 version:5.18.16

Changes:
--------
--- /work/SRC/openSUSE:Factory/autogen/autogen.changes  2018-11-28 
11:08:36.467297423 +0100
+++ /work/SRC/openSUSE:Factory/.autogen.new.25356/autogen.changes       
2019-03-27 16:14:36.615618480 +0100
@@ -1,0 +2,6 @@
+Mon Mar 25 08:32:40 UTC 2019 - Martin Liška <mli...@suse.cz>
+
+- Add gcc9-fix-wrestrict.patch in order to fix
+  bsc#1125772.
+
+-------------------------------------------------------------------

New:
----
  gcc9-fix-wrestrict.patch

++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Other differences:
------------------
++++++ autogen.spec ++++++
--- /var/tmp/diff_new_pack.Q3n5E5/_old  2019-03-27 16:14:37.375618286 +0100
+++ /var/tmp/diff_new_pack.Q3n5E5/_new  2019-03-27 16:14:37.379618285 +0100
@@ -1,7 +1,7 @@
 #
 # spec file for package autogen
 #
-# Copyright (c) 2018 SUSE LINUX GmbH, Nuernberg, Germany.
+# Copyright (c) 2019 SUSE LINUX GmbH, Nuernberg, Germany.
 #
 # All modifications and additions to the file contributed by third parties
 # remain the property of their copyright owners, unless otherwise agreed
@@ -32,6 +32,8 @@
 Patch3:         installable-programs.patch
 # PATCH-FIX-UPSTREAM
 Patch4:         sprintf-overflow.patch
+# PATCH-FIX-UPSTREAM -- https://sourceforge.net/p/autogen/bugs/193/#5844
+Patch5:         gcc9-fix-wrestrict.patch
 BuildRequires:  fdupes
 BuildRequires:  guile-devel
 BuildRequires:  makeinfo
@@ -86,6 +88,7 @@
 %patch2 -p1
 %patch3 -p1
 %patch4 -p1
+%patch5 -p1
 
 %build
 %configure \

++++++ gcc9-fix-wrestrict.patch ++++++
diff --git a/compat/pathfind.c b/compat/pathfind.c
index 5c477ca..6a4eeb5 100644
--- a/compat/pathfind.c
+++ b/compat/pathfind.c
@@ -136,6 +136,18 @@ make_absolute( char const * string, char const * dot_path )
     return result;
 }
 
+/*
+ * Proccess strcpy for overlapping memory locations.
+ */
+static char*
+strcpy_overlapping ( char *d, const char *s)
+{
+  unsigned n = strlen ( s );
+  memmove ( d, s, n + 1 );
+  return d;
+}
+
+
 /*
  * Canonicalize PATH, and return a  new path.  The new path differs from
  * PATH in that:
@@ -182,7 +194,7 @@ canonicalize_pathname( char *path )
         if ((start + 1) != i && (start != 0 || i != 2))
 #endif /* apollo */
         {
-            strcpy( result + start + 1, result + i );
+            strcpy_overlapping( result + start + 1, result + i );
             i = start + 1;
         }
 
@@ -201,7 +213,7 @@ canonicalize_pathname( char *path )
         if (result[i] == '.') {
             /* Handle `./'. */
             if (result[i + 1] == '/') {
-                strcpy( result + i, result + i + 1 );
+                strcpy_overlapping( result + i, result + i + 1 );
                 i = (start < 0) ? 0 : start;
                 continue;
             }
@@ -211,7 +223,7 @@ canonicalize_pathname( char *path )
                 (result[i + 2] == '/' || !result[i + 2])) {
                 while (--start > -1 && result[start] != '/')
                     ;
-                strcpy( result + start + 1, result + i + 2 );
+                strcpy_overlapping( result + start + 1, result + i + 2 );
                 i = (start < 0) ? 0 : start;
                 continue;
             }

Reply via email to