Skip to content
GitLab
Projects
Groups
Snippets
Help
Loading...
Help
What's new
7
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
Open sidebar
emacs
emacs
Commits
5d5beb62
Commit
5d5beb62
authored
Jun 22, 1997
by
Richard M. Stallman
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
(wait_reading_process_input): Don't check for
keyboard input if wait_for_cell.
parent
fa526c4a
Changes
1
Hide whitespace changes
Inline
Side-by-side
Showing
1 changed file
with
20 additions
and
3 deletions
+20
-3
src/process.c
src/process.c
+20
-3
No files found.
src/process.c
View file @
5d5beb62
...
...
@@ -2413,6 +2413,21 @@ wait_reading_process_input (time_limit, microsecs, read_kbd, do_display)
kill
(
getpid
(),
SIGIO
);
#endif
#if 0 /* When polling is used, interrupt_input is 0,
so get_input_pending should read the input.
So this should not be needed. */
/* If we are using polling for input,
and we see input available, make it get read now.
Otherwise it might not actually get read for a second.
And on hpux, since we turn off polling in wait_reading_process_input,
it might never get read at all if we don't spend much time
outside of wait_reading_process_input. */
if (XINT (read_kbd) && interrupt_input
&& keyboard_bit_set (&Available)
&& input_polling_used ())
kill (getpid (), SIGALRM);
#endif
/* Check for keyboard input */
/* If there is any, return immediately
to give it higher priority than subprocesses */
...
...
@@ -2430,6 +2445,7 @@ wait_reading_process_input (time_limit, microsecs, read_kbd, do_display)
&&
requeued_events_pending_p
())
break
;
#if 0
/* If wait_for_cell. check for keyboard input
but don't run any timers.
??? (It seems wrong to me to check for keyboard
...
...
@@ -2443,19 +2459,20 @@ wait_reading_process_input (time_limit, microsecs, read_kbd, do_display)
if (detect_input_pending ())
break;
}
#endif
/* Exit now if the cell we're waiting for became non-nil. */
if
(
wait_for_cell
&&
!
NILP
(
*
wait_for_cell
))
break
;
#ifdef SIGIO
/* If we think we have keyboard input waiting, but didn't get SIGIO
/* If we think we have keyboard input waiting, but didn't get SIGIO
,
go read it. This can happen with X on BSD after logging out.
In that case, there really is no input and no SIGIO,
but select says there is input. */
if
(
XINT
(
read_kbd
)
&&
interrupt_input
&&
(
keyboard_bit_set
(
&
Available
))
)
&&
keyboard_bit_set
(
&
Available
))
kill
(
getpid
(),
SIGIO
);
#endif
...
...
@@ -2575,7 +2592,7 @@ wait_reading_process_input (time_limit, microsecs, read_kbd, do_display)
Causes "poll: interrupted system call" messages when Emacs is run
in an X window
Turn periodic alarms back on */
start_polling
();
start_polling
();
#endif
return
got_some_input
;
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
.
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment