about summary refs log tree commit diff
path: root/nptl
diff options
context:
space:
mode:
Diffstat (limited to 'nptl')
-rw-r--r--nptl/ChangeLog6
-rw-r--r--nptl/pt-system.c8
-rw-r--r--nptl/tst-cancel-wrappers.sh3
3 files changed, 9 insertions, 8 deletions
diff --git a/nptl/ChangeLog b/nptl/ChangeLog
index 3288bcc7cf..24c2fb64fb 100644
--- a/nptl/ChangeLog
+++ b/nptl/ChangeLog
@@ -1,3 +1,9 @@
+2002-12-27  Jakub Jelinek  <jakub@redhat.com>
+
+	* pt-system.c (system): Remove cancellation handling.
+	* tst-cancel-wrappers.sh: Allow pt-system.o* to not use the
+	cancellation routines.
+
 2002-12-28  Ulrich Drepper  <drepper@redhat.com>
 
 	* descr.h: Include <dl-sysdep.h>.
diff --git a/nptl/pt-system.c b/nptl/pt-system.c
index e98f04c413..f638a6ae32 100644
--- a/nptl/pt-system.c
+++ b/nptl/pt-system.c
@@ -26,11 +26,5 @@
 int
 system (const char *line)
 {
-  int oldtype = CANCEL_ASYNC ();
-
-  int result = __libc_system (line);
-
-  CANCEL_RESET (oldtype);
-
-  return result;
+  return __libc_system (line);
 }
diff --git a/nptl/tst-cancel-wrappers.sh b/nptl/tst-cancel-wrappers.sh
index 39ded2e743..54c5e0f23a 100644
--- a/nptl/tst-cancel-wrappers.sh
+++ b/nptl/tst-cancel-wrappers.sh
@@ -67,7 +67,8 @@ C["__xpg_sigpause"]=1
 /:$/ {
   if (seen)
     {
-      if (!seen_enable || !seen_disable)
+      # pt-system.o* in NPTL calls __libc_system directly.
+      if ((!seen_enable || !seen_disable) && !(object ~ /^pt-system.o/))
 	{
 	  printf "in '$1'(%s) %s'\''s cancellation missing\n", object, seen
 	  ret = 1