Commit 57507bf8 authored by Dan Nicolaescu's avatar Dan Nicolaescu

Remove unused code.

* src/sysdep.c (select_alarm, sys_select, read_input_waiting): Remove
select emulation, all systems support select.
(set_exclusive_use): Remove, the only user is in an #if 0 block.
* src/process.c (create_process): Remove #if 0 code.
parent dd5ecd6b
2010-10-03 Dan Nicolaescu <dann@ics.uci.edu> 2010-10-03 Dan Nicolaescu <dann@ics.uci.edu>
Remove unused code.
* sysdep.c (select_alarm, sys_select, read_input_waiting): Remove
select emulation, all systems support select.
(set_exclusive_use): Remove, the only user is in an #if 0 block.
* process.c (create_process): Remove #if 0 code.
Remove unused arguments for unexec. Remove unused arguments for unexec.
The third one is never used, and the last two are always passed as zero. The third one is never used, and the last two are always passed as zero.
* emacs.c (unexec): Add declaration. * emacs.c (unexec): Add declaration.
......
...@@ -118,6 +118,7 @@ along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>. */ ...@@ -118,6 +118,7 @@ along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>. */
#ifdef HAVE_NS #ifdef HAVE_NS
#include "nsterm.h" #include "nsterm.h"
#endif #endif
extern int timers_run; extern int timers_run;
Lisp_Object Qeuid, Qegid, Qcomm, Qstate, Qppid, Qpgrp, Qsess, Qttname, Qtpgid; Lisp_Object Qeuid, Qegid, Qcomm, Qstate, Qppid, Qpgrp, Qsess, Qttname, Qtpgid;
...@@ -1870,12 +1871,6 @@ create_process (Lisp_Object process, char **new_argv, Lisp_Object current_dir) ...@@ -1870,12 +1871,6 @@ create_process (Lisp_Object process, char **new_argv, Lisp_Object current_dir)
} }
#endif #endif
#if 0
/* Replaced by close_process_descs */
set_exclusive_use (inchannel);
set_exclusive_use (outchannel);
#endif
#ifdef O_NONBLOCK #ifdef O_NONBLOCK
fcntl (inchannel, F_SETFL, O_NONBLOCK); fcntl (inchannel, F_SETFL, O_NONBLOCK);
fcntl (outchannel, F_SETFL, O_NONBLOCK); fcntl (outchannel, F_SETFL, O_NONBLOCK);
......
...@@ -299,16 +299,6 @@ init_baud_rate (int fd) ...@@ -299,16 +299,6 @@ init_baud_rate (int fd)
baud_rate = 1200; baud_rate = 1200;
} }
/*ARGSUSED*/
void
set_exclusive_use (int fd)
{
#ifdef FIOCLEX
ioctl (fd, FIOCLEX, 0);
#endif
/* Ok to do nothing if this feature does not exist */
}
int wait_debugging; /* Set nonzero to make following function work under dbx int wait_debugging; /* Set nonzero to make following function work under dbx
...@@ -483,7 +473,7 @@ child_setup_tty (int out) ...@@ -483,7 +473,7 @@ child_setup_tty (int out)
EMACS_SET_TTY (out, &s, 0); EMACS_SET_TTY (out, &s, 0);
#endif /* not WINDOWSNT */ #endif /* not WINDOWSNT */
} }
#endif /* MSDOS */ #endif /* not MSDOS */
/* Record a signal code and the handler for it. */ /* Record a signal code and the handler for it. */
...@@ -1486,242 +1476,6 @@ init_system_name (void) ...@@ -1486,242 +1476,6 @@ init_system_name (void)
} }
} }
#ifndef MSDOS
#if !defined (HAVE_SELECT)
#include "sysselect.h"
#undef select
#if defined (HAVE_X_WINDOWS) && !defined (HAVE_SELECT)
/* Cause explanatory error message at compile time,
since the select emulation is not good enough for X. */
int *x = &x_windows_lose_if_no_select_system_call;
#endif
/* Emulate as much as select as is possible under 4.1 and needed by Gnu Emacs
* Only checks read descriptors.
*/
/* How long to wait between checking fds in select */
#define SELECT_PAUSE 1
int select_alarmed;
/* For longjmp'ing back to read_input_waiting. */
jmp_buf read_alarm_throw;
/* Nonzero if the alarm signal should throw back to read_input_waiting.
The read_socket_hook function sets this to 1 while it is waiting. */
int read_alarm_should_throw;
void
select_alarm (int ignore)
{
select_alarmed = 1;
signal (SIGALRM, SIG_IGN);
SIGNAL_THREAD_CHECK (SIGALRM);
if (read_alarm_should_throw)
longjmp (read_alarm_throw, 1);
}
#ifndef WINDOWSNT
/* Only rfds are checked. */
int
sys_select (int nfds,
SELECT_TYPE *rfds, SELECT_TYPE *wfds, SELECT_TYPE *efds,
EMACS_TIME *timeout)
{
/* XXX This needs to be updated for multi-tty support. Is there
anybody who needs to emulate select these days? */
int ravail = 0;
SELECT_TYPE orfds;
int timeoutval;
int *local_timeout;
extern int proc_buffered_char[];
extern int process_tick, update_tick;
unsigned char buf;
#if defined (HAVE_SELECT) && defined (HAVE_X_WINDOWS)
/* If we're using X, then the native select will work; we only need the
emulation for non-X usage. */
if (!NILP (Vinitial_window_system))
return select (nfds, rfds, wfds, efds, timeout);
#endif
timeoutval = timeout ? EMACS_SECS (*timeout) : 100000;
local_timeout = &timeoutval;
FD_ZERO (&orfds);
if (rfds)
{
orfds = *rfds;
FD_ZERO (rfds);
}
if (wfds)
FD_ZERO (wfds);
if (efds)
FD_ZERO (efds);
/* If we are looking only for the terminal, with no timeout,
just read it and wait -- that's more efficient. */
if (*local_timeout == 100000 && process_tick == update_tick
&& FD_ISSET (0, &orfds))
{
int fd;
for (fd = 1; fd < nfds; ++fd)
if (FD_ISSET (fd, &orfds))
goto hardway;
if (! detect_input_pending ())
read_input_waiting ();
FD_SET (0, rfds);
return 1;
}
hardway:
/* Once a second, till the timer expires, check all the flagged read
* descriptors to see if any input is available. If there is some then
* set the corresponding bit in the return copy of rfds.
*/
while (1)
{
register int to_check, fd;
if (rfds)
{
for (to_check = nfds, fd = 0; --to_check >= 0; fd++)
{
if (FD_ISSET (fd, &orfds))
{
int avail = 0, status = 0;
if (fd == 0)
avail = detect_input_pending (); /* Special keyboard handler */
else
{
#ifdef FIONREAD
status = ioctl (fd, FIONREAD, &avail);
#else /* no FIONREAD */
/* Hoping it will return -1 if nothing available
or 0 if all 0 chars requested are read. */
if (proc_buffered_char[fd] >= 0)
avail = 1;
else
{
avail = read (fd, &buf, 1);
if (avail > 0)
proc_buffered_char[fd] = buf;
}
#endif /* no FIONREAD */
}
if (status >= 0 && avail > 0)
{
FD_SET (fd, rfds);
ravail++;
}
}
}
}
if (*local_timeout == 0 || ravail != 0 || process_tick != update_tick)
break;
turn_on_atimers (0);
signal (SIGALRM, select_alarm);
select_alarmed = 0;
alarm (SELECT_PAUSE);
/* Wait for a SIGALRM (or maybe a SIGTINT) */
while (select_alarmed == 0 && *local_timeout != 0
&& process_tick == update_tick)
{
/* If we are interested in terminal input,
wait by reading the terminal.
That makes instant wakeup for terminal input at least. */
if (FD_ISSET (0, &orfds))
{
read_input_waiting ();
if (detect_input_pending ())
select_alarmed = 1;
}
else
pause ();
}
(*local_timeout) -= SELECT_PAUSE;
/* Reset the old alarm if there was one. */
turn_on_atimers (1);
if (*local_timeout == 0) /* Stop on timer being cleared */
break;
}
return ravail;
}
#endif /* not WINDOWSNT */
/* Read keyboard input into the standard buffer,
waiting for at least one character. */
void
read_input_waiting (void)
{
/* XXX This needs to be updated for multi-tty support. Is there
anybody who needs to emulate select these days? */
int nread, i;
if (read_socket_hook)
{
struct input_event hold_quit;
EVENT_INIT (hold_quit);
hold_quit.kind = NO_EVENT;
read_alarm_should_throw = 0;
if (! setjmp (read_alarm_throw))
nread = (*read_socket_hook) (0, 1, &hold_quit);
else
nread = -1;
if (hold_quit.kind != NO_EVENT)
kbd_buffer_store_event (&hold_quit);
}
else
{
struct input_event e;
char buf[3];
nread = read (fileno (stdin), buf, 1);
EVENT_INIT (e);
/* Scan the chars for C-g and store them in kbd_buffer. */
e.kind = ASCII_KEYSTROKE_EVENT;
e.frame_or_window = selected_frame;
e.modifiers = 0;
for (i = 0; i < nread; i++)
{
/* Convert chars > 0177 to meta events if desired.
We do this under the same conditions that read_avail_input does. */
if (read_socket_hook == 0)
{
/* If the user says she has a meta key, then believe her. */
if (meta_key == 1 && (buf[i] & 0x80))
e.modifiers = meta_modifier;
if (meta_key != 2)
buf[i] &= ~0x80;
}
XSETINT (e.code, buf[i]);
kbd_buffer_store_event (&e);
/* Don't look at input that follows a C-g too closely.
This reduces lossage due to autorepeat on C-g. */
if (buf[i] == quit_char)
break;
}
}
}
#if !defined (HAVE_SELECT)
#define select sys_select
#endif
#endif /* not HAVE_SELECT */
#endif /* not MSDOS */
/* POSIX signals support - DJB */ /* POSIX signals support - DJB */
/* Anyone with POSIX signals should have ANSI C declarations */ /* Anyone with POSIX signals should have ANSI C declarations */
...@@ -2271,7 +2025,6 @@ dup2 (int oldd, int newd) ...@@ -2271,7 +2025,6 @@ dup2 (int oldd, int newd)
#ifndef HAVE_GETTIMEOFDAY #ifndef HAVE_GETTIMEOFDAY
#ifdef HAVE_TIMEVAL #ifdef HAVE_TIMEVAL
/* ARGSUSED */
int int
gettimeofday (struct timeval *tp, struct timezone *tzp) gettimeofday (struct timeval *tp, struct timezone *tzp)
{ {
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment