Mercurial > emacs
annotate src/syswait.h @ 29473:80835e075d87
(display_line): Set row's and iterator's
starts_in_middle_of_char_p and ends_in_middle_of_char_p flags.
Set cursor even if row ends in the middle of a character.
(dump_glyph_row): Print values of new flags.
(redisplay_window) <cursor movement in unchanged window>: When
point has been moved forward, and PT is at the end of the cursor
row, don't place the cursor in the next row if the cursor row ends
in the middle of a character or at ZV.
author | Gerd Moellmann <gerd@gnu.org> |
---|---|
date | Tue, 06 Jun 2000 20:02:39 +0000 |
parents | 02044b05d8e0 |
children | 0c8b413f3f35 |
rev | line source |
---|---|
4626 | 1 /* Define wait system call interface for Emacs. |
11235 | 2 Copyright (C) 1993, 1994, 1995 Free Software Foundation, Inc. |
4626 | 3 |
4 This file is part of GNU Emacs. | |
5 | |
6 GNU Emacs is free software; you can redistribute it and/or modify | |
7 it under the terms of the GNU General Public License as published by | |
8 the Free Software Foundation; either version 2, or (at your option) | |
9 any later version. | |
10 | |
11 GNU Emacs is distributed in the hope that it will be useful, | |
12 but WITHOUT ANY WARRANTY; without even the implied warranty of | |
13 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | |
14 GNU General Public License for more details. | |
15 | |
16 You should have received a copy of the GNU General Public License | |
17 along with GNU Emacs; see the file COPYING. If not, write to | |
14186
ee40177f6c68
Update FSF's address in the preamble.
Erik Naggum <erik@naggum.no>
parents:
11235
diff
changeset
|
18 the Free Software Foundation, Inc., 59 Temple Place - Suite 330, |
ee40177f6c68
Update FSF's address in the preamble.
Erik Naggum <erik@naggum.no>
parents:
11235
diff
changeset
|
19 Boston, MA 02111-1307, USA. */ |
4626 | 20 |
21 /* Define the structure that the wait system call stores. | |
22 On many systems, there is a structure defined for this. | |
23 But on vanilla-ish USG systems there is not. */ | |
24 | |
25 #ifndef VMS | |
26 #ifndef WAITTYPE | |
10773
d8bc42dd7235
New alternative specified by WAIT_USE_INT.
Richard M. Stallman <rms@gnu.org>
parents:
10715
diff
changeset
|
27 |
d8bc42dd7235
New alternative specified by WAIT_USE_INT.
Richard M. Stallman <rms@gnu.org>
parents:
10715
diff
changeset
|
28 #ifdef WAIT_USE_INT |
d8bc42dd7235
New alternative specified by WAIT_USE_INT.
Richard M. Stallman <rms@gnu.org>
parents:
10715
diff
changeset
|
29 /* Some systems have union wait in their header, but we should use |
d8bc42dd7235
New alternative specified by WAIT_USE_INT.
Richard M. Stallman <rms@gnu.org>
parents:
10715
diff
changeset
|
30 int regardless of that. */ |
d8bc42dd7235
New alternative specified by WAIT_USE_INT.
Richard M. Stallman <rms@gnu.org>
parents:
10715
diff
changeset
|
31 #include <sys/wait.h> |
d8bc42dd7235
New alternative specified by WAIT_USE_INT.
Richard M. Stallman <rms@gnu.org>
parents:
10715
diff
changeset
|
32 #define WAITTYPE int |
d8bc42dd7235
New alternative specified by WAIT_USE_INT.
Richard M. Stallman <rms@gnu.org>
parents:
10715
diff
changeset
|
33 #define WRETCODE(w) WEXITSTATUS (w) |
d8bc42dd7235
New alternative specified by WAIT_USE_INT.
Richard M. Stallman <rms@gnu.org>
parents:
10715
diff
changeset
|
34 |
d8bc42dd7235
New alternative specified by WAIT_USE_INT.
Richard M. Stallman <rms@gnu.org>
parents:
10715
diff
changeset
|
35 #else /* not WAIT_USE_INT */ |
d8bc42dd7235
New alternative specified by WAIT_USE_INT.
Richard M. Stallman <rms@gnu.org>
parents:
10715
diff
changeset
|
36 |
16220
02044b05d8e0
Replaced symbol BSD with BSD_SYSTEM.
Karl Heuer <kwzh@gnu.org>
parents:
15000
diff
changeset
|
37 #if (!defined (BSD_SYSTEM) && !defined (UNIPLUS) && !defined (STRIDE) && !(defined (HPUX) && !defined (NOMULTIPLEJOBS)) && !defined (HAVE_WAIT_HEADER)) |
4626 | 38 #define WAITTYPE int |
39 #define WIFSTOPPED(w) ((w&0377) == 0177) | |
40 #define WIFSIGNALED(w) ((w&0377) != 0177 && (w&~0377) == 0) | |
41 #define WIFEXITED(w) ((w&0377) == 0) | |
42 #define WRETCODE(w) (w >> 8) | |
43 #define WSTOPSIG(w) (w >> 8) | |
44 #define WTERMSIG(w) (w & 0377) | |
45 #ifndef WCOREDUMP | |
46 #define WCOREDUMP(w) ((w&0200) != 0) | |
47 #endif | |
10773
d8bc42dd7235
New alternative specified by WAIT_USE_INT.
Richard M. Stallman <rms@gnu.org>
parents:
10715
diff
changeset
|
48 |
4626 | 49 #else |
10773
d8bc42dd7235
New alternative specified by WAIT_USE_INT.
Richard M. Stallman <rms@gnu.org>
parents:
10715
diff
changeset
|
50 |
4626 | 51 #ifdef BSD4_1 |
52 #include <wait.h> | |
53 #else | |
54 #include <sys/wait.h> | |
55 #endif /* not BSD 4.1 */ | |
56 | |
57 #define WAITTYPE union wait | |
58 #define WRETCODE(w) w.w_retcode | |
6015
1a2b17eab8d9
[BSD]: #undef WCOREDUMP before defining it.
Roland McGrath <roland@gnu.org>
parents:
4955
diff
changeset
|
59 #undef WCOREDUMP /* Later BSDs define this name differently. */ |
4626 | 60 #define WCOREDUMP(w) w.w_coredump |
61 | |
4955 | 62 #if defined (HPUX) || defined (convex) |
4626 | 63 /* HPUX version 7 has broken definitions of these. */ |
4955 | 64 /* pvogel@convex.com says the convex does too. */ |
4626 | 65 #undef WTERMSIG |
66 #undef WSTOPSIG | |
67 #undef WIFSTOPPED | |
68 #undef WIFSIGNALED | |
69 #undef WIFEXITED | |
4955 | 70 #endif /* HPUX | convex */ |
4626 | 71 |
72 #ifndef WTERMSIG | |
73 #define WTERMSIG(w) w.w_termsig | |
74 #endif | |
75 #ifndef WSTOPSIG | |
76 #define WSTOPSIG(w) w.w_stopsig | |
77 #endif | |
78 #ifndef WIFSTOPPED | |
79 #define WIFSTOPPED(w) (WTERMSIG (w) == 0177) | |
80 #endif | |
81 #ifndef WIFSIGNALED | |
82 #define WIFSIGNALED(w) (WTERMSIG (w) != 0177 && (WSTOPSIG (w)) == 0) | |
83 #endif | |
84 #ifndef WIFEXITED | |
85 #define WIFEXITED(w) (WTERMSIG (w) == 0) | |
86 #endif | |
16220
02044b05d8e0
Replaced symbol BSD with BSD_SYSTEM.
Karl Heuer <kwzh@gnu.org>
parents:
15000
diff
changeset
|
87 #endif /* BSD_SYSTEM || UNIPLUS || STRIDE || HPUX */ |
10773
d8bc42dd7235
New alternative specified by WAIT_USE_INT.
Richard M. Stallman <rms@gnu.org>
parents:
10715
diff
changeset
|
88 #endif /* not WAIT_USE_INT */ |
4626 | 89 #endif /* no WAITTYPE */ |
10773
d8bc42dd7235
New alternative specified by WAIT_USE_INT.
Richard M. Stallman <rms@gnu.org>
parents:
10715
diff
changeset
|
90 |
4626 | 91 #else /* VMS */ |
10773
d8bc42dd7235
New alternative specified by WAIT_USE_INT.
Richard M. Stallman <rms@gnu.org>
parents:
10715
diff
changeset
|
92 |
4626 | 93 #define WAITTYPE int |
94 #define WIFSTOPPED(w) 0 | |
95 #define WIFSIGNALED(w) 0 | |
96 #define WIFEXITED(w) ((w) != -1) | |
97 #define WRETCODE(w) (w) | |
98 #define WSTOPSIG(w) (w) | |
99 #define WCOREDUMP(w) 0 | |
100 #define WTERMSIG(w) (w) | |
101 #include <ssdef.h> | |
102 #include <iodef.h> | |
103 #include <clidef.h> | |
104 #include "vmsproc.h" | |
10773
d8bc42dd7235
New alternative specified by WAIT_USE_INT.
Richard M. Stallman <rms@gnu.org>
parents:
10715
diff
changeset
|
105 |
4626 | 106 #endif /* VMS */ |