summaryrefslogtreecommitdiff
path: root/inputmethod/canuum/patches/patch-ae
blob: 8089d56e34b636ab355406741a45294aeb8e5a54 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
$NetBSD: patch-ae,v 1.1.1.1 2002/05/31 13:01:31 seb Exp $

--- jhlp.c.orig	Thu Jan 21 21:52:56 1999
+++ jhlp.c	Thu Jan 21 21:56:35 1999
@@ -76,6 +76,9 @@
 
 jmp_buf kk_env;
 
+#if (defined(__unix__) || defined(unix)) && !defined(USG)
+#include <sys/param.h>
+#endif
 #ifdef SYSVR2
 #	include <sys/param.h>
 #endif /* SYSVR2 */
@@ -285,9 +288,11 @@
 
 
 #if defined(BSD42) && !defined(DGUX)
+#if !(defined(BSD) && (BSD >= 199306))
     if (saveutmp() < 0) {
 	puts("Can't save utmp\n");
     }
+#endif
 #endif /* BSD42 */
 
 
@@ -781,7 +786,12 @@
 #endif
     int pid;
 
-    if ((pid = wait3(&status, WNOHANG | WUNTRACED, NULL)) == child_id) {
+/*
+ * Remove warning.
+ * Patched by Hidekazu Kuroki(hidekazu@cs.titech.ac.jp)		1996/8/20
+ */
+/*  if ((pid = wait3(&status, WNOHANG | WUNTRACED, NULL)) == child_id) { */
+    if ((pid = wait3((int *)&status, WNOHANG | WUNTRACED, NULL)) == child_id) {
 	if (WIFSTOPPED(status)) {
 #ifdef SIGCONT
 	    kill(pid, SIGCONT);
@@ -1174,9 +1184,11 @@
 	setpgrp(0, pid);
 #endif /* BSD42 */
 
+#if !(defined(BSD) && (BSD >= 199306))
 	if (setutmp(ttypfd) == ERROR) {
 	    puts("Can't set utmp.");
 	} 
+#endif
 
 #ifdef linux
 	setsid();
@@ -1634,9 +1646,11 @@
 	perror(prog);
     }
 
+#if !(defined(BSD) && (BSD >= 199306))
     if (resetutmp(ttypfd) == ERROR) {
 	printf("Can't reset utmp.");
     }
+#endif
 #ifdef TIOCSSIZE
     pty_rowcol.ts_lines = 0;
     pty_rowcol.ts_cols = 0;
@@ -1706,11 +1720,24 @@
 char *b, *pty;
 int no;
 {
+/*
+ * Change pseudo-devices.
+ * Because FreeBSD's master pseudo-devices are pty[p-sP-S][0-9a-v].
+ * Patched by Hidekazu Kuroki(hidekazu@cs.titech.ac.jp)		1996/8/20
+ */
   if (no < 0x10 * ('z' - 'p' + 1)) {
+#if (defined(BSD) && (BSD >= 199306)) /* 4.4BSD-Lite by Taoka */
+    sprintf(b, "%s%1c%1c", pty, "pqrsPQRS"[(no >> 5)], ((no & 0x1f > 9)? 'a' : '0') + (no & 0x1f));
+#else /* ! 4.4BSD-Lite */
     sprintf(b, "%s%1c%1x", pty, 'p' + (no >> 4), no & 0x0f);
+#endif /* ! 4.4BSD-Lite */
   } else {
     no -= 0x10 * ('z' - 'p' + 1);
+#if (defined(BSD) && (BSD >= 199306)) /* 4.4BSD-Lite by Taoka */
+    sprintf(b, "%s%1c%1c", pty, "pqrsPQRS"[(no >> 5)], ((no & 0x1f > 9)? 'a' : '0') + (no & 0x1f));
+#else /* ! 4.4BSD-Lite */
     sprintf(b, "%s%1c%1x", pty, 'P' + (no >> 4), no & 0x0f);
+#endif /* ! 4.4BSD-Lite */
   }
 }