--- ./os2/os2.c~	Thu May 14 11:11:16 1998
+++ ./os2/os2.c	Mon Jun  8 20:05:28 1998
@@ -163,8 +163,11 @@ os2_cond_wait(perl_cond *c, perl_mutex *
     if ((rc = DosResetEventSem(*c,&na)) && (rc != ERROR_ALREADY_RESET))
 	croak("panic: COND_WAIT-reset: rc=%i", rc);		
     if (m) MUTEX_UNLOCK(m);					
-    if (CheckOSError(DosWaitEventSem(*c,SEM_INDEFINITE_WAIT)))
+    if (CheckOSError(DosWaitEventSem(*c,SEM_INDEFINITE_WAIT))
+	&& (rc != ERROR_INTERRUPT))
 	croak("panic: COND_WAIT: rc=%i", rc);		
+    if (rc == ERROR_INTERRUPT)
+	errno = EINTR;
     if (m) MUTEX_LOCK(m);					
 } 
 #endif 
@@ -356,7 +356,7 @@ result(int flag, int pid)
 /* global Argv[] contains arguments. */
 
 int
-do_aspawn(really, flag, execf)
+do_spawn_ve(really, flag, execf)
 SV *really;
 U32 flag;
 U32 execf;
diff -pru perl5.004_04-m1/os2/Changes perl5.004_04-m1.my/os2/Changes
--- perl5.004_04-m1/os2/Changes	Wed Oct 15 09:58:22 1997
+++ perl5.004_04-m1.my/os2/Changes	Thu Mar  5 03:28:36 1998
@@ -163,3 +163,14 @@ after 5.004_03:
 	changes to errno?)
 	$0 may be edited to longer lengths (at least under OS/2).
 	OS2::REXX->loads looks in the OS/2-ish fashion too.
+
+after 5.004_04:
+	Default perl.exe was built with a shorter stack than expected.
+	Strip extensions DLLs too (unless debugging build).
+	./os2.c being RO could stop cp.
+	When starting scripts, Perl will find them on path (using the same
+	  extensions as for -S command-line switch).  If it finds magic
+	  `extproc ' or `#!' cookies, it will start the scripts directly.
+	May use `cmd /c more <' as a pager.
+	If a program could not be started, this might have been hidden.
+	End of pipe was closed twice when `open'ing a pipeline.
--- ./os2/diff.configure.orig	Fri Feb 27 10:13:42 1998
+++ ./os2/diff.configure	Mon Jun  8 19:32:26 1998
@@ -27,12 +27,3 @@
  case "$libs" in
  '') ;;
  *)  for thislib in $libs; do
-@@ -10392,7 +10392,7 @@
- 	echo " "
- 	echo "Stripping down executable paths..." >&4
- 	for file in $loclist $trylist; do
--		eval $file="\$file"
-+		if test X$file != Xln -o X$osname != Xos2; then eval $file="\$file"; fi
- 	done
- 	;;
- esac
