Port better to POSIX hosts lacking _setjmp.
* configure.ac (HAVE__SETJMP, HAVE_SIGSETJMP): New symbols. (_setjmp, _longjmp): Remove. * src/lisp.h: Include <setjmp.h> here, since we use its symbols here. All instances of '#include <setjmp.h>' removed, if the only reason for the instance was because "lisp.h" was included. (sys_jmp_buf, sys_setjmp, sys_longjmp): New symbols. Unless otherwise specified, replace all uses of jmp_buf, _setjmp, and _longjmp with the new symbols. Emacs already uses _setjmp if available, so this change affects only POSIXish hosts that have sigsetjmp but not _setjmp, such as some versions of Solaris and Unixware. (Also, POSIX-2008 marks _setjmp as obsolescent.) * src/image.c (_setjmp, _longjmp) [HAVE_PNG && !HAVE__SETJMP]: New macros. (png_load_body) [HAVE_PNG]: (PNG_LONGJMP) [HAVE_PNG && PNG_LIBPNG_VER < 10500]: (PNG_JMPBUF) [HAVE_PNG && PNG_LIBPNG_VER >= 10500]: Use _setjmp and _longjmp rather than sys_setjmp and sys_longjmp, since PNG requires jmp_buf. This is the only exception to the general rule that we now use sys_setjmp and sys_longjmp. This exception is OK since this code does not change the signal mask or longjmp out of a signal handler. Fixes: debbugs:12446
This commit is contained in:
parent
823751606a
commit
0328b6de4a
100 changed files with 131 additions and 143 deletions
|
@ -1,3 +1,9 @@
|
|||
2012-09-15 Paul Eggert <eggert@cs.ucla.edu>
|
||||
|
||||
Port better to POSIX hosts lacking _setjmp (Bug#12446).
|
||||
* configure.ac (HAVE__SETJMP, HAVE_SIGSETJMP): New symbols.
|
||||
(_setjmp, _longjmp): Remove.
|
||||
|
||||
2012-09-14 Paul Eggert <eggert@cs.ucla.edu>
|
||||
|
||||
* configure.ac (--without-sync-input): Fix typo in usage message.
|
||||
|
|
25
configure.ac
25
configure.ac
|
@ -3774,13 +3774,24 @@ AC_CACHE_CHECK([for _setjmp], [emacs_cv_func__setjmp],
|
|||
_longjmp (j, 1);]])],
|
||||
[emacs_cv_func__setjmp=yes],
|
||||
[emacs_cv_func__setjmp=no])])
|
||||
if test $emacs_cv_func__setjmp = no; then
|
||||
AC_DEFINE([_setjmp], [setjmp],
|
||||
[Define to setjmp if _setjmp and _longjmp do not work. See _longjmp.])
|
||||
AC_DEFINE([_longjmp], [longjmp],
|
||||
[Define to longjmp if _setjmp and _longjmp do not work.
|
||||
Because longjmp may alter signal masks, callers of _longjmp
|
||||
should not assume that it leaves signal masks alone.])
|
||||
if test $emacs_cv_func__setjmp = yes; then
|
||||
AC_DEFINE([HAVE__SETJMP], 1, [Define to 1 if _setjmp and _longjmp work.])
|
||||
else
|
||||
AC_CACHE_CHECK([for sigsetjmp], [emacs_cv_func_sigsetjmp],
|
||||
[AC_LINK_IFELSE(
|
||||
[AC_LANG_PROGRAM(
|
||||
[[#include <setjmp.h>
|
||||
]],
|
||||
[[sigjmp_buf j;
|
||||
if (! sigsetjmp (j, 1))
|
||||
siglongjmp (j, 1);]])],
|
||||
[emacs_cv_func_sigsetjmp=yes],
|
||||
[emacs_cv_func_sigsetjmp=no])])
|
||||
if test $emacs_cv_func_sigsetjmp = yes; then
|
||||
AC_DEFINE([HAVE_SIGSETJMP], 1,
|
||||
[Define to 1 if sigsetjmp and siglongjmp work.
|
||||
The value of this symbol is irrelevant if HAVE__SETJMP is defined.])
|
||||
fi
|
||||
fi
|
||||
|
||||
case $opsys in
|
||||
|
|
|
@ -1,3 +1,25 @@
|
|||
2012-09-15 Paul Eggert <eggert@cs.ucla.edu>
|
||||
|
||||
Port better to POSIX hosts lacking _setjmp (Bug#12446).
|
||||
* lisp.h: Include <setjmp.h> here, since we use its symbols here.
|
||||
All instances of '#include <setjmp.h>' removed, if the
|
||||
only reason for the instance was because "lisp.h" was included.
|
||||
(sys_jmp_buf, sys_setjmp, sys_longjmp): New symbols.
|
||||
Unless otherwise specified, replace all uses of jmp_buf, _setjmp,
|
||||
and _longjmp with the new symbols. Emacs already uses _setjmp if
|
||||
available, so this change affects only POSIXish hosts that have
|
||||
sigsetjmp but not _setjmp, such as some versions of Solaris and
|
||||
Unixware. (Also, POSIX-2008 marks _setjmp as obsolescent.)
|
||||
* image.c (_setjmp, _longjmp) [HAVE_PNG && !HAVE__SETJMP]: New macros.
|
||||
(png_load_body) [HAVE_PNG]:
|
||||
(PNG_LONGJMP) [HAVE_PNG && PNG_LIBPNG_VER < 10500]:
|
||||
(PNG_JMPBUF) [HAVE_PNG && PNG_LIBPNG_VER >= 10500]:
|
||||
Use _setjmp and _longjmp rather than sys_setjmp and sys_longjmp,
|
||||
since PNG requires jmp_buf. This is the only exception to the
|
||||
general rule that we now use sys_setjmp and sys_longjmp.
|
||||
This exception is OK since this code does not change the signal
|
||||
mask or longjmp out of a signal handler.
|
||||
|
||||
2012-09-14 Paul Eggert <eggert@cs.ucla.edu>
|
||||
|
||||
* alloc.c [!SYSTEM_MALLOC && !SYNC_INPUT && HAVE_PTHREAD]:
|
||||
|
|
13
src/alloc.c
13
src/alloc.c
|
@ -24,7 +24,6 @@ along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>. */
|
|||
|
||||
#include <stdio.h>
|
||||
#include <limits.h> /* For CHAR_BIT. */
|
||||
#include <setjmp.h>
|
||||
|
||||
#ifdef ENABLE_CHECKING
|
||||
#include <signal.h> /* For SIGABRT. */
|
||||
|
@ -45,7 +44,7 @@ along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>. */
|
|||
#include "frame.h"
|
||||
#include "blockinput.h"
|
||||
#include "termhooks.h" /* For struct terminal. */
|
||||
#include <setjmp.h>
|
||||
|
||||
#include <verify.h>
|
||||
|
||||
/* GC_CHECK_MARKED_OBJECTS means do sanity checks on allocated objects.
|
||||
|
@ -4764,14 +4763,14 @@ test_setjmp (void)
|
|||
{
|
||||
char buf[10];
|
||||
register int x;
|
||||
jmp_buf jbuf;
|
||||
sys_jmp_buf jbuf;
|
||||
|
||||
/* Arrange for X to be put in a register. */
|
||||
sprintf (buf, "1");
|
||||
x = strlen (buf);
|
||||
x = 2 * x - 1;
|
||||
|
||||
_setjmp (jbuf);
|
||||
sys_setjmp (jbuf);
|
||||
if (longjmps_done == 1)
|
||||
{
|
||||
/* Came here after the longjmp at the end of the function.
|
||||
|
@ -4796,7 +4795,7 @@ test_setjmp (void)
|
|||
++longjmps_done;
|
||||
x = 2;
|
||||
if (longjmps_done == 1)
|
||||
_longjmp (jbuf, 1);
|
||||
sys_longjmp (jbuf, 1);
|
||||
}
|
||||
|
||||
#endif /* not GC_SAVE_REGISTERS_ON_STACK && not GC_SETJMP_WORKS */
|
||||
|
@ -4902,7 +4901,7 @@ mark_stack (void)
|
|||
/* jmp_buf may not be aligned enough on darwin-ppc64 */
|
||||
union aligned_jmpbuf {
|
||||
Lisp_Object o;
|
||||
jmp_buf j;
|
||||
sys_jmp_buf j;
|
||||
} j;
|
||||
volatile bool stack_grows_down_p = (char *) &j > (char *) stack_base;
|
||||
#endif
|
||||
|
@ -4938,7 +4937,7 @@ mark_stack (void)
|
|||
}
|
||||
#endif /* GC_SETJMP_WORKS */
|
||||
|
||||
_setjmp (j.j);
|
||||
sys_setjmp (j.j);
|
||||
end = stack_grows_down_p ? (char *) &j + sizeof j : (char *) &j;
|
||||
#endif /* not GC_SAVE_REGISTERS_ON_STACK */
|
||||
#endif /* not HAVE___BUILTIN_UNWIND_INIT */
|
||||
|
|
|
@ -18,7 +18,7 @@ along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>. */
|
|||
|
||||
#include <config.h>
|
||||
#include <stdio.h>
|
||||
#include <setjmp.h>
|
||||
|
||||
#include "lisp.h"
|
||||
#include "syssignal.h"
|
||||
#include "systime.h"
|
||||
|
|
|
@ -56,7 +56,6 @@ along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>. */
|
|||
|
||||
#include <config.h>
|
||||
#include <stdio.h>
|
||||
#include <setjmp.h>
|
||||
|
||||
#include "lisp.h"
|
||||
#include "character.h"
|
||||
|
|
|
@ -26,7 +26,6 @@ along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>. */
|
|||
#include <sys/param.h>
|
||||
#include <errno.h>
|
||||
#include <stdio.h>
|
||||
#include <setjmp.h>
|
||||
#include <unistd.h>
|
||||
|
||||
#include <verify.h>
|
||||
|
|
|
@ -33,7 +33,7 @@ by Hallvard:
|
|||
*/
|
||||
|
||||
#include <config.h>
|
||||
#include <setjmp.h>
|
||||
|
||||
#include "lisp.h"
|
||||
#include "character.h"
|
||||
#include "buffer.h"
|
||||
|
|
|
@ -19,7 +19,6 @@ along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>. */
|
|||
|
||||
|
||||
#include <config.h>
|
||||
#include <setjmp.h>
|
||||
|
||||
#include "lisp.h"
|
||||
#include "character.h"
|
||||
|
|
|
@ -21,7 +21,6 @@ along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>. */
|
|||
#include <config.h>
|
||||
#include <errno.h>
|
||||
#include <stdio.h>
|
||||
#include <setjmp.h>
|
||||
#include <sys/types.h>
|
||||
#include <unistd.h>
|
||||
|
||||
|
|
|
@ -19,7 +19,7 @@ along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>. */
|
|||
|
||||
|
||||
#include <config.h>
|
||||
#include <setjmp.h>
|
||||
|
||||
#include "lisp.h"
|
||||
#include "character.h"
|
||||
#include "buffer.h"
|
||||
|
|
|
@ -19,7 +19,7 @@ You should have received a copy of the GNU General Public License
|
|||
along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>. */
|
||||
|
||||
#include <config.h>
|
||||
#include <setjmp.h>
|
||||
|
||||
#include "lisp.h"
|
||||
#include "character.h"
|
||||
#include "buffer.h"
|
||||
|
|
|
@ -32,7 +32,6 @@ along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>. */
|
|||
|
||||
#define CATEGORY_INLINE EXTERN_INLINE
|
||||
|
||||
#include <setjmp.h>
|
||||
#include "lisp.h"
|
||||
#include "character.h"
|
||||
#include "buffer.h"
|
||||
|
|
|
@ -26,7 +26,6 @@ along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>. */
|
|||
#include <config.h>
|
||||
|
||||
#include <stdio.h>
|
||||
#include <setjmp.h>
|
||||
#include <limits.h>
|
||||
|
||||
#include "lisp.h"
|
||||
|
|
|
@ -36,7 +36,6 @@ along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>. */
|
|||
#ifdef emacs
|
||||
|
||||
#include <sys/types.h>
|
||||
#include <setjmp.h>
|
||||
#include <intprops.h>
|
||||
#include "lisp.h"
|
||||
#include "character.h"
|
||||
|
|
|
@ -32,7 +32,6 @@ along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>. */
|
|||
#include <unistd.h>
|
||||
#include <limits.h>
|
||||
#include <sys/types.h>
|
||||
#include <setjmp.h>
|
||||
#include <c-ctype.h>
|
||||
#include "lisp.h"
|
||||
#include "character.h"
|
||||
|
|
|
@ -19,7 +19,7 @@ You should have received a copy of the GNU General Public License
|
|||
along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>. */
|
||||
|
||||
#include <config.h>
|
||||
#include <setjmp.h>
|
||||
|
||||
#include "lisp.h"
|
||||
#include "character.h"
|
||||
#include "charset.h"
|
||||
|
|
1
src/cm.c
1
src/cm.c
|
@ -20,7 +20,6 @@ along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>. */
|
|||
|
||||
#include <config.h>
|
||||
#include <stdio.h>
|
||||
#include <setjmp.h>
|
||||
|
||||
#include "lisp.h"
|
||||
#include "frame.h"
|
||||
|
|
|
@ -19,7 +19,7 @@ along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>. */
|
|||
|
||||
|
||||
#include <config.h>
|
||||
#include <setjmp.h>
|
||||
|
||||
#include "lisp.h"
|
||||
#include "commands.h"
|
||||
#include "character.h"
|
||||
|
|
|
@ -285,7 +285,6 @@ encode_coding_XXX (struct coding_system *coding)
|
|||
|
||||
#include <config.h>
|
||||
#include <stdio.h>
|
||||
#include <setjmp.h>
|
||||
|
||||
#include "lisp.h"
|
||||
#include "character.h"
|
||||
|
|
|
@ -26,7 +26,6 @@ along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>. */
|
|||
|
||||
#define COMPOSITE_INLINE EXTERN_INLINE
|
||||
|
||||
#include <setjmp.h>
|
||||
#include "lisp.h"
|
||||
#include "character.h"
|
||||
#include "buffer.h"
|
||||
|
|
|
@ -20,7 +20,6 @@ along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>. */
|
|||
|
||||
#include <config.h>
|
||||
#include <stdio.h>
|
||||
#include <setjmp.h>
|
||||
|
||||
#include <intprops.h>
|
||||
|
||||
|
|
|
@ -21,7 +21,7 @@ along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>. */
|
|||
#ifdef HAVE_DBUS
|
||||
#include <stdio.h>
|
||||
#include <dbus/dbus.h>
|
||||
#include <setjmp.h>
|
||||
|
||||
#include "lisp.h"
|
||||
#include "frame.h"
|
||||
#include "termhooks.h"
|
||||
|
|
|
@ -22,7 +22,6 @@ along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>. */
|
|||
#include <stdio.h>
|
||||
#include <sys/types.h>
|
||||
#include <sys/stat.h>
|
||||
#include <setjmp.h>
|
||||
|
||||
#ifdef HAVE_PWD_H
|
||||
#include <pwd.h>
|
||||
|
|
|
@ -22,7 +22,6 @@ along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>. */
|
|||
#define DISPEXTERN_INLINE EXTERN_INLINE
|
||||
|
||||
#include <stdio.h>
|
||||
#include <setjmp.h>
|
||||
#include <unistd.h>
|
||||
|
||||
#include "lisp.h"
|
||||
|
|
|
@ -22,7 +22,6 @@ along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>. */
|
|||
|
||||
#include <sys/types.h>
|
||||
#include <sys/file.h> /* Must be after sys/types.h for USG*/
|
||||
#include <setjmp.h>
|
||||
#include <fcntl.h>
|
||||
#include <unistd.h>
|
||||
|
||||
|
|
|
@ -102,7 +102,6 @@ along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>. */
|
|||
|
||||
#include <config.h>
|
||||
#include <stdio.h>
|
||||
#include <setjmp.h>
|
||||
#include <float.h>
|
||||
#include <unistd.h>
|
||||
#include <limits.h>
|
||||
|
|
|
@ -30,7 +30,7 @@ along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>. */
|
|||
#include <dos.h>
|
||||
#undef gettime
|
||||
#undef settime
|
||||
#include <setjmp.h>
|
||||
|
||||
#include "lisp.h"
|
||||
#include "character.h"
|
||||
#include "buffer.h"
|
||||
|
|
|
@ -21,7 +21,6 @@ along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>. */
|
|||
#include <config.h>
|
||||
#include <sys/types.h>
|
||||
#include <stdio.h>
|
||||
#include <setjmp.h>
|
||||
|
||||
#ifdef HAVE_PWD_H
|
||||
#include <pwd.h>
|
||||
|
|
|
@ -25,7 +25,6 @@ along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>. */
|
|||
|
||||
#include <sys/types.h>
|
||||
#include <sys/file.h>
|
||||
#include <setjmp.h>
|
||||
#include <unistd.h>
|
||||
|
||||
#include "lisp.h"
|
||||
|
|
|
@ -22,7 +22,7 @@ along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>. */
|
|||
|
||||
#include "emacsgtkfixed.h"
|
||||
#include <stdio.h>
|
||||
#include <setjmp.h>
|
||||
|
||||
#include "lisp.h"
|
||||
#include "frame.h"
|
||||
#include "xterm.h"
|
||||
|
|
15
src/eval.c
15
src/eval.c
|
@ -19,7 +19,6 @@ along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>. */
|
|||
|
||||
#include <config.h>
|
||||
#include <limits.h>
|
||||
#include <setjmp.h>
|
||||
#include <stdio.h>
|
||||
#include "lisp.h"
|
||||
#include "blockinput.h"
|
||||
|
@ -1072,7 +1071,7 @@ internal_catch (Lisp_Object tag, Lisp_Object (*func) (Lisp_Object), Lisp_Object
|
|||
catchlist = &c;
|
||||
|
||||
/* Call FUNC. */
|
||||
if (! _setjmp (c.jmp))
|
||||
if (! sys_setjmp (c.jmp))
|
||||
c.val = (*func) (arg);
|
||||
|
||||
/* Throw works by a longjmp that comes right here. */
|
||||
|
@ -1140,7 +1139,7 @@ unwind_to_catch (struct catchtag *catch, Lisp_Object value)
|
|||
backtrace_list = catch->backlist;
|
||||
lisp_eval_depth = catch->lisp_eval_depth;
|
||||
|
||||
_longjmp (catch->jmp, 1);
|
||||
sys_longjmp (catch->jmp, 1);
|
||||
}
|
||||
|
||||
DEFUN ("throw", Fthrow, Sthrow, 2, 2, 0,
|
||||
|
@ -1246,7 +1245,7 @@ internal_lisp_condition_case (volatile Lisp_Object var, Lisp_Object bodyform,
|
|||
c.interrupt_input_blocked = interrupt_input_blocked;
|
||||
c.gcpro = gcprolist;
|
||||
c.byte_stack = byte_stack_list;
|
||||
if (_setjmp (c.jmp))
|
||||
if (sys_setjmp (c.jmp))
|
||||
{
|
||||
if (!NILP (h.var))
|
||||
specbind (h.var, c.val);
|
||||
|
@ -1301,7 +1300,7 @@ internal_condition_case (Lisp_Object (*bfun) (void), Lisp_Object handlers,
|
|||
c.interrupt_input_blocked = interrupt_input_blocked;
|
||||
c.gcpro = gcprolist;
|
||||
c.byte_stack = byte_stack_list;
|
||||
if (_setjmp (c.jmp))
|
||||
if (sys_setjmp (c.jmp))
|
||||
{
|
||||
return (*hfun) (c.val);
|
||||
}
|
||||
|
@ -1339,7 +1338,7 @@ internal_condition_case_1 (Lisp_Object (*bfun) (Lisp_Object), Lisp_Object arg,
|
|||
c.interrupt_input_blocked = interrupt_input_blocked;
|
||||
c.gcpro = gcprolist;
|
||||
c.byte_stack = byte_stack_list;
|
||||
if (_setjmp (c.jmp))
|
||||
if (sys_setjmp (c.jmp))
|
||||
{
|
||||
return (*hfun) (c.val);
|
||||
}
|
||||
|
@ -1381,7 +1380,7 @@ internal_condition_case_2 (Lisp_Object (*bfun) (Lisp_Object, Lisp_Object),
|
|||
c.interrupt_input_blocked = interrupt_input_blocked;
|
||||
c.gcpro = gcprolist;
|
||||
c.byte_stack = byte_stack_list;
|
||||
if (_setjmp (c.jmp))
|
||||
if (sys_setjmp (c.jmp))
|
||||
{
|
||||
return (*hfun) (c.val);
|
||||
}
|
||||
|
@ -1425,7 +1424,7 @@ internal_condition_case_n (Lisp_Object (*bfun) (ptrdiff_t, Lisp_Object *),
|
|||
c.interrupt_input_blocked = interrupt_input_blocked;
|
||||
c.gcpro = gcprolist;
|
||||
c.byte_stack = byte_stack_list;
|
||||
if (_setjmp (c.jmp))
|
||||
if (sys_setjmp (c.jmp))
|
||||
{
|
||||
return (*hfun) (c.val, nargs, args);
|
||||
}
|
||||
|
|
|
@ -23,7 +23,6 @@ along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>. */
|
|||
#include <stdio.h>
|
||||
#include <sys/types.h>
|
||||
#include <sys/stat.h>
|
||||
#include <setjmp.h>
|
||||
#include <unistd.h>
|
||||
|
||||
#ifdef HAVE_PWD_H
|
||||
|
|
|
@ -23,7 +23,6 @@ along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>. */
|
|||
#include <sys/stat.h>
|
||||
#include <signal.h>
|
||||
#include <stdio.h>
|
||||
#include <setjmp.h>
|
||||
|
||||
#ifdef HAVE_PWD_H
|
||||
#include <pwd.h>
|
||||
|
|
|
@ -29,7 +29,7 @@ along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>. */
|
|||
*/
|
||||
|
||||
#include <config.h>
|
||||
#include <setjmp.h>
|
||||
|
||||
#include "lisp.h"
|
||||
#include "syssignal.h"
|
||||
|
||||
|
|
|
@ -21,7 +21,6 @@ along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>. */
|
|||
|
||||
#include <unistd.h>
|
||||
#include <time.h>
|
||||
#include <setjmp.h>
|
||||
|
||||
#include <intprops.h>
|
||||
|
||||
|
|
|
@ -23,7 +23,6 @@ along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>. */
|
|||
#include <config.h>
|
||||
#include <float.h>
|
||||
#include <stdio.h>
|
||||
#include <setjmp.h>
|
||||
|
||||
#include <c-ctype.h>
|
||||
|
||||
|
|
|
@ -26,7 +26,6 @@ along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>. */
|
|||
|
||||
#include <config.h>
|
||||
#include <stdio.h>
|
||||
#include <setjmp.h>
|
||||
|
||||
#include "lisp.h"
|
||||
#include "blockinput.h"
|
||||
|
|
|
@ -24,7 +24,6 @@ along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>. */
|
|||
#include <stdio.h>
|
||||
#include <errno.h>
|
||||
#include <limits.h>
|
||||
#include <setjmp.h>
|
||||
|
||||
#include <c-ctype.h>
|
||||
|
||||
|
|
|
@ -18,7 +18,6 @@ along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>. */
|
|||
|
||||
#include <config.h>
|
||||
#include <stdio.h>
|
||||
#include <setjmp.h>
|
||||
|
||||
#include "lisp.h"
|
||||
#include "frame.h"
|
||||
|
|
|
@ -21,8 +21,6 @@ along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>. */
|
|||
|
||||
#include <config.h>
|
||||
#include <stdio.h>
|
||||
#include <setjmp.h>
|
||||
|
||||
#include <fontconfig/fontconfig.h>
|
||||
#include <fontconfig/fcfreetype.h>
|
||||
|
||||
|
|
|
@ -21,7 +21,6 @@ along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>. */
|
|||
|
||||
#include <config.h>
|
||||
#include <stdio.h>
|
||||
#include <setjmp.h>
|
||||
#include <X11/Xlib.h>
|
||||
|
||||
#include "lisp.h"
|
||||
|
|
|
@ -18,7 +18,6 @@ along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>. */
|
|||
|
||||
#include <config.h>
|
||||
#include <errno.h>
|
||||
#include <setjmp.h>
|
||||
|
||||
#include "lisp.h"
|
||||
#include "process.h"
|
||||
|
|
|
@ -22,7 +22,6 @@ along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>. */
|
|||
#ifdef USE_GTK
|
||||
#include <float.h>
|
||||
#include <stdio.h>
|
||||
#include <setjmp.h>
|
||||
|
||||
#include <c-ctype.h>
|
||||
|
||||
|
|
21
src/image.c
21
src/image.c
|
@ -5514,6 +5514,13 @@ init_png_functions (Lisp_Object libraries)
|
|||
|
||||
#endif /* HAVE_NTGUI */
|
||||
|
||||
/* Possibly inefficient/inexact substitutes for _setjmp and _longjmp.
|
||||
Do not use sys_setjmp, as PNG supports only jmp_buf. The _longjmp
|
||||
substitute may munge the signal mask, but that should be OK here. */
|
||||
#ifndef HAVE__SETJMP
|
||||
# define _setjmp(j) setjmp (j)
|
||||
# define _longjmp longjmp
|
||||
#endif
|
||||
|
||||
#if (PNG_LIBPNG_VER < 10500)
|
||||
#define PNG_LONGJMP(ptr) (_longjmp ((ptr)->jmpbuf, 1))
|
||||
|
@ -5593,7 +5600,7 @@ png_read_from_file (png_structp png_ptr, png_bytep data, png_size_t length)
|
|||
|
||||
struct png_load_context
|
||||
{
|
||||
/* These are members so that _longjmp doesn't munge local variables. */
|
||||
/* These are members so that longjmp doesn't munge local variables. */
|
||||
png_struct *png_ptr;
|
||||
png_info *info_ptr;
|
||||
png_info *end_info;
|
||||
|
@ -6129,9 +6136,9 @@ jpeg_resync_to_restart_wrapper (j_decompress_ptr cinfo, int desired)
|
|||
struct my_jpeg_error_mgr
|
||||
{
|
||||
struct jpeg_error_mgr pub;
|
||||
jmp_buf setjmp_buffer;
|
||||
sys_jmp_buf setjmp_buffer;
|
||||
|
||||
/* The remaining members are so that _longjmp doesn't munge local
|
||||
/* The remaining members are so that longjmp doesn't munge local
|
||||
variables. */
|
||||
struct jpeg_decompress_struct cinfo;
|
||||
enum
|
||||
|
@ -6151,7 +6158,7 @@ my_error_exit (j_common_ptr cinfo)
|
|||
{
|
||||
struct my_jpeg_error_mgr *mgr = (struct my_jpeg_error_mgr *) cinfo->err;
|
||||
mgr->failure_code = MY_JPEG_ERROR_EXIT;
|
||||
_longjmp (mgr->setjmp_buffer, 1);
|
||||
sys_longjmp (mgr->setjmp_buffer, 1);
|
||||
}
|
||||
|
||||
|
||||
|
@ -6401,7 +6408,7 @@ jpeg_load_body (struct frame *f, struct image *img,
|
|||
error is detected. This function will perform a longjmp. */
|
||||
mgr->cinfo.err = fn_jpeg_std_error (&mgr->pub);
|
||||
mgr->pub.error_exit = my_error_exit;
|
||||
if (_setjmp (mgr->setjmp_buffer))
|
||||
if (sys_setjmp (mgr->setjmp_buffer))
|
||||
{
|
||||
switch (mgr->failure_code)
|
||||
{
|
||||
|
@ -6460,14 +6467,14 @@ jpeg_load_body (struct frame *f, struct image *img,
|
|||
if (!check_image_size (f, width, height))
|
||||
{
|
||||
mgr->failure_code = MY_JPEG_INVALID_IMAGE_SIZE;
|
||||
_longjmp (mgr->setjmp_buffer, 1);
|
||||
sys_longjmp (mgr->setjmp_buffer, 1);
|
||||
}
|
||||
|
||||
/* Create X image and pixmap. */
|
||||
if (!x_create_x_image_and_pixmap (f, width, height, 0, &ximg, &img->pixmap))
|
||||
{
|
||||
mgr->failure_code = MY_JPEG_CANNOT_CREATE_X;
|
||||
_longjmp (mgr->setjmp_buffer, 1);
|
||||
sys_longjmp (mgr->setjmp_buffer, 1);
|
||||
}
|
||||
|
||||
/* Allocate colors. When color quantization is used,
|
||||
|
|
|
@ -19,7 +19,6 @@ along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>. */
|
|||
|
||||
#include <config.h>
|
||||
#include <stdio.h>
|
||||
#include <setjmp.h>
|
||||
|
||||
#include "lisp.h"
|
||||
#include "character.h"
|
||||
|
|
|
@ -19,7 +19,6 @@ along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>. */
|
|||
|
||||
|
||||
#include <config.h>
|
||||
#include <setjmp.h>
|
||||
|
||||
#include <intprops.h>
|
||||
|
||||
|
|
|
@ -41,7 +41,6 @@ along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>. */
|
|||
|
||||
#define INTERVALS_INLINE EXTERN_INLINE
|
||||
|
||||
#include <setjmp.h>
|
||||
#include <intprops.h>
|
||||
#include "lisp.h"
|
||||
#include "intervals.h"
|
||||
|
|
|
@ -22,7 +22,7 @@ along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>. */
|
|||
#define KEYBOARD_INLINE EXTERN_INLINE
|
||||
|
||||
#include <stdio.h>
|
||||
#include <setjmp.h>
|
||||
|
||||
#include "lisp.h"
|
||||
#include "termchar.h"
|
||||
#include "termopts.h"
|
||||
|
@ -145,7 +145,7 @@ static ptrdiff_t before_command_echo_length;
|
|||
|
||||
/* For longjmp to where kbd input is being done. */
|
||||
|
||||
static jmp_buf getcjmp;
|
||||
static sys_jmp_buf getcjmp;
|
||||
|
||||
/* True while doing kbd input. */
|
||||
int waiting_for_input;
|
||||
|
@ -434,8 +434,8 @@ static Lisp_Object modify_event_symbol (ptrdiff_t, int, Lisp_Object,
|
|||
Lisp_Object *, ptrdiff_t);
|
||||
static Lisp_Object make_lispy_switch_frame (Lisp_Object);
|
||||
static int help_char_p (Lisp_Object);
|
||||
static void save_getcjmp (jmp_buf);
|
||||
static void restore_getcjmp (jmp_buf);
|
||||
static void save_getcjmp (sys_jmp_buf);
|
||||
static void restore_getcjmp (sys_jmp_buf);
|
||||
static Lisp_Object apply_modifiers (int, Lisp_Object);
|
||||
static void clear_event (struct input_event *);
|
||||
static Lisp_Object restore_kboard_configuration (Lisp_Object);
|
||||
|
@ -2315,8 +2315,8 @@ read_char (int commandflag, ptrdiff_t nmaps, Lisp_Object *maps,
|
|||
{
|
||||
volatile Lisp_Object c;
|
||||
ptrdiff_t jmpcount;
|
||||
jmp_buf local_getcjmp;
|
||||
jmp_buf save_jump;
|
||||
sys_jmp_buf local_getcjmp;
|
||||
sys_jmp_buf save_jump;
|
||||
volatile int key_already_recorded = 0;
|
||||
Lisp_Object tem, save;
|
||||
volatile Lisp_Object previous_echo_area_message;
|
||||
|
@ -2562,7 +2562,7 @@ read_char (int commandflag, ptrdiff_t nmaps, Lisp_Object *maps,
|
|||
it *must not* be in effect when we call redisplay. */
|
||||
|
||||
jmpcount = SPECPDL_INDEX ();
|
||||
if (_setjmp (local_getcjmp))
|
||||
if (sys_setjmp (local_getcjmp))
|
||||
{
|
||||
/* Handle quits while reading the keyboard. */
|
||||
/* We must have saved the outer value of getcjmp here,
|
||||
|
@ -3394,13 +3394,13 @@ record_char (Lisp_Object c)
|
|||
See read_process_output. */
|
||||
|
||||
static void
|
||||
save_getcjmp (jmp_buf temp)
|
||||
save_getcjmp (sys_jmp_buf temp)
|
||||
{
|
||||
memcpy (temp, getcjmp, sizeof getcjmp);
|
||||
}
|
||||
|
||||
static void
|
||||
restore_getcjmp (jmp_buf temp)
|
||||
restore_getcjmp (sys_jmp_buf temp)
|
||||
{
|
||||
memcpy (getcjmp, temp, sizeof getcjmp);
|
||||
}
|
||||
|
@ -10979,7 +10979,7 @@ quit_throw_to_read_char (int from_signal)
|
|||
do_switch_frame (make_lispy_switch_frame (internal_last_event_frame),
|
||||
0, 0, Qnil);
|
||||
|
||||
_longjmp (getcjmp, 1);
|
||||
sys_longjmp (getcjmp, 1);
|
||||
}
|
||||
|
||||
DEFUN ("set-input-interrupt-mode", Fset_input_interrupt_mode,
|
||||
|
|
|
@ -40,7 +40,7 @@ along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>. */
|
|||
|
||||
#include <config.h>
|
||||
#include <stdio.h>
|
||||
#include <setjmp.h>
|
||||
|
||||
#include "lisp.h"
|
||||
#include "commands.h"
|
||||
#include "character.h"
|
||||
|
|
20
src/lisp.h
20
src/lisp.h
|
@ -20,6 +20,7 @@ along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>. */
|
|||
#ifndef EMACS_LISP_H
|
||||
#define EMACS_LISP_H
|
||||
|
||||
#include <setjmp.h>
|
||||
#include <stdalign.h>
|
||||
#include <stdarg.h>
|
||||
#include <stdbool.h>
|
||||
|
@ -1963,7 +1964,24 @@ extern void defvar_kboard (struct Lisp_Kboard_Objfwd *, const char *, int);
|
|||
static struct Lisp_Kboard_Objfwd ko_fwd; \
|
||||
defvar_kboard (&ko_fwd, lname, offsetof (KBOARD, vname ## _)); \
|
||||
} while (0)
|
||||
|
||||
/* Save and restore the instruction and environment pointers,
|
||||
without affecting the signal mask. */
|
||||
|
||||
#ifdef HAVE__SETJMP
|
||||
typedef jmp_buf sys_jmp_buf;
|
||||
# define sys_setjmp(j) _setjmp (j)
|
||||
# define sys_longjmp(j, v) _longjmp (j, v)
|
||||
#elif defined HAVE_SIGSETJMP
|
||||
typedef sigjmp_buf sys_jmp_buf;
|
||||
# define sys_setjmp(j) sigsetjmp (j, 0)
|
||||
# define sys_longjmp(j, v) siglongjmp (j, v)
|
||||
#else
|
||||
/* A non-POSIX platform; assume longjmp does not affect the sigmask. */
|
||||
typedef jmp_buf sys_jmp_buf;
|
||||
# define sys_setjmp(j) setjmp (j)
|
||||
# define sys_longjmp(j, v) longjmp (j, v)
|
||||
#endif
|
||||
|
||||
|
||||
/* Structure for recording Lisp call stack for backtrace purposes. */
|
||||
|
@ -2056,7 +2074,7 @@ struct catchtag
|
|||
Lisp_Object volatile val;
|
||||
struct catchtag *volatile next;
|
||||
struct gcpro *gcpro;
|
||||
jmp_buf jmp;
|
||||
sys_jmp_buf jmp;
|
||||
struct backtrace *backlist;
|
||||
struct handler *handlerlist;
|
||||
EMACS_INT lisp_eval_depth;
|
||||
|
|
|
@ -25,7 +25,6 @@ along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>. */
|
|||
#include <sys/file.h>
|
||||
#include <errno.h>
|
||||
#include <limits.h> /* For CHAR_BIT. */
|
||||
#include <setjmp.h>
|
||||
#include <stat-time.h>
|
||||
#include "lisp.h"
|
||||
#include "intervals.h"
|
||||
|
|
|
@ -19,7 +19,7 @@ along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>. */
|
|||
|
||||
|
||||
#include <config.h>
|
||||
#include <setjmp.h>
|
||||
|
||||
#include "lisp.h"
|
||||
#include "macros.h"
|
||||
#include "commands.h"
|
||||
|
|
|
@ -18,7 +18,7 @@ along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>. */
|
|||
|
||||
|
||||
#include <config.h>
|
||||
#include <setjmp.h>
|
||||
|
||||
#include "lisp.h"
|
||||
#include "character.h"
|
||||
#include "buffer.h"
|
||||
|
|
|
@ -20,7 +20,6 @@ along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>. */
|
|||
|
||||
#include <config.h>
|
||||
#include <stdio.h>
|
||||
#include <setjmp.h>
|
||||
#include <limits.h> /* for INT_MAX */
|
||||
|
||||
#include "lisp.h"
|
||||
|
|
|
@ -21,7 +21,6 @@ along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>. */
|
|||
#include <config.h>
|
||||
#include <errno.h>
|
||||
#include <stdio.h>
|
||||
#include <setjmp.h>
|
||||
|
||||
#include "lisp.h"
|
||||
#include "commands.h"
|
||||
|
|
|
@ -31,7 +31,6 @@ Updated by Christian Limpach (chris@nice.ch)
|
|||
#include <config.h>
|
||||
|
||||
#include <math.h>
|
||||
#include <setjmp.h>
|
||||
#include <c-strcase.h>
|
||||
|
||||
#include "lisp.h"
|
||||
|
|
|
@ -23,7 +23,6 @@
|
|||
/* This should be the first include, as it may set up #defines affecting
|
||||
interpretation of even the system includes. */
|
||||
#include <config.h>
|
||||
#include <setjmp.h>
|
||||
|
||||
#include "lisp.h"
|
||||
#include "dispextern.h"
|
||||
|
|
|
@ -28,7 +28,6 @@ Updated by Christian Limpach (chris@nice.ch)
|
|||
/* This should be the first include, as it may set up #defines affecting
|
||||
interpretation of even the system includes. */
|
||||
#include <config.h>
|
||||
#include <setjmp.h>
|
||||
|
||||
#include "lisp.h"
|
||||
#include "dispextern.h"
|
||||
|
|
|
@ -24,7 +24,6 @@
|
|||
/* This should be the first include, as it may set up #defines affecting
|
||||
interpretation of even the system includes. */
|
||||
#include <config.h>
|
||||
#include <setjmp.h>
|
||||
|
||||
#include "lisp.h"
|
||||
#include "window.h"
|
||||
|
|
|
@ -28,7 +28,6 @@ Updated by Christian Limpach (chris@nice.ch)
|
|||
/* This should be the first include, as it may set up #defines affecting
|
||||
interpretation of even the system includes. */
|
||||
#include <config.h>
|
||||
#include <setjmp.h>
|
||||
|
||||
#include "lisp.h"
|
||||
#include "nsterm.h"
|
||||
|
|
|
@ -35,7 +35,6 @@ Updated by Christian Limpach (chris@nice.ch)
|
|||
#include <time.h>
|
||||
#include <signal.h>
|
||||
#include <unistd.h>
|
||||
#include <setjmp.h>
|
||||
|
||||
#include <c-ctype.h>
|
||||
#include <c-strcase.h>
|
||||
|
|
|
@ -21,7 +21,7 @@ along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>. */
|
|||
|
||||
#include <config.h>
|
||||
#include <stdio.h>
|
||||
#include <setjmp.h>
|
||||
|
||||
#include "lisp.h"
|
||||
#include "character.h"
|
||||
#include "buffer.h"
|
||||
|
|
|
@ -25,12 +25,9 @@ along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>. */
|
|||
|
||||
#include <stdio.h>
|
||||
#include <errno.h>
|
||||
#include <setjmp.h>
|
||||
#include <sys/types.h> /* Some typedefs are used in sys/file.h. */
|
||||
#include <sys/file.h>
|
||||
#include <sys/stat.h>
|
||||
#include <setjmp.h>
|
||||
|
||||
#include <unistd.h>
|
||||
#include <fcntl.h>
|
||||
|
||||
|
@ -5421,7 +5418,7 @@ read_process_output (Lisp_Object proc, register int channel)
|
|||
|
||||
/* Sending data to subprocess */
|
||||
|
||||
static jmp_buf send_process_frame;
|
||||
static sys_jmp_buf send_process_frame;
|
||||
static Lisp_Object process_sent_to;
|
||||
|
||||
static _Noreturn void
|
||||
|
@ -5431,7 +5428,7 @@ handle_pipe_signal (int sig)
|
|||
sigemptyset (&unblocked);
|
||||
sigaddset (&unblocked, SIGPIPE);
|
||||
pthread_sigmask (SIG_UNBLOCK, &unblocked, 0);
|
||||
_longjmp (send_process_frame, 1);
|
||||
sys_longjmp (send_process_frame, 1);
|
||||
}
|
||||
|
||||
static void
|
||||
|
@ -5640,7 +5637,7 @@ send_process (volatile Lisp_Object proc, const char *volatile buf,
|
|||
/* 2000-09-21: Emacs 20.7, sparc-sun-solaris-2.6, GCC 2.95.2,
|
||||
CFLAGS="-g -O": The value of the parameter `proc' is clobbered
|
||||
when returning with longjmp despite being declared volatile. */
|
||||
if (!_setjmp (send_process_frame))
|
||||
if (!sys_setjmp (send_process_frame))
|
||||
{
|
||||
p = XPROCESS (proc); /* Repair any setjmp clobbering. */
|
||||
process_sent_to = proc;
|
||||
|
|
|
@ -25,7 +25,7 @@ along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>. */
|
|||
#ifdef emacs
|
||||
|
||||
#include <config.h>
|
||||
#include <setjmp.h>
|
||||
|
||||
#include "lisp.h" /* Needed for VALBITS. */
|
||||
#include "blockinput.h"
|
||||
|
||||
|
|
|
@ -126,7 +126,6 @@
|
|||
that make sense only in Emacs. */
|
||||
#ifdef emacs
|
||||
|
||||
# include <setjmp.h>
|
||||
# include "lisp.h"
|
||||
# include "character.h"
|
||||
# include "buffer.h"
|
||||
|
|
|
@ -21,7 +21,6 @@ along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>. */
|
|||
|
||||
#include <config.h>
|
||||
#include <stdio.h>
|
||||
#include <setjmp.h>
|
||||
|
||||
#include "lisp.h"
|
||||
#include "character.h"
|
||||
|
|
|
@ -21,7 +21,7 @@ along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>. */
|
|||
|
||||
#include <config.h>
|
||||
#include <stdio.h>
|
||||
#include <setjmp.h>
|
||||
|
||||
#include "lisp.h"
|
||||
#include "termchar.h"
|
||||
#include "dispextern.h"
|
||||
|
|
|
@ -20,7 +20,7 @@ along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>. */
|
|||
|
||||
|
||||
#include <config.h>
|
||||
#include <setjmp.h>
|
||||
|
||||
#include "lisp.h"
|
||||
#include "syntax.h"
|
||||
#include "category.h"
|
||||
|
|
|
@ -20,7 +20,7 @@ along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>. */
|
|||
|
||||
#include <config.h>
|
||||
#include <stdio.h>
|
||||
#include <setjmp.h>
|
||||
|
||||
#include "lisp.h"
|
||||
|
||||
#include <unistd.h>
|
||||
|
@ -93,4 +93,3 @@ report_sheap_usage (int die_if_pure_storage_exceeded)
|
|||
bss_sbrk_ptr - bss_sbrk_buffer, STATIC_HEAP_SIZE);
|
||||
message ("%s", buf);
|
||||
}
|
||||
|
||||
|
|
|
@ -44,7 +44,7 @@ along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>. */
|
|||
#include <unistd.h>
|
||||
#include <sys/types.h>
|
||||
#include <errno.h>
|
||||
#include <setjmp.h>
|
||||
|
||||
#include "lisp.h"
|
||||
#include "dispextern.h"
|
||||
#include "atimer.h"
|
||||
|
|
|
@ -21,7 +21,7 @@ along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>. */
|
|||
#include <config.h>
|
||||
|
||||
#include <sys/types.h>
|
||||
#include <setjmp.h>
|
||||
|
||||
#include "lisp.h"
|
||||
#include "commands.h"
|
||||
#include "character.h"
|
||||
|
|
|
@ -23,7 +23,6 @@ along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>. */
|
|||
|
||||
#include <execinfo.h>
|
||||
#include <stdio.h>
|
||||
#include <setjmp.h>
|
||||
#ifdef HAVE_PWD_H
|
||||
#include <pwd.h>
|
||||
#include <grp.h>
|
||||
|
|
|
@ -25,7 +25,6 @@ along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>. */
|
|||
#include <sys/file.h>
|
||||
#include <sys/time.h>
|
||||
#include <unistd.h>
|
||||
#include <setjmp.h>
|
||||
|
||||
#include "lisp.h"
|
||||
#include "termchar.h"
|
||||
|
|
|
@ -19,7 +19,6 @@ Boston, MA 02110-1301, USA. */
|
|||
|
||||
/* Emacs config.h may rename various library functions such as malloc. */
|
||||
#include <config.h>
|
||||
#include <setjmp.h>
|
||||
#include <sys/file.h>
|
||||
#include <fcntl.h>
|
||||
#include <unistd.h>
|
||||
|
|
|
@ -21,7 +21,6 @@ along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>. */
|
|||
#define TERMHOOKS_INLINE EXTERN_INLINE
|
||||
|
||||
#include <stdio.h>
|
||||
#include <setjmp.h>
|
||||
|
||||
#include "lisp.h"
|
||||
#include "frame.h"
|
||||
|
|
|
@ -19,7 +19,6 @@ along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>. */
|
|||
#include <config.h>
|
||||
#include "tparam.h"
|
||||
|
||||
#include <setjmp.h>
|
||||
#include "lisp.h"
|
||||
|
||||
/* Define these variables that serve as global parameters to termcap,
|
||||
|
|
|
@ -17,7 +17,7 @@ You should have received a copy of the GNU General Public License
|
|||
along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>. */
|
||||
|
||||
#include <config.h>
|
||||
#include <setjmp.h>
|
||||
|
||||
#include "lisp.h"
|
||||
#include "intervals.h"
|
||||
#include "character.h"
|
||||
|
|
|
@ -19,7 +19,7 @@ Boston, MA 02110-1301, USA. */
|
|||
|
||||
/* Emacs config.h may rename various library functions such as malloc. */
|
||||
#include <config.h>
|
||||
#include <setjmp.h>
|
||||
|
||||
#include "lisp.h" /* for xmalloc */
|
||||
#include "tparam.h"
|
||||
|
||||
|
|
|
@ -18,7 +18,7 @@ along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>. */
|
|||
|
||||
|
||||
#include <config.h>
|
||||
#include <setjmp.h>
|
||||
|
||||
#include "lisp.h"
|
||||
#include "character.h"
|
||||
#include "buffer.h"
|
||||
|
|
|
@ -89,7 +89,6 @@ static int adjust_lnnoptrs (int, int, const char *);
|
|||
|
||||
static int pagemask;
|
||||
|
||||
#include <setjmp.h>
|
||||
#include "lisp.h"
|
||||
|
||||
static void
|
||||
|
|
|
@ -120,7 +120,6 @@ static int pagemask;
|
|||
|
||||
#define ADDR_CORRECT(x) ((char *)(x) - (char*)0)
|
||||
|
||||
#include <setjmp.h>
|
||||
#include "lisp.h"
|
||||
|
||||
static void
|
||||
|
|
|
@ -21,7 +21,6 @@ along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>. */
|
|||
#include <config.h>
|
||||
#include "unexec.h"
|
||||
|
||||
#include <setjmp.h>
|
||||
#include <lisp.h>
|
||||
#include <stdio.h>
|
||||
#include <fcntl.h>
|
||||
|
|
|
@ -4,7 +4,6 @@
|
|||
#include "unexec.h"
|
||||
|
||||
#include <dlfcn.h>
|
||||
#include <setjmp.h>
|
||||
|
||||
#include "lisp.h"
|
||||
#include "character.h"
|
||||
|
|
|
@ -17,7 +17,6 @@ You should have received a copy of the GNU General Public License
|
|||
along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>. */
|
||||
|
||||
#include <config.h>
|
||||
#include <setjmp.h>
|
||||
#include <unistd.h> /* for 'environ', on AIX */
|
||||
#include "lisp.h"
|
||||
#include "mem-limits.h"
|
||||
|
|
|
@ -30,7 +30,7 @@ along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>. */
|
|||
|
||||
#include <config.h>
|
||||
#include <stdio.h>
|
||||
#include <setjmp.h>
|
||||
|
||||
#include "lisp.h"
|
||||
#include "xterm.h"
|
||||
|
||||
|
|
|
@ -23,7 +23,6 @@ along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>. */
|
|||
#define WINDOW_INLINE EXTERN_INLINE
|
||||
|
||||
#include <stdio.h>
|
||||
#include <setjmp.h>
|
||||
|
||||
#include "lisp.h"
|
||||
#include "character.h"
|
||||
|
|
|
@ -273,7 +273,6 @@ along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>. */
|
|||
#include <config.h>
|
||||
#include <stdio.h>
|
||||
#include <limits.h>
|
||||
#include <setjmp.h>
|
||||
|
||||
#include "lisp.h"
|
||||
#include "keyboard.h"
|
||||
|
|
|
@ -204,7 +204,6 @@ along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>. */
|
|||
#include <sys/types.h>
|
||||
#include <sys/stat.h>
|
||||
#include <stdio.h> /* This needs to be before termchar.h */
|
||||
#include <setjmp.h>
|
||||
|
||||
#include "lisp.h"
|
||||
#include "character.h"
|
||||
|
|
|
@ -20,7 +20,6 @@ along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>. */
|
|||
#include <config.h>
|
||||
#include <stdio.h>
|
||||
#include <math.h>
|
||||
#include <setjmp.h>
|
||||
#include <unistd.h>
|
||||
|
||||
/* This makes the fields of a Display accessible, in Xlib header files. */
|
||||
|
|
|
@ -21,7 +21,6 @@ along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>. */
|
|||
|
||||
#include <config.h>
|
||||
#include <stdio.h>
|
||||
#include <setjmp.h>
|
||||
#include <X11/Xlib.h>
|
||||
|
||||
#include "lisp.h"
|
||||
|
|
|
@ -21,7 +21,6 @@ along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>. */
|
|||
|
||||
#include <config.h>
|
||||
#include <stdio.h>
|
||||
#include <setjmp.h>
|
||||
#include <X11/Xlib.h>
|
||||
#include <X11/Xft/Xft.h>
|
||||
|
||||
|
|
|
@ -19,14 +19,12 @@ along with GNU Emacs. If not, see <http§://www.gnu.org/licenses/>. */
|
|||
|
||||
#include <config.h>
|
||||
|
||||
#include <setjmp.h>
|
||||
#include "xgselect.h"
|
||||
|
||||
#if defined (USE_GTK) || defined (HAVE_GCONF) || defined (HAVE_GSETTINGS)
|
||||
|
||||
#include <glib.h>
|
||||
#include <errno.h>
|
||||
#include <setjmp.h>
|
||||
#include "xterm.h"
|
||||
|
||||
int
|
||||
|
|
|
@ -33,7 +33,6 @@ along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>. */
|
|||
#include <config.h>
|
||||
|
||||
#include <stdio.h>
|
||||
#include <setjmp.h>
|
||||
|
||||
#include "lisp.h"
|
||||
#include "keyboard.h"
|
||||
|
|
|
@ -20,7 +20,6 @@ along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>. */
|
|||
|
||||
#ifdef HAVE_LIBXML2
|
||||
|
||||
#include <setjmp.h>
|
||||
#include <libxml/tree.h>
|
||||
#include <libxml/parser.h>
|
||||
#include <libxml/HTMLparser.h>
|
||||
|
|
|
@ -26,7 +26,6 @@ along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>. */
|
|||
#include <epaths.h>
|
||||
|
||||
#include <stdio.h>
|
||||
#include <setjmp.h>
|
||||
|
||||
#include "lisp.h"
|
||||
|
||||
|
|
|
@ -22,7 +22,6 @@ along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>. */
|
|||
#include <config.h>
|
||||
#include <limits.h>
|
||||
#include <stdio.h> /* termhooks.h needs this */
|
||||
#include <setjmp.h>
|
||||
|
||||
#ifdef HAVE_SYS_TYPES_H
|
||||
#include <sys/types.h>
|
||||
|
|
|
@ -21,7 +21,6 @@ along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>. */
|
|||
|
||||
#include <float.h>
|
||||
#include <limits.h>
|
||||
#include <setjmp.h>
|
||||
#include <fcntl.h>
|
||||
#include "lisp.h"
|
||||
#include "xterm.h"
|
||||
|
@ -711,12 +710,12 @@ apply_xft_settings (struct x_display_info *dpyinfo,
|
|||
if (send_event_p)
|
||||
store_config_changed_event (Qfont_render,
|
||||
XCAR (dpyinfo->name_list_element));
|
||||
Vxft_settings
|
||||
Vxft_settings
|
||||
= make_formatted_string (buf, format,
|
||||
oldsettings.aa, oldsettings.hinting,
|
||||
oldsettings.rgba, oldsettings.lcdfilter,
|
||||
oldsettings.hintstyle, oldsettings.dpi);
|
||||
|
||||
|
||||
}
|
||||
else
|
||||
FcPatternDestroy (pat);
|
||||
|
|
|
@ -29,7 +29,6 @@ along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>. */
|
|||
#include <unistd.h>
|
||||
#include <sys/param.h>
|
||||
#include <stdio.h>
|
||||
#include <setjmp.h>
|
||||
|
||||
#include "lisp.h"
|
||||
#include "systime.h"
|
||||
|
|
|
@ -22,7 +22,6 @@ along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>. */
|
|||
|
||||
#include <config.h>
|
||||
#include <stdio.h>
|
||||
#include <setjmp.h>
|
||||
|
||||
#ifdef HAVE_X_WINDOWS
|
||||
|
||||
|
@ -47,7 +46,6 @@ along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>. */
|
|||
|
||||
#include <fcntl.h>
|
||||
#include <errno.h>
|
||||
#include <setjmp.h>
|
||||
#include <sys/stat.h>
|
||||
/* Caused redefinition of DBL_DIG on Netbsd; seems not to be needed. */
|
||||
/* #include <sys/param.h> */
|
||||
|
|
Loading…
Add table
Reference in a new issue