From d2f28b6f6cd3f99f13bc5f2ddf4d1fa6ce1775f2 Mon Sep 17 00:00:00 2001
From: Chris Hanson <org/chris-hanson/cph>
Date: Fri, 8 Mar 1991 19:50:44 +0000
Subject: [PATCH] Permit a process to be deleted regardless of its status.

---
 v7/src/microcode/prosproc.c | 14 +++-----------
 v7/src/microcode/uxproc.c   |  4 ++--
 2 files changed, 5 insertions(+), 13 deletions(-)

diff --git a/v7/src/microcode/prosproc.c b/v7/src/microcode/prosproc.c
index e3a294daa..b01aa4ca7 100644
--- a/v7/src/microcode/prosproc.c
+++ b/v7/src/microcode/prosproc.c
@@ -1,6 +1,6 @@
 /* -*-C-*-
 
-$Header: /Users/cph/tmp/foo/mit-scheme/mit-scheme/v7/src/microcode/prosproc.c,v 1.4 1991/03/08 03:10:16 cph Exp $
+$Header: /Users/cph/tmp/foo/mit-scheme/mit-scheme/v7/src/microcode/prosproc.c,v 1.5 1991/03/08 19:49:59 cph Exp $
 
 Copyright (c) 1990-91 Massachusetts Institute of Technology
 
@@ -208,18 +208,10 @@ DEFINE_PRIMITIVE ("SCHEME-ENVIRONMENT", Prim_scheme_environment, 0, 0, 0)
 }
 
 DEFINE_PRIMITIVE ("PROCESS-DELETE", Prim_process_delete, 1, 1,
-  "Delete process PROCESS-NUMBER from the process table.\n\
-The process may be deleted only if it is exited or signalled.")
+  "Delete process PROCESS-NUMBER from the process table.")
 {
   PRIMITIVE_HEADER (1);
-  {
-    Tprocess process = (arg_process (1));
-    enum process_status status = (OS_process_status (process));
-    if (! ((status == process_status_exited)
-	   || (status == process_status_signalled)))
-      error_bad_range_arg (1);
-    OS_process_deallocate (process);
-  }
+  OS_process_deallocate (arg_process (1));
   PRIMITIVE_RETURN (UNSPECIFIC);
 }
 
diff --git a/v7/src/microcode/uxproc.c b/v7/src/microcode/uxproc.c
index d59b33062..6b1ae9dd0 100644
--- a/v7/src/microcode/uxproc.c
+++ b/v7/src/microcode/uxproc.c
@@ -1,6 +1,6 @@
 /* -*-C-*-
 
-$Header: /Users/cph/tmp/foo/mit-scheme/mit-scheme/v7/src/microcode/uxproc.c,v 1.6 1991/03/08 03:10:04 cph Exp $
+$Header: /Users/cph/tmp/foo/mit-scheme/mit-scheme/v7/src/microcode/uxproc.c,v 1.7 1991/03/08 19:50:44 cph Exp $
 
 Copyright (c) 1990-91 Massachusetts Institute of Technology
 
@@ -204,9 +204,9 @@ DEFUN_VOID (process_allocate)
 void
 DEFUN (OS_process_deallocate, (process), Tprocess process)
 {
+  (PROCESS_ID (process)) = 0;
   (PROCESS_STATUS (process)) = process_status_free;
   (PROCESS_REASON (process)) = 0;
-  (PROCESS_ID (process)) = 0;
 }
 
 Tprocess
-- 
2.25.1