Hello community,

here is the log from the commit of package dejagnu for openSUSE:Factory checked 
in at 2018-08-15 10:28:57
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/dejagnu (Old)
 and      /work/SRC/openSUSE:Factory/.dejagnu.new (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "dejagnu"

Wed Aug 15 10:28:57 2018 rev:27 rq:626666 version:1.6.1

Changes:
--------
--- /work/SRC/openSUSE:Factory/dejagnu/dejagnu.changes  2017-10-25 
17:43:36.770421433 +0200
+++ /work/SRC/openSUSE:Factory/.dejagnu.new/dejagnu.changes     2018-08-15 
10:29:04.887279145 +0200
@@ -1,0 +2,12 @@
+Tue Jul 31 09:55:04 UTC 2018 - sch...@suse.de
+
+- Adjust license
+
+-------------------------------------------------------------------
+Tue Jul 17 13:13:19 UTC 2018 - sch...@suse.de
+
+- close-wait-program.patch: Use separate kill command for each pid
+  (bsc#1100206)
+- Use %license.
+
+-------------------------------------------------------------------

New:
----
  close-wait-program.patch

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

Other differences:
------------------
++++++ dejagnu.spec ++++++
--- /var/tmp/diff_new_pack.yGQ53i/_old  2018-08-15 10:29:05.671280561 +0200
+++ /var/tmp/diff_new_pack.yGQ53i/_new  2018-08-15 10:29:05.671280561 +0200
@@ -1,7 +1,7 @@
 #
 # spec file for package dejagnu
 #
-# Copyright (c) 2017 SUSE LINUX GmbH, Nuernberg, Germany.
+# Copyright (c) 2018 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
@@ -20,13 +20,14 @@
 Version:        1.6.1
 Release:        0
 Summary:        Framework for Running Test Suites on Software Tools
-License:        GPL-2.0+
+License:        GPL-3.0-or-later
 Group:          Development/Tools/Building
 Url:            https://www.gnu.org/software/dejagnu/
 Source0:        https://ftp.gnu.org/gnu/%{name}/%{name}-%{version}.tar.gz
 Source1:        https://ftp.gnu.org/gnu/%{name}/%{name}-%{version}.tar.gz.sig
 Source2:        
http://savannah.gnu.org/project/memberlist-gpgkeys.php?group=dejagnu&download=1#/%{name}.keyring
 Source3:        site.exp
+Patch0:         close-wait-program.patch
 BuildRequires:  expect
 BuildRequires:  fdupes
 BuildRequires:  gcc-c++
@@ -65,6 +66,7 @@
 
 %prep
 %setup -q
+%patch0 -p1
 
 %build
 %configure
@@ -87,7 +89,8 @@
 
 %files
 %defattr(-, root, root)
-%doc ChangeLog COPYING NEWS README AUTHORS TODO
+%license COPYING
+%doc ChangeLog NEWS README AUTHORS TODO
 %dir %{_datadir}/dejagnu
 %dir %{_sysconfdir}/dejagnu
 %{_bindir}/runtest

++++++ close-wait-program.patch ++++++
2018-07-06  Richard Biener  <rguent...@suse.de>

        * lib/remote.exp (close_wait_program): Use separate kill command
        for each pid.

Index: dejagnu-1.6.1/lib/remote.exp
===================================================================
--- dejagnu-1.6.1.orig/lib/remote.exp
+++ dejagnu-1.6.1/lib/remote.exp
@@ -70,13 +70,16 @@ proc close_wait_program { program_id pid
        # Tcl has no kill primitive, so we have to execute an external
        # command in order to kill the process.
        verbose "doing kill, pid is $pid"
-       # Prepend "-" to generate the "process group ID" needed by
-       # kill.
-       set pgid "-$pid"
        # Send SIGINT to give the program a better chance to interrupt
        # whatever it might be doing and react to stdin closing.
        # eg, in case of GDB, this should get it back to the prompt.
-       exec sh -c "exec > /dev/null 2>&1 && (kill -2 $pgid || kill -2 $pid)"
+       # Do so separately for each PID in the list to avoid differences
+       # in return value behavior for kill between shells
+       foreach spid $pid {
+          # Prepend "-" to generate the "process group ID" needed by
+          # kill.
+         exec sh -c "exec > /dev/null 2>&1 && (kill -2 -$spid || kill -2 
$spid)"
+       }
 
        # If the program doesn't exit gracefully when stdin closes,
        # we'll need to kill it.  But only do this after 'wait'ing a
@@ -86,9 +89,15 @@ proc close_wait_program { program_id pid
        # PID reuse race.
        set secs 5
        set sh_cmd "exec > /dev/null 2>&1"
-       append sh_cmd " && sleep $secs && (kill -15 $pgid || kill -15 $pid)"
-       append sh_cmd " && sleep $secs && (kill -9 $pgid || kill -9 $pid)"
-       append sh_cmd " && sleep $secs"
+       append sh_cmd " && sleep $secs && ("
+       foreach spid $pid {
+         append sh_cmd "(kill -15 -$spid || kill -15 $spid);"
+       }
+       append sh_cmd ") && sleep $secs && ("
+       foreach spid $pid {
+         append sh_cmd "(kill -9 -$spid || kill -9 $spid);"
+       }
+       append sh_cmd ") && sleep $secs"
        set exec_pid [exec sh -c "$sh_cmd" &]
     }
     verbose "pid is $pid"



Reply via email to