From 1bbdeb3a4ec887b8a6bcacb0384a978cc3b1f6f5 Mon Sep 17 00:00:00 2001 From: tomo Date: Sat, 12 Jul 2003 08:09:33 +0000 Subject: [PATCH] XEmacs 21.4.12 "Portable Code". --- ChangeLog | 13 +++++++++++++ configure | 2 +- configure.in | 2 +- lib-src/ChangeLog | 4 ++++ lisp/ChangeLog | 26 ++++++++++++++++++++++++++ lisp/about.el | 21 ++++++++++++++++++--- lisp/isearch-mode.el | 7 +++++++ lisp/menubar-items.el | 6 +++--- lwlib/ChangeLog | 9 +++++++++ lwlib/lwlib-Xm.c | 2 ++ man/ChangeLog | 4 ++++ netinstall/ChangeLog | 8 ++++++-- nt/ChangeLog | 4 ++++ src/ChangeLog | 32 ++++++++++++++++++++++++++++++++ src/Makefile.in.in | 3 +++ src/config.h.in | 10 ++++++++++ src/emacs.c | 10 ++++++++-- src/process-unix.c | 1 + src/redisplay-x.c | 4 ++-- src/syntax.c | 2 +- src/syntax.h | 8 ++++---- src/unexcw.c | 4 ++++ tests/ChangeLog | 9 +++++++++ tests/automated/regexp-tests.el | 15 +++++++++++++++ version.sh | 4 ++-- 25 files changed, 189 insertions(+), 21 deletions(-) diff --git a/ChangeLog b/ChangeLog index 70ae2c8..3067e31 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,16 @@ +2003-01-15 Stephen J. Turnbull + + * XEmacs 21.4.12 "Portable Code" is released. + +2003-01-13 Ilya Golubev + + * etc/photos/golubev.png, etc/photos/golubevm.png: New. + +2003-01-05 Rick Rankin + + * configure.in: Add -lkernel32 to the list of system libraries + linked under Cygwin. Needed for IsBadReadPtr(). + 2003-01-03 Stephen J. Turnbull * XEmacs 21.4.11 "Native Windows TTY Support" is released. diff --git a/configure b/configure index e7c08cb..3363fa8 100755 --- a/configure +++ b/configure @@ -7078,7 +7078,7 @@ EOF fi install_pp="$blddir/lib-src/installexe.sh" - libs_system="$libs_system -lshell32 -lgdi32 -luser32 -lcomdlg32 -lcomctl32 -lwinspool" && if test "$extra_verbose" = "yes"; then echo " Appending \"-lshell32 -lgdi32 -luser32 -lcomdlg32 -lcomctl32 -lwinspool\" to \$libs_system"; fi + libs_system="$libs_system -lshell32 -lgdi32 -luser32 -lcomdlg32 -lcomctl32 -lkernel32 -lwinspool" && if test "$extra_verbose" = "yes"; then echo " Appending \"-lshell32 -lgdi32 -luser32 -lcomdlg32 -lcomctl32 -lkernel32 -lwinspool\" to \$libs_system"; fi test "$with_dragndrop" != no && dragndrop_proto="$dragndrop_proto msw" && if test "$extra_verbose" = "yes"; then echo " Appending \"msw\" to \$dragndrop_proto"; fi if test "$window_system" != x11; then window_system=msw diff --git a/configure.in b/configure.in index d762714..7dbf2d9 100644 --- a/configure.in +++ b/configure.in @@ -2936,7 +2936,7 @@ if test "$with_msw" != "no"; then fi install_pp="$blddir/lib-src/installexe.sh" - XE_APPEND(-lshell32 -lgdi32 -luser32 -lcomdlg32 -lcomctl32 -lwinspool, libs_system) + XE_APPEND(-lshell32 -lgdi32 -luser32 -lcomdlg32 -lcomctl32 -lkernel32 -lwinspool, libs_system) test "$with_dragndrop" != no && XE_APPEND(msw, dragndrop_proto) if test "$window_system" != x11; then window_system=msw diff --git a/lib-src/ChangeLog b/lib-src/ChangeLog index 1f607b1..f0cbd83 100644 --- a/lib-src/ChangeLog +++ b/lib-src/ChangeLog @@ -1,3 +1,7 @@ +2003-01-15 Stephen J. Turnbull + + * XEmacs 21.4.12 "Portable Code" is released. + 2003-01-03 Stephen J. Turnbull * XEmacs 21.4.11 "Native Windows TTY Support" is released. diff --git a/lisp/ChangeLog b/lisp/ChangeLog index c2fc568..999fad7 100644 --- a/lisp/ChangeLog +++ b/lisp/ChangeLog @@ -1,3 +1,29 @@ +2003-01-15 Stephen J. Turnbull + + * XEmacs 21.4.12 "Portable Code" is released. + +2003-01-13 Ilya Golubev + + * about.el: Update golubev data. + +2003-01-15 Stephen J. Turnbull + + * isearch-mode.el (isearch-mode-map): Substitute comment on + desirability, and back out "GR is printable" changes. + +2003-01-08 Stephen J. Turnbull + + * isearch-mode.el (isearch-mode-map): Don't bind CSI. + +2003-01-07 Stephen J. Turnbull + + * isearch-mode.el (isearch-mode-map): GR (and C1) is printable. + +2003-01-06 Ville Skyttä + + * menubar-items.el (default-menubar): Use browse-url-mozilla + instead of browse-url-gnome-moz for Mozilla. + 2003-01-03 Stephen J. Turnbull * XEmacs 21.4.11 "Native Windows TTY Support" is released. diff --git a/lisp/about.el b/lisp/about.el index a0f5714..635b2a1 100644 --- a/lisp/about.el +++ b/lisp/about.el @@ -114,7 +114,7 @@ (dv "Didier Verna" "didier@xemacs.org") (eb "Eric Benson" "eb@xemacs.org") (fabrice "Fabrice Popineau" "fabrice@xemacs.org") - (golubev "I N Golubev" "golubev@xemacs.org") + (golubev "Ilya Golubev" "golubev@xemacs.org") (gunnar "Gunnar Evermann" "gunnar@xemacs.org") (hbs "Harlan Sexton" "hbs@xemacs.org") (hisashi "Hisashi Miyashita" "hisashi@xemacs.org") @@ -955,7 +955,19 @@ It is included in the TeX Live cdrom edited by Sebastian Rahtz.\n") (golubev (widget-insert "\ -Sorry, no personal information available about me yet.\n")) +I appreciate power of XEmacs, but elementary editing operations should +be done by single keystrokes with no modifiers. So would not use +XEmacs until discovered viper, and now can't live without viper. +Occasionally dislike something in there or in other free software, and +try to get it fixed. .plan file contains classic (perhaps reinvented +independently) formula: + +Hacking world for ever + +(borrowed from \"Hacking X for Y\" in ") + (about-url-link "http://www.jargon.org/" + "Jargon File" "www.jargon.org") + (widget-insert ").\n")) (gunnar (widget-insert "\ @@ -1523,7 +1535,10 @@ I also contributed elisp code long ago to make Gnus run under XEmacs.\n")) (golubev (widget-insert "\ -Sorry, no information about my XEmacs contributions yet.\n")) +Used XEmacs since early 1997. Fixed bugs that annoy me, both in +XEmacs core and in packages I use, mostly viper. Hoping to get +coding-cookie package distributed, which is also a fix of what I +consider a bug.\n")) (gunnar (widget-insert "\ diff --git a/lisp/isearch-mode.el b/lisp/isearch-mode.el index 3cb2440..70b7929 100644 --- a/lisp/isearch-mode.el +++ b/lisp/isearch-mode.el @@ -238,6 +238,13 @@ Default nil means edit the string from the search ring first." ;; then it would terminate the search and be executed without this. (let ((i 32) (str (make-string 1 0))) + ;; #### GR (and C1 too, in KOI8 and Windows-land at least) should + ;; be printing. But that breaks on high-bit-is-meta brain-damage. + ;; At least in no-mule, the high bit is treated as a meta bit. + ;; With GR treated as printable in isearch, any meta command + ;; events will not be executed because they are treated as GR + ;; characters by isearch, but then there is an error because + ;; event-to-character (properly) returns nil. (while (< i 127) (aset str 0 i) (define-key map str 'isearch-printing-char) diff --git a/lisp/menubar-items.el b/lisp/menubar-items.el index 487617a..1c410a3 100644 --- a/lisp/menubar-items.el +++ b/lisp/menubar-items.el @@ -970,12 +970,12 @@ which will not be used as accelerators." (fboundp 'browse-url-kde))] ["Mo%_zilla" (customize-set-variable 'browse-url-browser-function - 'browse-url-gnome-moz) + 'browse-url-mozilla) :style radio :selected (and (boundp 'browse-url-browser-function) - (eq browse-url-browser-function 'browse-url-gnome-moz)) + (eq browse-url-browser-function 'browse-url-mozilla)) :active (and (boundp 'browse-url-browser-function) - (fboundp 'browse-url-gnome-moz))] + (fboundp 'browse-url-mozilla))] ["G%_aleon" (customize-set-variable 'browse-url-browser-function 'browse-url-galeon) diff --git a/lwlib/ChangeLog b/lwlib/ChangeLog index 9a36377..cc6b7a3 100644 --- a/lwlib/ChangeLog +++ b/lwlib/ChangeLog @@ -1,3 +1,12 @@ +2003-01-15 Stephen J. Turnbull + + * XEmacs 21.4.12 "Portable Code" is released. + +2003-01-14 Stephen J. Turnbull + + * lwlib-Xm.c (): Don't reference xm_update_progress + --without-widgets. Thanks Martin Buchholz . + 2003-01-03 Stephen J. Turnbull * XEmacs 21.4.11 "Native Windows TTY Support" is released. diff --git a/lwlib/lwlib-Xm.c b/lwlib/lwlib-Xm.c index acd68df..55402d5 100644 --- a/lwlib/lwlib-Xm.c +++ b/lwlib/lwlib-Xm.c @@ -896,10 +896,12 @@ xm_update_one_widget (widget_instance* instance, Widget widget, xm_update_scrollbar (instance, widget, val); } #endif +#ifdef LWLIB_WIDGETS_MOTIF else if (class == xmScaleWidgetClass) { xm_update_progress (instance, widget, val); } +#endif /* Lastly update our global arg values. */ if (val->args && val->args->nargs) XtSetValues (widget, val->args->args, val->args->nargs); diff --git a/man/ChangeLog b/man/ChangeLog index 244c88e..38a58f0 100644 --- a/man/ChangeLog +++ b/man/ChangeLog @@ -1,3 +1,7 @@ +2003-01-15 Stephen J. Turnbull + + * XEmacs 21.4.12 "Portable Code" is released. + 2003-01-03 Stephen J. Turnbull * XEmacs 21.4.11 "Native Windows TTY Support" is released. diff --git a/netinstall/ChangeLog b/netinstall/ChangeLog index e3db2c2..6fb11d5 100644 --- a/netinstall/ChangeLog +++ b/netinstall/ChangeLog @@ -1,3 +1,7 @@ +2003-01-15 Stephen J. Turnbull + + * XEmacs 21.4.12 "Portable Code" is released. + 2003-01-03 Stephen J. Turnbull * XEmacs 21.4.11 "Native Windows TTY Support" is released. @@ -354,6 +358,6 @@ * all: port from cygwin setup. -%%% $Id: ChangeLog,v 1.2.2.19 2002/12/12 06:21:23 stephent Exp $ -$Revision: 1.2.2.19 $ +%%% $Id: ChangeLog,v 1.2.2.20 2003/01/03 10:49:30 stephent Exp $ +$Revision: 1.2.2.20 $ diff --git a/nt/ChangeLog b/nt/ChangeLog index e8185fc..b711a91 100644 --- a/nt/ChangeLog +++ b/nt/ChangeLog @@ -1,3 +1,7 @@ +2003-01-15 Stephen J. Turnbull + + * XEmacs 21.4.12 "Portable Code" is released. + 2003-01-03 Stephen J. Turnbull * XEmacs 21.4.11 "Native Windows TTY Support" is released. diff --git a/src/ChangeLog b/src/ChangeLog index 9533df0..03c25d8 100644 --- a/src/ChangeLog +++ b/src/ChangeLog @@ -1,3 +1,35 @@ +2003-01-15 Stephen J. Turnbull + + * XEmacs 21.4.12 "Portable Code" is released. + +2003-01-14 Sergey Okhapkin + + * Makefile.in.in (ldflags): re-order sections for gcc 3.2. + * s/cygwin.sc: new linker file. + +2003-01-14 Stephen J. Turnbull + + Build fixes courtesy Martin Buchholz : + + * redisplay-x.c (x_output_string): Use X11-specified types. + * syntax.c, syntax.h (SYNTAX_CODE): Use enum syntaxcode, not int. + * emacs.c (__free_hook): Use typeof with Intel compiler. + * config.h.in (alloca.h): Quick safe hack to please Intel compiler. + +2003-01-08 Andy Piper + + * unexcw.c (copy_executable_and_dump_data_section): Set the stack + reserve size during unexec(). + +2003-01-07 Daiki Ueno + + * process-unix.c (unix_create_process): Don't let outchannel block. + +2003-01-05 Rick Rankin + + * emacs.c: Include "syswindows.h" when compiling under Cygwin. + Needed for IsBadReadPtr(). + 2003-01-03 Stephen J. Turnbull * XEmacs 21.4.11 "Native Windows TTY Support" is released. diff --git a/src/Makefile.in.in b/src/Makefile.in.in index 2a5dc11..733b02a 100644 --- a/src/Makefile.in.in +++ b/src/Makefile.in.in @@ -153,6 +153,9 @@ cppflags = $(CPPFLAGS) -Demacs -I. $(c_switch_all) cflags = $(CFLAGS) $(cppflags) #if defined (WIN32_NATIVE) || defined (CYGWIN) ldflags = $(LDFLAGS) -mwindows -e _mainCRTStartup $(ld_switch_all) $(ld_dynamic_link_flags) +# if defined (CYGWIN) +ldflags += -Wl,--script=s/cygwin.sc +# endif #else ldflags = $(LDFLAGS) $(ld_switch_all) $(ld_dynamic_link_flags) #endif diff --git a/src/config.h.in b/src/config.h.in index 50a3c11..3a10221 100644 --- a/src/config.h.in +++ b/src/config.h.in @@ -42,6 +42,8 @@ Boston, MA 02111-1307, USA. */ #elif defined __DECC #include #pragma intrinsic(alloca) +#elif defined __INTEL_COMPILER && defined HAVE_ALLOCA_H +/* defer #include to end of file */ #elif defined HAVE_ALLOCA_H #include #elif defined(_AIX) @@ -903,4 +905,12 @@ on various systems. */ #undef PDUMP +#ifndef NOT_C_CODE +#if defined __INTEL_COMPILER && defined HAVE_ALLOCA_H +/* icc's alloca.h pulls in , + but that must be done after _GNU_SOURCE and friends are defined */ +#include +#endif +#endif /* C code */ + #endif /* _SRC_CONFIG_H_ */ diff --git a/src/emacs.c b/src/emacs.c index ee1c8a2..ea67ffc 100644 --- a/src/emacs.c +++ b/src/emacs.c @@ -180,6 +180,10 @@ version 18.59 released October 31, 1992. #include "sysfile.h" #include "systime.h" +#ifdef CYGWIN +#include "syswindows.h" +#endif + #ifdef PDUMP #include "dumper.h" #endif @@ -2909,7 +2913,8 @@ voodoo_free_hook (void *mem) /* Disable all calls to free() when XEmacs is exiting and it doesn't */ /* matter. */ __free_hook = -#ifdef __GNUC__ /* prototype of __free_hook varies with glibc version */ +#if defined __GNUC__ || defined __INTEL_COMPILER +/* prototype of __free_hook varies with glibc version */ (__typeof__ (__free_hook)) #endif voodoo_free_hook; @@ -2983,7 +2988,8 @@ all of which are called before XEmacs is actually killed. #if defined(GNU_MALLOC) __free_hook = -#ifdef __GNUC__ /* prototype of __free_hook varies with glibc version */ +#if defined __GNUC__ || defined __INTEL_COMPILER +/* prototype of __free_hook varies with glibc version */ (__typeof__ (__free_hook)) #endif voodoo_free_hook; diff --git a/src/process-unix.c b/src/process-unix.c index e7fcc3d..0d57c95 100644 --- a/src/process-unix.c +++ b/src/process-unix.c @@ -892,6 +892,7 @@ unix_create_process (Lisp_Process *p, #endif set_descriptor_non_blocking (inchannel); + set_descriptor_non_blocking (outchannel); /* Record this as an active process, with its channels. As a result, child_setup will close Emacs's side of the pipes. */ diff --git a/src/redisplay-x.c b/src/redisplay-x.c index d74bb3e..ff49eb5 100644 --- a/src/redisplay-x.c +++ b/src/redisplay-x.c @@ -972,8 +972,8 @@ x_output_string (struct window *w, struct display_line *dl, /* We draw underlines in the same color as the text. */ if (cachel->underline) { - long upos; - long uthick; + unsigned long upos; + unsigned long uthick; XFontStruct *xfont; xfont = FONT_INSTANCE_X_FONT (XFONT_INSTANCE (font)); diff --git a/src/syntax.c b/src/syntax.c index 42628c5..db3faba 100644 --- a/src/syntax.c +++ b/src/syntax.c @@ -426,7 +426,7 @@ update_syntax_cache (int pos, int count) else if (CONSP (tmp_table) && INTP (XCAR (tmp_table))) { syntax_cache.use_code = 1; - syntax_cache.syntax_code = XINT (XCAR(tmp_table)); + syntax_cache.syntax_code = (enum syntaxcode) XINT (XCAR (tmp_table)); } else { diff --git a/src/syntax.h b/src/syntax.h index 8ea4fcb..3502cfb 100644 --- a/src/syntax.h +++ b/src/syntax.h @@ -74,10 +74,10 @@ enum syntaxcode charset_syntax (struct buffer *buf, Lisp_Object charset, /* Return the syntax code for a particular character and mirror table. */ #define SYNTAX_CODE_UNSAFE(table, c) \ - XINT (CHAR_TABLE_VALUE_UNSAFE (table, c)) + ((enum syntaxcode) XINT (CHAR_TABLE_VALUE_UNSAFE (table, c))) -INLINE_HEADER int SYNTAX_CODE (Lisp_Char_Table *table, Emchar c); -INLINE_HEADER int +INLINE_HEADER enum syntaxcode SYNTAX_CODE (Lisp_Char_Table *table, Emchar c); +INLINE_HEADER enum syntaxcode SYNTAX_CODE (Lisp_Char_Table *table, Emchar c) { return SYNTAX_CODE_UNSAFE (table, c); @@ -390,7 +390,7 @@ struct syntax_cache syntax table to the cache. */ Lisp_Object object; /* The buffer or string the current syntax cache applies to. */ - int syntax_code; /* Syntax code of current char. */ + enum syntaxcode syntax_code; /* Syntax code of current char. */ Lisp_Object current_syntax_table; /* Syntax table for current pos. */ Lisp_Object old_prop; /* Syntax-table prop at prev pos. */ diff --git a/src/unexcw.c b/src/unexcw.c index 1b8ad08..81a38b1 100644 --- a/src/unexcw.c +++ b/src/unexcw.c @@ -54,6 +54,7 @@ unexec (char *, char *, void *, void *, void *) #include #endif +#define STACK_SIZE 0x800000 #define ALLOC_UNIT 0xFFFF #define ALLOC_MASK ~((unsigned long)(ALLOC_UNIT)) #define ALIGN_ALLOC(addr) \ @@ -340,6 +341,9 @@ copy_executable_and_dump_data_section (int a_out, int a_new) } f_ohdr.dsize=new_data_size; f_ohdr.bsize=BSS_PAD_SIZE; + /* Prevent stack overflow with regexp usage. */ + f_ohdr.SizeOfStackReserve = STACK_SIZE; + if (write(a_new, &f_ohdr, sizeof(f_ohdr)) != sizeof(f_ohdr)) { PERROR("failed to write optional header"); diff --git a/tests/ChangeLog b/tests/ChangeLog index 4eedfc9..a3aeca8 100644 --- a/tests/ChangeLog +++ b/tests/ChangeLog @@ -1,3 +1,12 @@ +2003-01-15 Stephen J. Turnbull + + * XEmacs 21.4.12 "Portable Code" is released. + +2003-01-06 Stephen J. Turnbull + + * automated/regexp-tests.el (stale match data): Stale match data + persists after failed match. Thanks to . + 2003-01-03 Stephen J. Turnbull * XEmacs 21.4.11 "Native Windows TTY Support" is released. diff --git a/tests/automated/regexp-tests.el b/tests/automated/regexp-tests.el index 6c1fcba..ea42480 100644 --- a/tests/automated/regexp-tests.el +++ b/tests/automated/regexp-tests.el @@ -272,3 +272,18 @@ (Assert (not (string-match "@[A]" (string ?@ ch1)))) (Assert (eq (string-match "@[^A]" (string ?@ ch1)) 0)) (Assert (not (string-match "@?A" (string ?@ ch1)))))) + +;; More stale match data tests. +;; Thanks to . +(Assert (not (progn (string-match "a" "a") + (string-match "b" "a") + (match-string 0 "a")))) +(Assert (not (progn (string-match "a" "a") + (string-match "b" "a") + (match-string 1 "a")))) +(Assert (not (progn (string-match "\\(a\\)" "a") + (string-match "\\(b\\)" "a") + (match-string 0 "a")))) +(Assert (not (progn (string-match "\\(a\\)" "a") + (string-match "\\(b\\)" "a") + (match-string 1 "a")))) diff --git a/version.sh b/version.sh index 0077e5d..5b6ebaf 100644 --- a/version.sh +++ b/version.sh @@ -2,8 +2,8 @@ emacs_is_beta= emacs_major_version=21 emacs_minor_version=4 -emacs_beta_version=11 -xemacs_codename="Native Windows TTY Support" +emacs_beta_version=12 +xemacs_codename="Portable Code" emacs_kit_version= infodock_major_version=4 infodock_minor_version=0 -- 1.7.10.4