mirror of
https://git.savannah.gnu.org/git/emacs.git
synced 2024-12-04 08:47:11 +00:00
(select_wrapper): Add wrapper around select to work around
"incomplete backtrace" bug in gdb 5.3, when emacs is stopped inside select called from wait_reading_process_output.
This commit is contained in:
parent
360feccaf4
commit
e1e541bdf1
@ -4135,6 +4135,25 @@ wait_reading_process_output_1 ()
|
||||
{
|
||||
}
|
||||
|
||||
/* Use a wrapper around select to work around a bug in gdb 5.3.
|
||||
Normally, the wrapper is optimzed away by inlining.
|
||||
|
||||
If emacs is stopped inside select, the gdb backtrace doesn't
|
||||
show the function which called select, so it is practically
|
||||
impossible to step through wait_reading_process_output. */
|
||||
|
||||
#ifndef select
|
||||
static INLINE int
|
||||
select_wrapper (n, rfd, wfd, xfd, tmo)
|
||||
int n;
|
||||
SELECT_TYPE *rfd, *wfd, *xfd;
|
||||
EMACS_TIME *tmo;
|
||||
{
|
||||
return select (n, rfd, wfd, xfd, tmo);
|
||||
}
|
||||
#define select select_wrapper
|
||||
#endif
|
||||
|
||||
/* Read and dispose of subprocess output while waiting for timeout to
|
||||
elapse and/or keyboard input to be available.
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user