# This is a patch for xemacs-21.4.11 to update it to xemacs-21.4.12 # # To apply this patch: # STEP 1: Chdir to the source directory. # STEP 2: Run the 'applypatch' program with this patch file as input. # # If you do not have 'applypatch', it is part of the 'makepatch' package # that you can fetch from the Comprehensive Perl Archive Network: # http://www.perl.com/CPAN/authors/Johan_Vromans/makepatch-x.y.tar.gz # In the above URL, 'x' should be 2 or higher. # # To apply this patch without the use of 'applypatch': # STEP 1: Chdir to the source directory. # If you have a decent Bourne-type shell: # STEP 2: Run the shell with this file as input. # If you don't have such a shell, you may need to manually create # the files as shown below. # STEP 3: Run the 'patch' program with this file as input. # # These are the commands needed to create/delete files/directories: # touch './src/s/cygwin.sc' chmod 0755 './src/s/cygwin.sc' # # This command terminates the shell and need not be executed manually. exit # #### End of Preamble #### #### Patch data follows #### diff --text -u 'xemacs-21.4.11/CHANGES-release' 'xemacs-21.4.12/CHANGES-release' Index: ./CHANGES-release --- ./CHANGES-release Fri Jan 3 18:58:52 2003 +++ ./CHANGES-release Wed Jan 15 23:25:45 2003 @@ -22,6 +22,17 @@ For more details, including developers involved and dates, see the ChangeLogs, or use CVS diff to view the patches. +to 21.4.12 "Portable Code" + +-- Fix: Type typos (welcome back!) -- Martin Buchholz +-- Fix: Cygwin link breakage with new binutils -- Sergey Okhapkin +-- Fix: Cygwin: Bump stack size to 8MB for large regexps -- Andy Piper +-- Fix: Cygwin build breakage from Ben's printing patch -- Rick Rankin +-- Fix: Don't require GNOME for Mozilla -- Ville Skyttä +-- Fix: nnimap hangs in process output -- Daiki Ueno +-- Update: about.el information -- Ilya Golubev +-- Update: More tests/automated/regexp-tests.el cases -- Stephen Turnbull + to 21.4.11 "Native Windows TTY Support" -- (**) More menubar options for browse-url -- Ville Skyttä diff --text -u 'xemacs-21.4.11/ChangeLog' 'xemacs-21.4.12/ChangeLog' Index: ./ChangeLog --- ./ChangeLog Fri Jan 3 19:06:08 2003 +++ ./ChangeLog Thu Jan 16 01:19:44 2003 @@ -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 --text -u 'xemacs-21.4.11/configure' 'xemacs-21.4.12/configure' Index: ./configure --- ./configure Fri Jan 3 19:06:07 2003 +++ ./configure Thu Jan 16 01:19:44 2003 @@ -7078,7 +7078,7 @@ 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 --text -u 'xemacs-21.4.11/configure.in' 'xemacs-21.4.12/configure.in' Index: ./configure.in --- ./configure.in Fri Jan 3 18:58:54 2003 +++ ./configure.in Tue Jan 7 12:57:03 2003 @@ -2936,7 +2936,7 @@ 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 --text -u 'xemacs-21.4.11/lib-src/ChangeLog' 'xemacs-21.4.12/lib-src/ChangeLog' Index: ./lib-src/ChangeLog --- ./lib-src/ChangeLog Fri Jan 3 19:06:08 2003 +++ ./lib-src/ChangeLog Thu Jan 16 01:19:44 2003 @@ -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 --text -u 'xemacs-21.4.11/lisp/ChangeLog' 'xemacs-21.4.12/lisp/ChangeLog' Index: ./lisp/ChangeLog --- ./lisp/ChangeLog Fri Jan 3 19:06:08 2003 +++ ./lisp/ChangeLog Thu Jan 16 01:19:44 2003 @@ -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 --text -u 'xemacs-21.4.11/lisp/about.el' 'xemacs-21.4.12/lisp/about.el' Index: ./lisp/about.el --- ./lisp/about.el Tue Aug 20 20:34:33 2002 +++ ./lisp/about.el Wed Jan 15 16:24:40 2003 @@ -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 @@ (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 @@ (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 --text -u 'xemacs-21.4.11/lisp/isearch-mode.el' 'xemacs-21.4.12/lisp/isearch-mode.el' Index: ./lisp/isearch-mode.el --- ./lisp/isearch-mode.el Fri Apr 13 03:21:28 2001 +++ ./lisp/isearch-mode.el Wed Jan 15 12:55:56 2003 @@ -238,6 +238,13 @@ ;; 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 --text -u 'xemacs-21.4.11/lisp/menubar-items.el' 'xemacs-21.4.12/lisp/menubar-items.el' Index: ./lisp/menubar-items.el --- ./lisp/menubar-items.el Mon Dec 16 20:20:33 2002 +++ ./lisp/menubar-items.el Tue Jan 7 12:57:11 2003 @@ -970,12 +970,12 @@ (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 --text -u 'xemacs-21.4.11/lwlib/ChangeLog' 'xemacs-21.4.12/lwlib/ChangeLog' Index: ./lwlib/ChangeLog --- ./lwlib/ChangeLog Fri Jan 3 19:06:08 2003 +++ ./lwlib/ChangeLog Thu Jan 16 01:19:44 2003 @@ -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 --text -u 'xemacs-21.4.11/lwlib/lwlib-Xm.c' 'xemacs-21.4.12/lwlib/lwlib-Xm.c' Index: ./lwlib/lwlib-Xm.c --- ./lwlib/lwlib-Xm.c Tue Aug 20 20:35:16 2002 +++ ./lwlib/lwlib-Xm.c Wed Jan 15 21:17:56 2003 @@ -896,10 +896,12 @@ 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 --text -u 'xemacs-21.4.11/man/ChangeLog' 'xemacs-21.4.12/man/ChangeLog' Index: ./man/ChangeLog --- ./man/ChangeLog Fri Jan 3 19:06:09 2003 +++ ./man/ChangeLog Thu Jan 16 01:19:44 2003 @@ -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 --text -u 'xemacs-21.4.11/netinstall/ChangeLog' 'xemacs-21.4.12/netinstall/ChangeLog' Index: ./netinstall/ChangeLog Prereq: 1.2.2.19 --- ./netinstall/ChangeLog Fri Jan 3 19:06:09 2003 +++ ./netinstall/ChangeLog Thu Jan 16 01:19:45 2003 @@ -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 --text -u 'xemacs-21.4.11/nt/ChangeLog' 'xemacs-21.4.12/nt/ChangeLog' Index: ./nt/ChangeLog --- ./nt/ChangeLog Fri Jan 3 19:06:09 2003 +++ ./nt/ChangeLog Thu Jan 16 01:19:45 2003 @@ -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 --text -u 'xemacs-21.4.11/src/ChangeLog' 'xemacs-21.4.12/src/ChangeLog' Index: ./src/ChangeLog --- ./src/ChangeLog Fri Jan 3 19:06:09 2003 +++ ./src/ChangeLog Thu Jan 16 01:19:45 2003 @@ -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 --text -u 'xemacs-21.4.11/src/Makefile.in.in' 'xemacs-21.4.12/src/Makefile.in.in' Index: ./src/Makefile.in.in --- ./src/Makefile.in.in Tue Oct 23 17:35:29 2001 +++ ./src/Makefile.in.in Wed Jan 15 21:18:00 2003 @@ -153,6 +153,9 @@ 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 --text -u 'xemacs-21.4.11/src/config.h.in' 'xemacs-21.4.12/src/config.h.in' Index: ./src/config.h.in --- ./src/config.h.in Tue Aug 20 20:36:42 2002 +++ ./src/config.h.in Wed Jan 15 21:18:00 2003 @@ -42,6 +42,8 @@ #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 @@ #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 --text -u 'xemacs-21.4.11/src/emacs.c' 'xemacs-21.4.12/src/emacs.c' Index: ./src/emacs.c --- ./src/emacs.c Fri Jan 3 18:59:44 2003 +++ ./src/emacs.c Wed Jan 15 21:18:00 2003 @@ -180,6 +180,10 @@ #include "sysfile.h" #include "systime.h" +#ifdef CYGWIN +#include "syswindows.h" +#endif + #ifdef PDUMP #include "dumper.h" #endif @@ -2909,7 +2913,8 @@ /* 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 @@ #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 --text -u 'xemacs-21.4.11/src/process-unix.c' 'xemacs-21.4.12/src/process-unix.c' Index: ./src/process-unix.c --- ./src/process-unix.c Fri Nov 1 00:08:28 2002 +++ ./src/process-unix.c Tue Jan 7 12:57:17 2003 @@ -892,6 +892,7 @@ #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 --text -u 'xemacs-21.4.11/src/redisplay-x.c' 'xemacs-21.4.12/src/redisplay-x.c' Index: ./src/redisplay-x.c --- ./src/redisplay-x.c Tue Aug 20 20:37:59 2002 +++ ./src/redisplay-x.c Wed Jan 15 21:18:01 2003 @@ -972,8 +972,8 @@ /* 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 --text -u /dev/null 'xemacs-21.4.12/src/s/cygwin.sc' Index: ././src/s/cygwin.sc --- ././src/s/cygwin.sc Thu Jan 1 09:00:00 1970 +++ ././src/s/cygwin.sc Wed Jan 15 21:18:08 2003 @@ -0,0 +1,112 @@ +/* Default linker script, for normal executables */ +OUTPUT_FORMAT(pei-i386) +SEARCH_DIR("/usr/i686-pc-cygwin/lib"); SEARCH_DIR("/usr/lib"); SEARCH_DIR("/usr/lib/w32api"); +ENTRY(_mainCRTStartup) +SECTIONS +{ + .text __image_base__ + __section_alignment__ : + { + *(.init) + *(.text) + *(SORT(.text$*)) + *(.glue_7t) + *(.glue_7) + ___CTOR_LIST__ = .; __CTOR_LIST__ = . ; + LONG (-1); *(SORT(.ctors.*)); *(.ctors); *(.ctor); LONG (0); + ___DTOR_LIST__ = .; __DTOR_LIST__ = . ; + LONG (-1); *(SORT(.dtors.*)); *(.dtors); *(.dtor); LONG (0); + *(.fini) + /* ??? Why is .gcc_exc here? */ + *(.gcc_exc) + etext = .; + *(.gcc_except_table) + } + /* The Cygwin32 library uses a section to avoid copying certain data + on fork. This used to be named ".data". The linker used + to include this between __data_start__ and __data_end__, but that + breaks building the cygwin32 dll. Instead, we name the section + ".data_cygwin_nocopy" and explictly include it after __data_end__. */ + .data BLOCK(__section_alignment__) : + { + __data_start__ = . ; + *(.data) + *(.data2) + *(SORT(.data$*)) + __data_end__ = . ; + *(.data_cygwin_nocopy) + } + .bss BLOCK(__section_alignment__) : + { + __bss_start__ = . ; + *(.bss) + *(COMMON) + __bss_end__ = . ; + } + .rdata BLOCK(__section_alignment__) : + { + *(.rdata) + *(SORT(.rdata$*)) + *(.eh_frame) + ___RUNTIME_PSEUDO_RELOC_LIST__ = .; + __RUNTIME_PSEUDO_RELOC_LIST__ = .; + *(.rdata_runtime_pseudo_reloc) + ___RUNTIME_PSEUDO_RELOC_LIST_END__ = .; + __RUNTIME_PSEUDO_RELOC_LIST_END__ = .; + } + .pdata BLOCK(__section_alignment__) : + { + *(.pdata) + } + .edata BLOCK(__section_alignment__) : + { + *(.edata) + } + /DISCARD/ : + { + *(.debug$S) + *(.debug$T) + *(.debug$F) + *(.drectve) + } + .idata BLOCK(__section_alignment__) : + { + /* This cannot currently be handled with grouped sections. + See pe.em:sort_sections. */ + SORT(*)(.idata$2) + SORT(*)(.idata$3) + /* These zeroes mark the end of the import list. */ + LONG (0); LONG (0); LONG (0); LONG (0); LONG (0); + SORT(*)(.idata$4) + SORT(*)(.idata$5) + SORT(*)(.idata$6) + SORT(*)(.idata$7) + } + .CRT BLOCK(__section_alignment__) : + { + *(SORT(.CRT$*)) + } + .endjunk BLOCK(__section_alignment__) : + { + /* end is deprecated, don't use it */ + end = .; + _end = .; + __end__ = .; + } + .rsrc BLOCK(__section_alignment__) : + { + *(.rsrc) + *(SORT(.rsrc$*)) + } + .reloc BLOCK(__section_alignment__) : + { + *(.reloc) + } + .stab BLOCK(__section_alignment__) (NOLOAD) : + { + [ .stab ] + } + .stabstr BLOCK(__section_alignment__) (NOLOAD) : + { + [ .stabstr ] + } +} diff --text -u 'xemacs-21.4.11/src/syntax.c' 'xemacs-21.4.12/src/syntax.c' Index: ./src/syntax.c --- ./src/syntax.c Fri Nov 1 00:08:51 2002 +++ ./src/syntax.c Wed Jan 15 21:18:02 2003 @@ -426,7 +426,7 @@ 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 --text -u 'xemacs-21.4.11/src/syntax.h' 'xemacs-21.4.12/src/syntax.h' Index: ./src/syntax.h --- ./src/syntax.h Fri Nov 1 00:08:54 2002 +++ ./src/syntax.h Wed Jan 15 21:18:02 2003 @@ -74,10 +74,10 @@ /* 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 @@ 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 --text -u 'xemacs-21.4.11/src/unexcw.c' 'xemacs-21.4.12/src/unexcw.c' Index: ./src/unexcw.c --- ./src/unexcw.c Wed Jul 25 16:45:40 2001 +++ ./src/unexcw.c Thu Jan 9 18:32:45 2003 @@ -54,6 +54,7 @@ #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 @@ } 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 --text -u 'xemacs-21.4.11/tests/ChangeLog' 'xemacs-21.4.12/tests/ChangeLog' Index: ./tests/ChangeLog --- ./tests/ChangeLog Fri Jan 3 19:06:09 2003 +++ ./tests/ChangeLog Thu Jan 16 01:19:45 2003 @@ -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 --text -u 'xemacs-21.4.11/tests/automated/regexp-tests.el' 'xemacs-21.4.12/tests/automated/regexp-tests.el' Index: ./tests/automated/regexp-tests.el --- ./tests/automated/regexp-tests.el Fri Dec 27 17:12:20 2002 +++ ./tests/automated/regexp-tests.el Tue Jan 7 12:57:20 2003 @@ -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 --text -u 'xemacs-21.4.11/version.sh' 'xemacs-21.4.12/version.sh' Index: ./version.sh --- ./version.sh Fri Jan 3 19:06:09 2003 +++ ./version.sh Thu Jan 16 01:19:45 2003 @@ -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 #### End of Patch data #### #### ApplyPatch data follows #### # Data version : 1.0 # Date generated : Thu Jan 16 01:19:54 2003 # Generated by : makepatch 2.00_07* # Recurse directories : Yes # Excluded files : (\A|/).*\~\Z # (\A|/).*\.a\Z # (\A|/).*\.bak\Z # (\A|/).*\.BAK\Z # (\A|/).*\.elc\Z # (\A|/).*\.exe\Z # (\A|/).*\.gz\Z # (\A|/).*\.ln\Z # (\A|/).*\.o\Z # (\A|/).*\.obj\Z # (\A|/).*\.olb\Z # (\A|/).*\.old\Z # (\A|/).*\.orig\Z # (\A|/).*\.rej\Z # (\A|/).*\.so\Z # (\A|/).*\.Z\Z # (\A|/)\.del\-.*\Z # (\A|/)\.make\.state\Z # (\A|/)\.nse_depinfo\Z # (\A|/)core\Z # (\A|/)tags\Z # (\A|/)TAGS\Z # (\A|/).*\~\Z # (\A|/)\.cvsignore\Z # (\A|/)CVS\Z # (\A|/)MANIFEST\Z # (\A|/)\.precious\Z # (\A|/)TAGS\Z # (\A|/)xemacs\-packages\Z # (\A|/)mule\-packages\Z # (\A|/).*\.gz\Z # (\A|/)display\Z # (\A|/)TUTORIAL\.ru\Z # (\A|/)TUTORIAL\.th\Z # (\A|/).*\.png\Z # (\A|/).*\.bmp\Z # (\A|/).*\.ico\Z # (\A|/).*\.elc\Z # (\A|/).*\.info.*\Z # p './CHANGES-release' 17750 1042640745 0100644 # p './ChangeLog' 153607 1042647584 0100644 # p './configure' 460804 1042647584 0100755 # p './configure.in' 175202 1041911823 0100644 # p './lib-src/ChangeLog' 41097 1042647584 0100644 # p './lisp/ChangeLog' 359547 1042647584 0100644 # p './lisp/about.el' 90113 1042615480 0100644 # p './lisp/isearch-mode.el' 75980 1042602956 0100644 # p './lisp/menubar-items.el' 74409 1041911831 0100644 # p './lwlib/ChangeLog' 24373 1042647584 0100644 # p './lwlib/lwlib-Xm.c' 63995 1042633076 0100644 # p './man/ChangeLog' 92048 1042647584 0100644 # p './netinstall/ChangeLog' 9159 1042647585 0100644 # p './nt/ChangeLog' 42176 1042647585 0100644 # p './src/ChangeLog' 349434 1042647585 0100644 # p './src/Makefile.in.in' 24286 1042633080 0100644 # p './src/config.h.in' 25791 1042633080 0100644 # p './src/emacs.c' 119366 1042633080 0100644 # p './src/process-unix.c' 61584 1041911837 0100644 # p './src/redisplay-x.c' 64499 1042633081 0100644 # c './src/s/cygwin.sc' 0 1042633088 0100755 # p './src/syntax.c' 68132 1042633082 0100644 # p './src/syntax.h' 23643 1042633082 0100644 # p './src/unexcw.c' 16144 1042104765 0100644 # p './tests/ChangeLog' 13416 1042647585 0100644 # p './tests/automated/regexp-tests.el' 9526 1041911840 0100644 # p './version.sh' 231 1042647585 0100644 #### End of ApplyPatch data #### #### End of Patch kit [created: Thu Jan 16 01:19:54 2003] #### #### Patch checksum: 732 26456 6990 #### #### Checksum: 762 27538 32235 ####