-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1
* XEmacs 21.5.11 "cabbage" is released.
"cabbage" is the 12th in the VEGETABLE series.
If the very thought of "cabbage" leaves a bitter taste in your mouth
you can relax. Because this latest serving from the XEmacs crew is
smooth and sweet.
There's way too much to consolidate into a couple of short paragraphs
here, but, to whet your appetite, here's a couple of teasers:
Remember all those process related bugs we've had for a while? Most
should be gone now.
Are you a lazy-lock person stuck in a lazy-shot world? Your time
has come, go turn on lazy-lock.
When you './configure --quick-build' you expect things to happen,
well, quick, right? Try it now, we've switched on the
after-burners.
Read on for further details.
For general information about XEmacs, the developers, and the user
community, see our home page,
http://www.xemacs.org/
* XEmacs 21.5.11 is "beta" software.
The usual "no warranty" disclaimer (see etc/WARRANTY, sections 10 and
11) applies. Being "beta" software means that you should expect to
encounter bugs, you should expect it to crash, and you really
shouldn't be using it for "mission crittical" tasks.
* Availability
Anonymous ftp:
ftp://ftp.xemacs.org/pub/xemacs/xemacs-21.5
See
http://www.xemacs.org/Install/. (Note that the tarball breakdown
is slightly different from that implied for 21.1. For 21.5, the
xemacs-21.5.11.tar.gz tarball contains the full contents of the
xemacs-21.5.11-{src,elc,info}.tar.gz tarballs.)
If you already have a 21.5.10 source tree, a patchkit is available in
xemacs-21.5.10-21.5.11.patch.gz. This does not update .elcs or .infos,
they will be rebuilt when you make XEmacs. If you have an earlier
version, you can repeatedly apply patchkits.
Also, if you don't have the packages yet, see
http://www.xemacs.org/Documentation/packageGuide.html.
Anonymous (pserver) CVS:
Anonymous CVS is available. We are very grateful to the staff at our
host, SunSITE.dk, for a lot of help and quick reponse to all our
requests.
To update to release 21.5.11, use the release tag "r21-5-11". To set
a sticky tag which will always update to the current release, use the
branch tag "r21-5-latest-beta".
For more details, see
http://www.xemacs.org/Develop/cvsaccess.html
* Brief summary of Changes to XEmacs 21.5.11 "cabbage"
to 21.5.11 "cabbage"
Lots of improvements and fixes this time around. One of our key
players, Ben Wing, has drastically improved font-locking (go turn on
lazy-lock to check it out). Apart from many other bug fixes, Ben
has also given us a speed up to the build process (--quick-build
configure option).
Other stars we should mention are: Mike Sperber, for window
configuration fixes and updates; Stephen Turnbull for build fixes,
documentation and typo fixes. Stephen also gave us some major updates
to autoload.el and wid-edit.el. And also Jerry James with some more
DSO updates.
Here are the highlights:
Build
- -- Updates to test suite - Turnbull.
- -- Use -no-autoloads with update-elc-2 - Wing.
- -- Check for strupr and strlwr - Sperber.
- -- Delete auto-autoloads.el* & cutom-load.el* files on make clean - Turnbull.
- -- Fix --srcdir processing - Turnbull.
- -- Define DLSYM_NEEDS_UNDERSCORE on Darwin - Turnbull.
- -- Use opsys=aix4-2 for AIX 5 and above - Buchholz.
- -- Make ellcc search XEmacs directories for include files 1st - James.
- -- Set stack-trace-on-error, load-always-display-messages - Wing.
- -- Overhaul update-elc.el, cus-dep, autoload (speed ups) - Wing.
- -- Various compiler warning fixes - Wing.
- -- FreeBSD updates in modules/Makefile.common - Pluim.
- -- Warning fix in eldap.c - James.
- -- Support C++ & KKCC compilation in Windows - Wing.
- -- Various fixups in nt/config.in.samp - Wing.
- -- Fixes in xemacs.mak - Wing.
- -- Clean up compile errors with C++ under Windows - Wing.
- -- Re-order sections in ldflags for gcc 3.2 - Okhapkin.
- -- Restore USE_XFONTSET - Turnbull.
- -- New symbol: DLSYM_NEEDS_UNDERSCORE - Turnbull.
- -- Guard against multiple definitions of _ALL_SOURCE - Buchholz.
- -- QUICK_BUILD updates - Wing.
Documentation
- -- Major update to configure.usage - Wing.
- -- New developer bio's - James, Skyttä, Golubev.
- -- Amendments/additions to PROBLEMS:
- PostgreSQL DSO with --error-checking=all - James.
- Consolidate Motif problems into one section - Turnbull.
- -- Amendments/additions to INSTALL:
- Recommend Mule - Turnbull.
- Deprecate stripped binaries - Turnbull.
- -- General tidy up of etc/BETA, rewrite sections dealing with packages
and building from scratch - Youngs.
- -- General doc fixes, typos etc - Youngs, Turnbull, Palmer, Wing.
- -- Fix xref in Auto-Saving - Aichner.
- -- Update Local.rules File section in packages.texi - Youngs.
- -- Clarify package hierarchy structure - Turnbull.
- -- Major fixup of internals.texi - Wing.
- -- Lots of Mule rewriting in lispref/mule.texi - Wing.
- -- Document USE_UNION_TYPE evilness - Wing.
- -- Document event-matches-key-specifier-p better - Wing.
- -- Change illegal (for C) '//' comments to '/* */' - Shelton, Turnbull.
Internals
- -- Synch rcs2log to GNU upstream - Youngs.
- -- Use symbolic name `XtExposeCompressMaximal' instead of `TRUE' in
xlwMenuClassRec - Buchholz.
- -- In xm_update_progress, don't define unless LWLIB_WIDGETS_MOTIF - Buchholz.
- -- Rename class -> class_ & new -> new_ - Wing.
- -- KKCC update in postgresql.c - Wing.
- -- KKCC update in eldap.c - James.
- -- Fix for unix_create_process - Ueno.
- -- Set stack reserve size during unexec() - Piper.
- -- Use 'struct htentry' not 'struct hentry' in elhash.c - Wing.
- -- New macros ALIST_LOOP_3, ALIST_LOOP_4.
- -- Fix 'xemacs -batch -l dunnet' under Cygwin - Wing.
- -- Implement delaying of XFlush() if pending expose events - Wing.
- -- Fix some longstanding bugs in X quit handling - Wing.
- -- Correct the message output upon crashing to be more up-to-date - Wing.
- -- Add dp() & db() as short synonyms of debug_print() &
debug_backtrace() - Wing.
- -- Add C++ error-checking code to verify problems with GCPRO/UNGCPRO - Wing.
- -- Change the way gap arrays are allocated (for KKCC) - Wing.
- -- Now lcrecords set the type of items sitting on the free list to
lcrecord_type_free - Wing.
- -- All lcrecord allocation functions now zero out the returned
lcrecords - Wing.
- -- Additional asserts in FREE_FIXED_TYPE - Wing.
- -- Make bit vectors lcrecords, like vectors - Wing.
- -- MARKED_SLOT() call no longer includes semicolon - Wing.
- -- Factor out some code duplicated in KKCC and pdump - Wing.
- -- KKCC updates - Wing.
- -- Add a fifth field "flags" to memory_description - Wing.
- -- Add support for "description maps" - Wing.
- -- Redo XD_UNION so it works inline and change format to provide info
for pdump - Wing.
- -- Textual changes:
- lrecord_description -> memory_description - Wing.
- struct_description -> sized_memory_description - Wing.
- -- Initialize protect_me field of popup_data in set_frame_menubar - Sperber
- -- GTK updates - Sperber.
- -- Don't lead to a crash if dealing with a dead
window/frame/device/console - Sperber.
- -- Prevent crash for combination windows - Sperber.
- -- Window fixes in Fdelete_window - Sperber.
- -- Module updates in emodules.h - James.
- -- Fprovide from 'vars_of_file_coding' not 'syms_of_file_coding' -
Turnbull.
- -- Fix syntax of macro in 'mark_object_maybe_checking_free - Turnbull.
- -- Eliminate bogus require-prints-loading-message - Wing.
- -- Turn on `load-warn-when-source-newer' by default - Wing.
- -- Fix up crashes when selecting menubar items due to lack of GCPROing
- Wing.
- -- Implement tail-recursion in KKCC - Wing.
- -- Fix UTF-(8|16) detector - Wing.
- -- Fix problems with reentrant calling of lwlib and associated crashes
when selecting menu items - Wing.
- -- Improve redisplay handling of preemption - Wing.
- -- Return the parameter from strlvr, strupr, depend on !HAVE_STRUPR - James.
- -- In sysdll.c included lisp.h to define needed alloca_array - Begel.
- -- Pull GC_CHECK_NOT_FREE out of USE_KKCC - Sperber.
- -- Abort when any attempts to output a stream console are made - Wing.
- -- Formatting fixes in redisplay-output.c - Wing.
- -- Clean up redisplay a bit - Wing.
- -- Fix scrollbar code TTY devices don't have them - Sperber.
- -- Major reworking of profile code - Wing.
- -- Dramatically improve redisplay speed over slow X connections - Buchholz.
- -- Move syntax table description from buffer.c to syntax.c - Wing.
- -- Updates to char,mirror,syntax tables code - Wing.
- -- Niggly whitespace fixups - Wing.
Lisp API
- -- Updates to (japan|cryil)-util.el - Turnbull.
- -- Updates to how XEmacs computes various paths - Sperber.
- -- Window configuration fixes - Sperber, Wing.
- -- Make Info-insert-dir end n separator - Buchholz.
- -- Drastically reorganise autoload.el - Turnbull.
- -- Omit M-S-home/end from motion keys - Wing.
- -- Synch wid-edit to GNU/Emacs 21.3.50 - Turnbull.
- -- Updates to hyper-apropos - Wing.
- -- Reorganise Help -> Info submenu - Wing.
- -- Fix bug when end > start in text-props - Wing.
- -- Fix walk-windows - Wing.
- -- Fix for call to set-language-unicode-precedence-list - Nyyss~nen.
- -- Synch up byte-optimize.el - Wing.
- -- Include FUNLIST argument to generate-c-file-autoloads-1 - Wing.
- -------- ChangeLog Entries from ChangeLog --------
2003-02-16 Steve Youngs <youngs(a)xemacs.org>
* XEmacs 21.5.11 "cabbage" is released.
2003-02-15 Ben Wing <ben(a)xemacs.org>
* Makefile.in.in (batch_packages): Run update-elc-2 with -no-autoloads
to avoid multiple autoload-loading problem.
* configure.usage (--error-checking): Document quick-build better.
2003-01-28 Martin Buchholz <martin(a)xemacs.org>
* configure.in (opsys): (AIX specific)
Use opsys=aix4-2 for AIX 5 and all future versions.
2003-02-10 Stephen J. Turnbull <stephen(a)xemacs.org>
* INSTALL: Recommend Mule, deprecate stripped binaries.
2003-02-05 Stephen J. Turnbull <stephen(a)xemacs.org>
* configure.in (DLSYM_NEEDS_UNDERSCORE): Define on darwin.
* configure.in: Fix --srcdir processing.
2003-01-31 Stephen J. Turnbull <stephen(a)xemacs.org>
* PROBLEMS: Collect Motif information in one place.
2002-10-19 Stephen Turnbull <stephen(a)xemacs.org>
* Makefile.in.in (clean): Delete auto-autoloads.e* and custom-load.*
in lisp, lisp/mule, and modules.
2003-01-14 Jerry James <james(a)xemacs.org>
* PROBLEMS: Describe Steve Youngs' problem with the PostgreSQL
module and --error-checking=all.
2003-01-13 Ilya Golubev <golubev(a)xemacs.org>
* etc/photos/golubev.png, etc/photos/golubevm.png: New.
2003-01-12 Mike Sperber <mike(a)xemacs.org>
* configure.in: Check for strupr and strlwr.
2002-12-16 Ben Wing <ben(a)xemacs.org>
* INSTALL (Rationale):
* configure.in (XE_COMPUTE_RUNPATH):
* configure.usage (Usage):
* configure.usage (--xemacs-compiler):
* configure.usage (--srcdir):
* configure.usage (--with-prefix):
* configure.usage (--bindir): New.
* configure.usage (--datadir): New.
* configure.usage (--statedir): New.
* configure.usage (--libdir): New.
* configure.usage (--infodir): New.
* configure.usage (--mandir): New.
* configure.usage (--lispdir): New.
* configure.usage (--sitelispdir): New.
* configure.usage (--etcdir): New.
* configure.usage (--lockdir): New.
* configure.usage (--archlibdir): New.
* configure.usage (--docdir): New.
* configure.usage (--moduledir): New.
* configure.usage (--with-site-lisp): New.
* configure.usage (--with-site-modules): New.
* configure.usage (--package-path): New.
* configure.usage (--infopath): New.
* configure.usage (--with-xmu):
* configure.usage (--with-tty):
* configure.usage (--with-gif):
* configure.usage (--native-sound-lib):
* configure.usage (--with-xim): New.
* configure.usage (--with-clash-detection): New.
* configure.usage (--with-database):
* configure.usage (--mail-locking):
* configure.usage (--with-ipv6-cname): Removed.
* configure.usage (--error-checking):
Redo usage message more logically, fix some problems. In configure,
when outputting the compilation options, put in a big ugly warning
about using union-type, since it's been known to trigger so many
compiler bugs, invariably leading to weird crashes.
- -------- ChangeLog Entries from etc/ChangeLog --------
2003-02-16 Steve Youngs <youngs(a)xemacs.org>
* XEmacs 21.5.11 "cabbage" is released.
2003-02-13 Chris Palmer <chris(a)nodewarrior.org>
* BETA: Fixed typos and made consistent use of <...> for Internet
addresses.
2003-02-12 Jerry James <james(a)xemacs.org>
* photos/james.png, photos/jamesm.png: New files.
2003-02-04 Steve Youngs <youngs(a)xemacs.org>
* BETA: '-no-autoloads' implies '-vanilla' so suggest people
invoke 'xemacs -no-autoloads' when trying to reproduce a bug.
2003-02-03 Steve Youngs <youngs(a)xemacs.org>
* BETA: Update. General tidy up and rewrite sections dealing with
packages and building from scratch.
- -------- ChangeLog Entries from lib-src/ChangeLog --------
2003-02-16 Steve Youngs <youngs(a)xemacs.org>
* XEmacs 21.5.11 "cabbage" is released.
2003-01-14 Jerry James <james(a)xemacs.org>
* ellcc.c (do_compile_mode): Search XEmacs directories first for
include files. Thanks to Raymond Toy.
2003-01-28 Steve Youngs <youngs(a)xemacs.org>
* rcs2log: Synch to GNU version.
- -------- ChangeLog Entries from lisp/ChangeLog --------
2003-02-16 Steve Youngs <youngs(a)xemacs.org>
* XEmacs 21.5.11 "cabbage" is released.
2003-02-15 Ben Wing <ben(a)xemacs.org>
* make-docfile.el:
* make-docfile.el (message): New.
* make-docfile.el (format-decode): New.
* make-docfile.el (process-args): New.
* make-docfile.el ((preloaded-file-list)):
* make-docfile.el (docfile-out-of-date):
Use `message' (defined in this file) in place of `princ'/`print',
and put in a terpri, so that we get correct newline behavior.
Rewrite if-progn -> when and a few similar stylistic niceties.
And the big change: Allow MS Windows to specify the object files
directly and frob them into C files here (formerly this was done
in xemacs.mak, and very slooooooooooooooooooowly). Due to
line-length limitations in CMD, we need to use a "response file"
to hold the arguments, so when we see a response file argument
(preceded by an ï¼ ), read in the args (a bit of trickiness to do
this), and process recursively. Also frob .obj -> .c as mentioned
earlier and handle other junk dependencies that need to be removed
(NEEDTODUMP, make-docfile.exe).
* update-elc-2.el (do-update-elc-2):
Use :test `equal' in call to set-difference.
* update-elc.el:
Put back commented out kill-emacs, update header comment.
2003-02-14 Ben Wing <ben(a)xemacs.org>
* autoload.el (generate-file-autoloads):
Include FUNLIST argument to generate-c-file-autoloads-1.
2003-02-14 Ben Wing <ben(a)xemacs.org>
* byte-optimize.el:
* byte-optimize.el (byte-compile-inline-expand):
* byte-optimize.el (byte-compile-unfold-lambda):
* byte-optimize.el (byte-optimize-form-code-walker):
* byte-optimize.el (byte-optimize-form):
* byte-optimize.el (byte-decompile-bytecode-1):
* byte-optimize.el (byte-optimize-lapcode):
Review carefully and sync up to 20.7 except for areas as noted.
Fixes problem with JDE compilation.
2003-02-14 Ben Wing <ben(a)xemacs.org>
* autoload.el:
* autoload.el (generate-file-autoloads):
* autoload.el (generate-autoload-ish-1):
* autoload.el (generate-file-autoloads-1):
* autoload.el (generate-c-file-autoloads-1):
Factor out common code in generate-{c-,}file-autoloads-1 into new
function generate-autoload-ish-1. \(I was originally going to use
this for custom as well but ended up thinking better of it.)
* cus-dep.el:
* cus-dep.el (cusload-hash-table-marker): New.
* cus-dep.el (Custom-make-dependencies-1):
Cache the old computed values in custom-load.el and reuse them as
necessary, to speed up running cus-dep (which would take 25-30
seconds to do all files in lisp/*, lisp/*/* on my Pentium III
700). Use `message' not `princ' to get correct newline behavior.
Output messages showing each file we do actually process.
* update-elc-2.el:
* update-elc-2.el (dirfiles-table): New.
* update-elc-2.el (do-update-elc-2):
* update-elc-2.el (batch-update-elc-2):
Rewrite algorithm to be much faster -- cache calls to
directory-files and don't make needless calls to file-exists-p,
file-directory-p because they're way way slow.
Autoload early and only when update-elc has told us to.
* update-elc.el:
* update-elc.el (dumped-exe): Removed.
* update-elc.el (dumped-exe-out-of-date-wrt-undumped-exe): Removed.
* update-elc.el (lisp-files-ignored-when-checking-for-autoload-updating): New.
* update-elc.el ((preloaded-file-list site-load-packages files-to-process)):
If no files need byte compilation, signal to update-elc-2 to do
any necessary autoload updating (using the file REBUILD_AUTOLOADS)
rather than doing it ourselves, which would be way slow. Ignore
updates to custom-load.el and auto-autoloads.el when checking to
see whether autoloads need updating. Optimize out many
unnecessary calls to file-exists-p to speed it up somewhat. (####
The remaining time is 50% or more in locate-file; this is
presumably because, even though it has a cache, it's still
statting each file to determine it's actually there. By calling
directory-files ourselves, building a tree, and then looking in
that tree, we could drastically shorten the time needed to do the
locate operation.)
2003-02-12 Jerry James <james(a)xemacs.org>
* about.el (about-url-alist): Add my home page.
* about.el (about-personal-info): Flatter myself.
2002-11-01 Ilpo Nyyss~nen <iny(a)iki.fi>
* mule/mule-cmds.el (finish-set-language-environment): Fix for
call to set-language-unicode-precedence-list.
2003-02-09 Ben Wing <ben(a)xemacs.org>
* window.el (walk-windows):
walk-windows was broken when a frame was given to WHICH-FRAMES.
it would loop forever. The FSF version fixes this but i didn't
sync to them because (a) it conses (bad for lazy-lock), (b) it
calls select-window.
2003-02-07 Ben Wing <ben(a)xemacs.org>
* hyper-apropos.el:
* hyper-apropos.el (hyper-apropos):
* hyper-apropos.el (hyper-apropos-grok-functions):
* hyper-apropos.el (hyper-apropos-grok-variables):
Separate obsolete and non-obsolete stuff and make sure we note
when obsolete funs are just aliases for others. Also fix some
problems with doc string hacking.
* menubar-items.el:
* menubar-items.el (default-menubar):
Change the Help->Info submenu a bit.
* text-props.el (text-property-any):
* text-props.el (text-property-not-all):
Fix bug when end > start.
* update-elc.el (unbytecompiled-lisp-files):
Add raw-process.el.
2002-12-27 Stephen J. Turnbull <stephen(a)xemacs.org>
Synch to GNU Emacs 21.3.50:
* wid-edit.el: Update Copyright notice and Commentary.
(other):
(float):
(plist):
(widget-plist-value-type):
(widget-plist-convert-widget):
(widget-plist-convert-option):
(alist):
(widget-alist-value-type):
(widget-alist-convert-widget):
(widget-alist-convert-option):
New widgets and ancillary objects.
(coding-system):
(widget-coding-system-prompt-value-history):
(widget-coding-system-prompt-value):
(widget-coding-system-prompt-action):
Reenabled widget.
(default): Use `ignore' instead of lambda form.
(editable-field): New help-echo, better error.
(text): Use conventional argument order.
(character): Specify :size property.
(widget-menu-max-shortcuts): New user variable.
(widget-remove-if):
(widgetp):
(widget-copy):
(widget-types-copy):
(widget-field-at):
New functions.
(widget-convert): Use keywordp.
(widget-insert): Auto-autoload.
(widget-types-convert-widget): Make defsubst.
(widget-convert):
(widget-get-sibling):
(widget-insert):
(widget-default-complete):
(widget-item-value-create):
(widget-field-prompt-value):
(widget-field-validate):
(widget-choice-validate):
(widget-radio-value-inline):
(widget-editable-list-value-create):
(widget-regexp-validate):
(widget-file-complete):
(widget-color-complete):
Eliminate pointless let-bindings.
(widget-field-find): Delete old version; comment XEmacs use of
map-extents.
(widget-default-create):
(widget-checklist-add-item):
(widget-radio-add-item):
(widget-radio-chosen):
(widget-editable-list-entry-create):
(widget-documentation-string-value-create):
Insert characters, not one-element strings.
(widget-default-create): Use stream argument of princ.
(widget-default-format-handler): Check functionp before funcalling.
(widget-url-link-action): Fix if-fboundp typo and too-long line.
(widget-sublist):
(cons :value-to-external):
Use Common Lisp functions.
(widget-echo-help):
(widget-default-value-set):
Use `if' rather than `and' and `when'.
(widget-princ-to-string):
(widget-specify-sample):
(widget-specify-doc):
(widget-glyph-directory):
(widget-glyph-enable):
(widget-after-change):
Docstrings from comments or improve docstrings.
(widget-image-conversion): New GNU Emacs-compatible alias.
(widget-field-face): Handle light-background TTYs.
2003-02-06 Stephen J. Turnbull <stephen(a)xemacs.org>
* update-elc.el (lisp-files-needing-early-byte-compilation):
Comment referred to wrong variable.
(do-autoload-commands ...): Remove duplicate comment.
2003-02-05 Ben Wing <ben(a)xemacs.org>
* mule/cyril-util.el:
* mule/cyril-util.el (standard-display-table):
* mule/cyril-util.el (standard-display-table)): New.
Fix compile warning.
2003-02-05 Ben Wing <ben(a)xemacs.org>
* loadup.el:
* loadup.el (really-early-error-handler):
* loadup.el (load-warn-when-source-only):
* loadup.el ((member "dump" command-line-args)):
* make-docfile.el:
* update-elc-2.el:
* update-elc.el:
Set stack-trace-on-error, load-always-display-messages so we
get better debug results.
* update-elc-2.el (batch-update-elc-2):
Fix typo in name of lisp/mule, leading to compile failure.
* simple.el:
* simple.el (motion-keys-for-shifted-motion):
Omit M-S-home/end from motion keys.
* update-elc.el (undumped-exe): New.
* update-elc.el (dumped-exe): New.
* update-elc.el (dumped-exe-out-of-date-wrt-dump-files): New.
* update-elc.el (dumped-exe-out-of-date-wrt-undumped-exe): New.
* update-elc.el ("very-early-lisp.el"):
* update-elc.el (lisp-files-needed-for-byte-compilation): New.
* update-elc.el (lisp-files-needing-early-byte-compilation): New.
* update-elc.el (unbytecompiled-lisp-files): New.
* update-elc.el ((preloaded-file-list site-load-packages files-to-process)):
Overhaul:
-- allow list of "early-compile" files to be specified, not hardcoded
-- fix autoload checking to include all .el files, not just dumped ones
-- be smarter about regenerating autoloads, so we don't need to use
loadup-el if not necessary
-- use standard methods for loading/not loading auto-autoloads.el
(maybe fixes "Already loaded" error?)
-- rename misleading NOBYTECOMPILE flag file.
* window-xemacs.el (window-list):
Fix bug in default param.
* window-xemacs.el (really-set-window-configuration):
* window-xemacs.el (restore-saved-window-parameters):
Fix compile warnings.
2003-02-02 Steve Youngs <youngs(a)xemacs.org>
* about.el (xemacs-hackers): Add Jerry, Ville,
(about-current-release-maintainers): Remove Martin, Jason. Add
Jerry, Ville.
(about-other-current-hackers): Add Martin, Jason.
(about-personal-info): Update me. Add Jerry, Ville.
(about-hacker-contribution): Update me, Martin, Steve T. Add
Jerry, Ville.
2003-01-18 Stephen J. Turnbull <stephen(a)xemacs.org>
* autoload.el: Drastically reorganized.
API improvement:
(autoload-target-directory):
(batch-update-autoloads):
(batch-update-directory):
(batch-update-one-directory):
(batch-force-update-one-directory):
Deprecated.
(autoload-feature-prefix): New special.
(autoload-package-name): Obsolete alias for autoload-feature-prefix.
(autoload-batch-update-autoloads): New function. Main
command-line API.
Documentation:
Improve many docstrings.
(Header summary): Update.
(Commentary): Completely rewritten.
(ChangeLog): Redundant, so removed.
General sanitation:
(generated-autoload-file): Default changed to lisp-directory.
(generate-file-autoloads): Better argument checking.
(generate-c-file-autoloads-1): Make the output code prettier,
clean up long lines.
(autoload-featurep-protect-autoloads):
(autoload-make-feature-name):
New functions for handling feature checking and provide'ing.
(update-autoload-files): Use them. Don't try tricky things to
guess feature names.
(update-autoloads-here): Remove extra arg to a call
to format. Warn of probable bitrot in the docstring.
(batch-force-update-one-directory):
(batch-update-one-directory):
Fix typo in error message.
Related changes:
* update-elc.el: Use `autoload-update-directory-autoloads'.
* update-elc-2.el (batch-update-elc-2): Use full API for
`update-autoload-files'.
* startup.el (startup-load-autoloads): Oops. Ben generates Mule
autoloads in lisp/mule, Mike doesn't load them in startup.el.
Also, use `when' and `unless' for clarity.
(command-line): Comment typo.
(splash-frame-body): Grammatical nits.
2003-01-17 Stephen J. Turnbull <stephen(a)xemacs.org>
* info.el (Info-insert-dir): Make default-directory end in
separator. Patch due to Martin Buchholz.
2003-01-10 Mike Sperber <mike(a)xemacs.org>
* window-xemacs.el: Revert his change
2003-01-10 Mike Sperber <mike(a)xemacs.org>
* window-xemacs.el (window-reduce-to-one): Rewrite in terms of
`delete-other-windows.'
(window-find-buffer-subwindow): Add.
It caused subtle breakage. (And add a comment to that effect.)
2003-01-13 Mike Sperber <mike(a)xemacs.org>
* packages.el:
* find-paths.el: Revert this change
2000-04-01 Mike Sperber <mike(a)xemacs.org>
* packages.el (packages-find-package-directories): Added support
for external package hierarchies with in-place installations.
* find-paths.el (paths-root-in-place-p): Added.
(paths-find-emacs-directory): Added support for external
directories with in-place installations.
(paths-find-site-directory): Ditto.
2003-01-19 Mike Sperber <mike(a)xemacs.org>
* startup.el (normal-top-level): Compute `emacs-data-roots.' Call
`startup-setup-paths' with data-roots argument.
(emacs-data-roots): Add.
* dump-paths.el: Call `startup-setup-paths' with
data-roots argument.
(startup-setup-paths): Use `data-roots' instead of `roots' to find
packages.
Call `paths-find-emacs-roots' with `root-p' argument.
* make-docfile.el: Call `paths-find-emacs-roots' with `root-p' argument.
* find-paths.el (paths-emacs-data-root-p): Add.
(paths-find-emacs-roots): Parmeterize over `root-p.'
2003-01-13 Ilya Golubev <golubev(a)xemacs.org>
* about.el: Update golubev data.
2003-01-10 Mike Sperber <mike(a)xemacs.org>
* window-xemacs.el (window-reduce-to-one): Rewrite in terms of
`delete-other-windows.'
(window-find-buffer-subwindow): Add.
2003-01-09 Stephen J. Turnbull <stephen(a)xemacs.org>
* mule/japan-util.el (setup-japanese-environment-internal):
usg-unix-v is not a suitable catchall.
* mule/viet-util.el:
* mule/ethio-util.el:
characater -> character.
* mule/cyril-util.el (cyrillic-language-alist): There is no such
language as Serbo-Croatian, according to Hrvoje, who oughtta know.
- -------- ChangeLog Entries from lwlib/ChangeLog --------
2003-02-16 Steve Youngs <youngs(a)xemacs.org>
* XEmacs 21.5.11 "cabbage" is released.
2003-02-13 Martin Buchholz <martin(a)xemacs.org>
* xlwmenu.c (xlwMenuClassRec):
Use symbolic name `XtExposeCompressMaximal' instead of `TRUE'.
2003-01-31 Martin Buchholz <martin(a)xemacs.org>
* lwlib-Xm.c (xm_update_progress):
Don't define unless LWLIB_WIDGETS_MOTIF.
2003-02-05 Ben Wing <ben(a)xemacs.org>
* lwlib-Xm.c:
* lwlib-Xm.c (xm_pop_down_callback):
* lwlib-Xm.c (xm_pull_down_callback):
Fix compile warning.
2002-12-16 Ben Wing <ben(a)xemacs.org>
* lwlib-Xlw.c (xlw_update_one_widget):
* lwlib-Xm.c (xm_update_one_widget):
* lwlib-Xm.c (xm_update_one_value):
* lwlib.c:
* lwlib.c (merge_scrollbar_values):
* xlwmenu.c:
* xlwmenu.c (display_menu):
* xlwmenu.c (XlwMenuInitialize):
* xlwmenu.c (XlwMenuSetValues):
* xlwradio.c:
* xlwradio.c (RadioClassPartInit):
* xlwradio.c (RadioSet):
* xlwradio.c (RadioUnset):
class -> class_, new -> new_.
- -------- ChangeLog Entries from man/ChangeLog --------
2003-02-16 Steve Youngs <youngs(a)xemacs.org>
* XEmacs 21.5.11 "cabbage" is released.
2003-02-11 Adrian Aichner <adrian(a)xemacs.org>
* lispref/backups.texi (Auto-Saving): Fix auto-save xref to user
manual.
2003-02-06 Stephen J. Turnbull <stephen(a)xemacs.org>
* internals/internals.texi (Top):
(Buffers and Textual Representation):
Fix up white space in menu.
(Character-Related Data Types):
(Conversion to and from External Data):
(Format of the Extent Info):
Pedantic grammatical nits.
2003-02-05 Ben Wing <ben(a)xemacs.org>
* lispref/mule.texi (Internationalization Terminology):
Lots of Mule rewriting.
2003-02-05 Ben Wing <ben(a)xemacs.org>
* internals/internals.texi (Top):
* internals/internals.texi (Coding for Mule):
* internals/internals.texi (Character-Related Data Types):
* internals/internals.texi (Working With Character and Byte Positions):
* internals/internals.texi (Conversion to and from External Data):
* internals/internals.texi (General Guidelines for Writing Mule-Aware Code):
* internals/internals.texi (An Example of Mule-Aware Code):
* internals/internals.texi (Mule-izing Code):
* internals/internals.texi (help): New.
* internals/internals.texi (Buffers and Textual Representation):
* internals/internals.texi (The Text in a Buffer):
* internals/internals.texi (Markers and Extents):
* internals/internals.texi (MULE Character Sets and Encodings):
* internals/internals.texi (Lstream Functions):
* internals/internals.texi (Lstream Methods):
* internals/internals.texi (Format of the Extent Info):
* internals/internals.texi (Mathematics of Extent Ordering):
Major fixup. Correct for new names of Bytebpos, Ichar, etc. and
lots of Mule rewriting.
2003-02-05 Stephen J. Turnbull <stephen(a)xemacs.org>
* xemacs/startup.texi (Startup Paths): Clarification of package
hierarchy structure.
* xemacs-faq.texi (Q2.0.13, Q2.0.14, Q2.1.24, Q2.1.25): Not NEW.
(Q2.1.15): Stylistic changes for clarity.
2003-02-03 Steve Youngs <youngs(a)xemacs.org>
* xemacs/packages.texi (Local.rules File): Update to reflect Ben's
recent dabble into the packages.
- -------- ChangeLog Entries from modules/ChangeLog --------
2003-02-16 Steve Youngs <youngs(a)xemacs.org>
* XEmacs 21.5.11 "cabbage" is released.
2003-02-07 Jerry James <james(a)xemacs.org>
* ldap/eldap.c: Add unload_eldap prototype to fix warning.
2003-01-30 Robert Pluim <rpluim(a)bigfoot.com>
* Makefile.common: FreeBSD make compatability fixes: expand
SRC_SRCS immediately, use MODCC rather than CC to prevent
overriding by top-level makefile.
2003-01-15 Jerry James <james(a)eecs.ku.edu>
* ldap/eldap.c: Apply Ben's postgresql change to LDAP also.
2002-12-16 Ben Wing <ben(a)xemacs.org>
* postgresql/postgresql.c:
remove ifdef USE_KKCC.
- -------- ChangeLog Entries from netinstall/ChangeLog --------
2003-02-16 Steve Youngs <youngs(a)xemacs.org>
* XEmacs 21.5.11 "cabbage" is released.
- -------- ChangeLog Entries from nt/ChangeLog --------
2003-02-16 Steve Youngs <youngs(a)xemacs.org>
* XEmacs 21.5.11 "cabbage" is released.
2003-02-15 Ben Wing <ben(a)xemacs.org>
* xemacs.mak:
* xemacs.mak (PROGNAME):
* xemacs.mak (docfile):
* xemacs.mak (make-docargs): Removed.
* xemacs.mak (update-elc):
* xemacs.mak (update-elc-2): New.
* xemacs.mak (OS):
Delete old unused code that checks SATISFIED.
Move update-elc-2 up to be near update-elc.
Run update-elc-2 with -no-autoloads to avoid multiple
autoload-loading problem.
Don't compute make-docfile args ourselves. Pass the raw objects
to make-docfile.el, which does the computation (much faster than
we could). Don't delete the DOC file, split the invocation into
two calls to make-docfile.exe (one direct, one through
make-docfile.el), etc. In general, all we do is call make-docfile.
Add proper dependencies for DOC-file rebuilding so it doesn't get
done when not necessary. Implement quick-building here: not
building the DOC file unless it doesn't exist, as the quick-build
docs say.
2003-02-05 Ben Wing <ben(a)xemacs.org>
* config.inc.samp (GTK_DIR):
* config.inc.samp (XPM_DIR):
* config.inc.samp (HAVE_GIF):
* config.inc.samp (ZLIB_DIR):
* config.inc.samp (TIFF_DIR):
* config.inc.samp (JPEG_DIR):
* config.inc.samp (COMPFACE_DIR):
* config.inc.samp (USE_PORTABLE_DUMPER):
* config.inc.samp (USE_KKCC):
Various fixups.
2002-12-16 Ben Wing <ben(a)xemacs.org>
* README (NOTE):
* config.inc.samp:
* config.inc.samp (PACKAGE_PREFIX):
* config.inc.samp (GTK_DIR):
* config.inc.samp (COMPFACE_DIR):
* config.inc.samp (USE_FASTCALL):
* config.inc.samp (HAVE_VC6): New.
* config.inc.samp (PROFILE_SUPPORT):
* config.inc.samp (DEBUG_XEMACS):
* config.inc.samp (USE_PORTABLE_DUMPER):
* config.inc.samp (USE_KKCC): New.
* config.inc.samp (USE_UNION_TYPE): New.
* xemacs.dsp (CFG):
* xemacs.mak (HAVE_VC6):
* xemacs.mak (ERROR_CHECK_ALL): New.
* xemacs.mak (CPLUSPLUS_COMPILE): New.
* xemacs.mak (USE_KKCC): New.
* xemacs.mak (USE_UNION_TYPE): New.
* xemacs.mak (USE_PORTABLE_DUMPER):
* xemacs.mak (PROFILE_FLAGS):
* xemacs.mak (CPLUSPLUS_COMPILE_FLAGS): New.
* xemacs.mak (DUMPER_DEFINES):
* xemacs.mak (KKCC_DEFINES): New.
* xemacs.mak (DEFINES):
* xemacs.mak (LASTFILE_FLAGS):
* xemacs.mak (TEMACS_CPP_FLAGS_NO_CFLAGS):
* xemacs.mak (OS):
Support C++ compilation, KKCC compilation. See src/ChangeLog.
Add stuff about the evilness of USE_UNION_TYPE.
- -------- ChangeLog Entries from nt/installer/Wise/ChangeLog --------
2003-02-16 Steve Youngs <youngs(a)xemacs.org>
* XEmacs 21.5.11 "cabbage" is released.
- -------- ChangeLog Entries from src/ChangeLog --------
2003-02-16 Steve Youngs <youngs(a)xemacs.org>
* XEmacs 21.5.11 "cabbage" is released.
2003-02-15 Ben Wing <ben(a)xemacs.org>
* Makefile.in.in (dynodump_deps):
Don't delete the DOC file. Implement quick-building here: not
building the DOC file unless it doesn't exist, as the quick-build
docs say.
* config.h.in: Style changes. Add HAVE_XLIKE.
* emacs.c (main_1):
* emacs.c (main):
* emacs.c (Fdump_emacs):
* emacs.c (voodoo_free_hook):
* emacs.c (Fkill_emacs):
* emacs.c (assert_failed):
* emacs.c (vars_of_emacs):
* emacs.c (__sti__iflPNGFile_c___):
Nothing but niggly spacing changes -- one space before a paren
starting a function-call arglist, please.
* make-src-depend:
When QUICK_BUILD, don't put lisp.h, config.h, and related as
dependencies of all source files, so that changes to these files
don't trigger total rebuilding of the src directory.
Update info on what's a GTK-only and X-only file and use HAVE_XLIKE
for files shared between GTK and X.
2003-02-14 Ben Wing <ben(a)xemacs.org>
* buffer.c:
* syntax.c:
Move syntax table description from buffer.c to syntax.c.
* chartab.c:
* chartab.c (set_char_table_dirty):
* chartab.c (fill_char_table):
* chartab.c (Fmake_char_table):
* chartab.c (Fcopy_char_table):
* chartab.c (get_range_char_table_1):
* chartab.c (get_range_char_table):
* chartab.c (put_char_table):
* chartab.h:
* chartab.h (struct Lisp_Char_Table):
Free extra char table entries to avoid excessive garbage.
Add flags for dirty and mirror_table_p to char tables.
Add a back pointer from mirror tables to the original syntax table.
When modifying a syntax table, don't update the mirror table right
away, just mark as dirty.
Add various asserts to make sure we are dealing with the right type
of table (mirror or non-mirror).
* font-lock.c:
* font-lock.c (find_context):
* syntax.c (init_syntax_cache):
* syntax.c (setup_syntax_cache):
* syntax.c (mark_buffer_syntax_cache):
* syntax.c (init_buffer_syntax_cache):
* syntax.c (syntax_cache_table_was_changed):
* syntax.c (update_syntax_cache):
* syntax.c (scan_lists):
* syntax.c (scan_sexps_forward):
* syntax.c (copy_if_not_already_present):
* syntax.c (update_just_this_syntax_table):
* syntax.c (update_syntax_table):
* syntax.c (vars_of_syntax):
* syntax.h:
* syntax.h (struct syntax_cache):
Add entry to syntax caches for the non-mirror table. Set it
appropriately when initializing the syntax table. Use it, not
the mirror table, for calls to syntax_match().
Don't create a bogus float each time, just once at startup.
Add some asserts, as in chartab.c.
* syntax.h (SYNTAX_CODE_FROM_CACHE):
When retrieving the syntax code, check the dirty flag and update
the mirror tables as appropriate.
Add some asserts, as above.
2003-02-14 Ben Wing <ben(a)xemacs.org>
* scrollbar.c (specifier_vars_of_scrollbar):
Don't generate fallbacks for TTY's when not HAVE_TTY.
2003-02-13 Martin Buchholz <martin(a)xemacs.org>
Make XEmacs redisplay 10 times faster.
If, that is, you're using a slow X connection and MoveOpaque.
Use compress_exposure = XtExposeCompressMaximal | XtExposeNoRegion.
Use compress_motion = TRUE.
* EmacsFrame.c (emacsFrameClassRec):
* EmacsShell-sub.c (EMACS_SHELL_CLASS_REC):
* EmacsManager.c (emacsManagerClassRec):
* xintrinsicp.h: Make sure XtExposeNoRegion is defined.
2003-02-13 Ben Wing <ben(a)xemacs.org>
* unicode.c (utf_16_detect):
Don't get snafued w/division-by-zero.
2003-02-12 Ben Wing <ben(a)xemacs.org>
* profile.c:
* profile.c (create_profile_tables):
* profile.c (current_profile_function):
* profile.c (profile_record_consing):
* profile.c (profile_record_about_to_call):
* profile.c (profile_record_just_called):
* profile.c (sigprof_handler):
* profile.c (Fstart_profiling):
* profile.c (Fstop_profiling):
* profile.c (Fclear_profiling_info):
* profile.c (copy_hash_table_or_blank):
* profile.c (Fget_profiling_info):
* profile.c (set_profiling_info_timing_maphash):
* profile.c (Fset_profiling_info):
* profile.c (mark_profiling_info_maphash):
* profile.c (mark_profiling_info):
* profile.c (vars_of_profile):
Major reworking. Keep track of new information -- total
function timing (includes descendants), GC usage, total GC usage
(includes descendants). New functions to be called appropriately
from eval.c, alloc.c to keep track of this information. Keep track
of when we're actually in a function vs. in its profile, for more
accurate timing counts. Track profile overhead separately. Create
new mechanism for specifying "internal sections" that are tracked
just like regular Lisp functions and even appear in the backtrace
if `backtrace-with-internal-sections' is non-nil (t by default
for error-checking builds). Add some KKCC information for the
straight (non-Elisp) hash table used by profile, which contains
Lisp objects in its keys -- but not used yet. Remove old ad-hoc
methods for tracking garbage collection, redisplay (which was
incorrect anyway when Lisp was called within these sections).
Don't record any tick info when blocking under MS Windows, since
the timer there is in real time rather than in process time.
Make `start-profiling', `stop-profiling' interactive. Be consistent
wrt. recursive functions and functions currently on the stack when
starting or stopping -- together these make implementing the
`total' values extremely difficult. When we start profiling, we
act as if we just entered all the functions currently on the stack.
Likewise when exiting. Create vars in_profile for tracking
time spent inside of profiling, and profiling_lock for setting
exclusive access to the main hash table when reading from it or
modifying it. (protects against getting screwed up by the signal
handle going off at the same time.
* profile.h: New file.
Create macros for declaring internal profiling sections.
* lisp.h:
Move profile-related stuff to profile.h.
* alloc.c:
* alloc.c (INCREMENT_CONS_COUNTER_1):
* alloc.c (DECREMENT_CONS_COUNTER):
* alloc.c (garbage_collect_1):
* alloc.c (vars_of_alloc):
Keep track of total consing, for profile.
Tell profile when we are consing.
Use new profile-section method for noting garbage-collection.
* alloc.c (xmalloc):
* alloc.c (xcalloc):
* alloc.c (xrealloc):
* alloc.c (endif):
Abort if we attempt to call the allocator reentrantly.
* backtrace.h:
* backtrace.h (FSET_FAST_UNSAFE):
* eval.c:
Add info for use by profile in the backtrace frame and transfer
PUSH_BACKTRACE/POP_BACKTRACE from eval.c, for use with profile.
* elhash.c: Author comment.
* eval.c (vars_of_eval):
* lisp.h:
New Lisp var `backtrace-with-internal-sections'. Set to t when
error-checking is on.
* eval.c:
* eval.c (unwind_to_catch):
When unwinding,
* eval.c (Fcommand_execute):
* eval.c (Feval):
* eval.c (Ffuncall):
Report to profile when we are about-to-call and just-called wrt. a
function.
* alloc.c (garbage_collect_1):
* eval.c (backtrace_unevalled_args):
* eval.c (Fbacktrace):
* eval.c (Fbacktrace_frame):
Allow for "fake" backtrace frames, for internal sections (used by
profile and `backtrace-with-internal-sections'.
* event-Xt.c:
* event-Xt.c (emacs_Xt_next_event):
* event-gtk.c:
* event-gtk.c (emacs_gtk_next_event):
* event-msw.c:
* event-msw.c (mswindows_need_event):
* event-tty.c:
* event-tty.c (emacs_tty_next_event):
Record when we are actually blocking on an event, for profile's sake.
* event-stream.c:
* event-stream.c (next_event_internal):
* event-stream.c (Fnext_event):
* event-stream.c (execute_internal_event):
* event-stream.c (Fdispatch_event):
* event-stream.c (syms_of_event_stream):
* event-stream.c (vars_of_event_stream):
Record internal profiling sections for getting, dispatching events.
* extents.c:
* extents.c (map_extents):
* extents.c (vars_of_extents):
Record internal profiling sections for map_extents.
* hash.c: Author comment.
* hash.c (grow_hash_table):
* hash.h:
Add pregrow_hash_table_if_necessary(). (Used in profile code
since the signal handler is the main grower but can't allow
a realloc(). We make sure, at critical points, that the table
is large enough.)
* lread.c:
* lread.c (Fload_internal):
* lread.c (done): New.
* lread.c (syms_of_lread):
* lread.c (vars_of_lread):
Create internal profiling sections for `load' (which may be triggered
internally by autoload, etc.).
* redisplay.c:
* redisplay.c (redisplay_without_hooks):
* redisplay.c (vars_of_redisplay):
Remove old profile_redisplay_flag. Use new macros to declare
internal profiling section for redisplay.
* text.c (charbpos_to_bytebpos_func):
* text.c (bytebpos_to_charbpos_func):
* text.c (dfc_convert_to_external_format):
* text.c (dfc_convert_to_internal_format):
* text.c (vars_of_text):
Use new macros to declare internal profiling sections for
char-byte conversion and internal-external conversion.
SEMI-UNRELATED CHANGES:
-----------------------
* text.c:
Update the long comments.
2003-02-07 Mike Sperber <mike(a)xemacs.org>
* scrollbar.c (specifier_vars_of_scrollbar):
(specifier_vars_of_scrollbar): TTY devices don't have scrollbars.
2003-01-28 Martin Buchholz <martin(a)xemacs.org>
* config.h.in (_ALL_SOURCE): Guard against multiple definition.
2003-02-09 Ben Wing <ben(a)xemacs.org>
* console-stream.c:
* console-stream.c (stream_clear_region):
* console-stream.c (console_type_create_stream):
Abort when any attempts to output a stream console are made.
Should be caught sooner.
* event-msw.c (mswindows_wnd_proc):
Don't redisplay() during sizing when the frame has not yet been
initialized completely.
* event-stream.c (Fnext_event):
* menubar-msw.c (mswindows_handle_wm_initmenupopup):
* menubar-x.c (protected_menu_item_descriptor_to_widget_value):
* menubar.c:
* menubar.h:
Restore in_menu_callback. Bind it in menubar-{msw,x}.c when
calling filter functions and the like. Conditionalize on it, not
in_modal_loop, when issuing error in `next-event', otherwise we
bite the dust immediately -- event-msw.c purposely calls
Fnext_event() in a modal loop, and knows what it's doing.
* redisplay-output.c (redisplay_unmap_subwindows_maybe):
* redisplay-output.c (redisplay_unmap_subwindows_except_us):
Formatting fixes.
* redisplay.c:
* redisplay.c (redisplay_frame):
* redisplay.c (Fredisplay_echo_area):
* redisplay.c (redisplay_no_pre_idle_hook):
* redisplay.c (syms_of_redisplay):
* redisplay.c (vars_of_redisplay):
* window.c (Fwindow_pixel_edges):
* window.c (syms_of_window):
* winslots.h:
Delete lots of carcasses of attempts to add redisplay support for
font-lock -- `pre/post-redisplay-hook', unimplemented junk from
FSF (redisplay-end-trigger, `window-scroll-functions',
`window-size-change-functions'). If we want to port some
redisplay support from FSF, port the `fontified' property.
* redisplay.c (redisplay_frame):
Put in a check here (as well as redisplay_device()) for a stream
frame. We can get here directly through Lisp fun
`redisplay-frame'. Abort if frame not initialized.
* redisplay.c (Fredisplay_echo_area):
* redisplay.c (Fforce_cursor_redisplay):
Check for stream frames/devices.
2003-02-07 Mike Sperber <mike(a)xemacs.org>
* alloc.c (GC_CHECK_NOT_FREE): Pull this out of USE_KKCC.
2003-02-07 Ben Wing <ben(a)xemacs.org>
* lread.c (Fload_internal):
Eliminate printing `done' messages noninteractively since it's now
obvious which files are loaded by which others.
2003-02-06 Andrew Begel <abegel(a)CS.Berkeley.EDU>
* sysdll.c: Included lisp.h to define needed alloca_array.
2003-02-07 Jerry James <james(a)xemacs.org>
* sysdep.c (strlwr): Return the parameter.
* sysdep.c (strupr): Ditto. Depend on !HAVE_STRUPR.
2003-02-07 Ben Wing <ben(a)xemacs.org>
This contains two related changes:
(1) Fix problems with reentrant calling of lwlib and associated
crashes when selecting menu items.
(2) Improve redisplay handling of preemption. Turn on lazy lock
and hold down page-down or page-up and you'll see what I mean.
They are related because they both touch on the code that retrieves
events and handles the internal queues.
* console-msw.h:
* event-msw.c:
* event-msw.c (mswindows_unmodalize_signal_maybe):
* event-msw.c (mswindows_unsafe_pump_events):
* event-msw.c (mswindows_pump_outstanding_events):
* event-msw.c (mswindows_need_event_in_modal_loop):
* event-msw.c (mswindows_drain_windows_queue):
* event-msw.c (mswindows_need_event):
* event-msw.c (reinit_vars_of_event_mswindows):
* event-stream.c (event_stream_protect_modal_loop):
* events.h:
* events.h (struct event_stream):
* menubar-msw.c (struct handle_wm_initmenu):
* menubar-msw.c (unsafe_handle_wm_initmenupopup):
* menubar-msw.c (unsafe_handle_wm_initmenu):
* menubar-msw.c (mswindows_handle_wm_initmenupopup):
* menubar-msw.c (mswindows_handle_wm_initmenu):
* menubar-x.c:
* menubar-x.c (protected_menu_item_descriptor_to_widget_value):
* menubar-x.c (pre_activate_callback):
* menubar.h:
mswindows_protect_modal_loop() has been generalized to
event_stream_protect_modal_loop(), and moved to event-stream.c.
mswindows_in_modal_loop ->in_modal_loop likewise. Changes in
event-msw.c and menubar-msw.c for the new names and calling format
(use structures instead of static variables in menubar-msw.c).
Delete former in_menu_callback and use in_modal_loop in its place.
Remove emacs_mswindows_quit_check_disallowed_p(), superseded by
in_modal_loop. Use event_stream_protect_modal_loop() in
pre_activate_callback() so that we get no lwlib reentrancy.
Rearrange some of the code in event-msw.c to be grouped better.
Make mswindows_drain_windows_queue() respect in_modal_loop and
do nothing if so.
* cmdloop.c (command_loop_3):
* event-stream.c (Fnext_event):
Don't conditionalize on LWLIB_MENUBARS_LUCID when giving error when
in_modal_loop, and give better error.
* event-Xt.c (emacs_Xt_next_event):
* event-Xt.c (emacs_Xt_drain_queue):
* event-gtk.c (emacs_gtk_drain_queue):
If in_modal_loop, only retrieve process and timeout events.
Don't retrieve any X events because processing them can lead
to reentrancy in lwlib -> death.
* event-stream.c:
* event-stream.c (check_event_stream_ok):
* event-stream.c (event_stream_handle_magic_event):
* event-stream.c (event_stream_format_magic_event):
* event-stream.c (event_stream_compare_magic_event):
* event-stream.c (event_stream_hash_magic_event):
* event-stream.c (event_stream_add_timeout):
* event-stream.c (event_stream_remove_timeout):
* event-stream.c (event_stream_select_console):
* event-stream.c (event_stream_unselect_console):
* event-stream.c (event_stream_select_process):
* event-stream.c (event_stream_unselect_process):
* event-stream.c (event_stream_create_io_streams):
* event-stream.c (event_stream_delete_io_streams):
* event-stream.c (event_stream_current_event_timestamp):
* event-stream.c (event_stream_next_event):
Remove unused parameter to check_event_stream_ok() and change
all callers.
* lisp.h:
* event-stream.c (maybe_do_auto_save):
* event-stream.c (emacs_handle_focus_change_preliminary):
* event-stream.c (emacs_handle_focus_change_final):
* event-stream.c (detect_input_pending):
* event-stream.c (maybe_read_quit_event):
* event-stream.c (remove_quit_p_event):
* event-stream.c (event_stream_quit_p):
* event-stream.c (event_stream_next_event):
* event-stream.c (sit_for_unwind):
* event-stream.c (Faccept_process_output):
* event-stream.c (Fsleep_for):
* event-stream.c (Fsit_for):
* event-stream.c (maybe_kbd_translate):
* event-stream.c (command_builder_find_leaf_no_mule_processing):
* event-stream.c (reinit_vars_of_event_stream):
Rearrange some functions for increased clarity -- in particular,
group all the input-pending/QUIT-related stuff together, and
put right next to next-event stuff, to which it's related.
Add the concept of "HOW_MANY" -- when asking whether user input
is pending, you can ask if at least HOW_MANY events are pending,
not just if any are. Add parameter to detect_input_pending()
for this. Change recursive_sit_for from a Lisp_Object (which
could only be Qt or Qnil) to an int, like it should be.
* event-Xt.c:
* event-Xt.c (THIS_IS_X):
* event-gtk.c:
* event-gtk.c (THIS_IS_GTK):
* event-xlike-inc.c: New file.
Abstract out similar code in event_{Xt/gtk}_pending_p() and write
only once, using include-file tricks. Rewrite this function to
implement HOW_MANY and only process events when not in_modal_loop.
* event-msw.c (emacs_mswindows_event_pending_p):
Implement HOW_MANY and only process events when not in_modal_loop.
* event-tty.c:
* event-tty.c (tty_timeout_to_emacs_event):
* event-tty.c (emacs_tty_event_pending_p):
Implement HOW_MANY.
* redisplay.c:
* redisplay.c (QUEUED_EVENTS_REQUIRED_FOR_PREEMPTION):
* redisplay.c (init_redisplay):
* redisplay.c (vars_of_redisplay):
Add var `max-preempts' to control maximum number of preempts.
(#### perhaps not useful) Rewrite preemption check so that,
rather than preempting when any user events are available, only
preempt when a certain number (currently 4) of them are backed up.
This effectively allows redisplay to proceed to completion in the
presence of a fast auto-repeat (usually the auto-repeating is
generated dynamically as necessary), and you get much better
display behavior with lazy-lock active.
* event-unixoid.c:
Comment changes.
* event-stream.c (command_event_p_cb):
* event-stream.c (Fdiscard_input):
Rewrite discard-input much more simply and safely using the
drain-queue functions. I think the old version might loop
forever if called when in_modal_loop.
SEMI-UNRELATED CHANGES:
-----------------------
* event-stream.c (run_pre_idle_hook):
Turn QUIT-checking back on when running the pre-idle hook so it
can be quit out of.
* indent.c:
Document exact functioning of `vertical-motion' better, and its
differences from GNU Emacs.
2003-02-06 Ben Wing <ben(a)xemacs.org>
* unicode.c:
* unicode.c (struct utf_16_detector):
* unicode.c (utf_16_detect):
* unicode.c (struct utf_8_detector):
* unicode.c (utf_8_detect):
UTF-8 detector was totally bogus and detected almost anything as UTF-8.
UTF-16 detector got overly happy with 0x2028's (line separator,
also space+paren).
2003-02-06 Ben Wing <ben(a)xemacs.org>
* lread.c (Fload_internal):
Oops. Plain C can't handle declarations intermixed with statements.
2003-02-06 Ben Wing <ben(a)xemacs.org>
* alloc.c:
* alloc.c (GC_CHECK_NOT_FREE):
* alloc.c (mark_object_maybe_checking_free):
* alloc.c (mark_with_description):
* alloc.c (mark_object):
Implement tail-recursion in KKCC when the last-marked object is
a Lisp object, to avoid stack-overflow errors when marking long
lists. Factor out some duplicated error-checking into macros.
2003-02-05 Ben Wing <ben(a)xemacs.org>
* Makefile.in.in (update-elc.stamp):
NOBYTECOMPILE -> BYTECOMPILE_CHANGE.
* esd.c (esd_play_sound_data):
Warning fixes.
* fns.c:
* fns.c (mark_bit_vector):
* fns.c (Frequire):
* fns.c (vars_of_fns):
Eliminate bogus require-prints-loading-message; use already
existent load-always-display-messages instead. Make sure `load'
knows we are coming from `require'.
* lread.c:
* lread.c (READCHARFUN_MAYBE):
* lread.c (Fload_internal):
* lread.c (PRINT_LOADING_MESSAGE_1):
* lread.c (PRINT_LOADING_MESSAGE):
* lread.c (vars_of_lread):
Turn on `load-warn-when-source-newer' by default. Change loading
message to indicate when we are `require'ing. Eliminate
purify_flag hacks to display more messages; instead, loadup and
friends specify this explicitly with
`load-always-display-messages'. Add spaces when batch to clearly
indicate recursive loading. Fassoc() does not GC so no need to
gcpro.
* gui-x.c:
* gui-x.c (snarf_widget_values_for_gcpro):
* gui-x.c (gcpro_popup_callbacks):
* gui-x.h:
* menubar-x.c:
* menubar-x.c (pre_activate_callback):
* menubar-x.c (set_frame_menubar):
Fix up crashes when selecting menubar items due to lack of GCPROing
of callbacks in lwlib structures.
* eval.c (Fbacktrace):
* lisp.h:
* print.c:
* print.c (canonicalize_printcharfun):
Don't canonicalize to selected-frame when noninteractive, or
backtraces get all screwed up as some values are printed through
the stream console and some aren't. Export
canonicalize_printcharfun() and use in Fbacktrace().
2003-02-05 Stephen J. Turnbull <stephen(a)xemacs.org>
* config.h.in: New symbol: DLSYM_NEEDS_UNDERSCORE.
2003-01-09 Stephen J. Turnbull <stephen(a)xemacs.org>
* config.h.in: Restore USE_XFONTSET.
2003-02-04 Ben Wing <ben(a)xemacs.org>
* s/windowsnt.h:
* s/windowsnt.h (HAVE_STRLWR):
Windows has strupr(), strlwr(). Comment fixes.
2003-02-04 Ben Wing <ben(a)xemacs.org>
* text.h: Style fixes.
2003-01-31 Stephen J. Turnbull <stephen(a)xemacs.org>
* alloc.c (mark_object_maybe_checking_free): C macro syntax
requires paren to immediately follow definiendum.
2003-01-30 Stephen J. Turnbull <stephen(a)xemacs.org>
* file-coding.c (vars_of_file_coding): Fprovide here ...
(syms_of_file_coding): ... not here. Dem's da rules.
2003-01-23 Stephen J. Turnbull <stephen(a)xemacs.org>
* toolbar-msw.c:
* menubar-gtk.c (menu_descriptor_to_widget_1):
* nt.c (mswindows_link):
* event-msw.c (output_alt_keyboard_state):
Change C++ style comments to C style.
2003-01-22 Vin Shelton <acs(a)xemacs.org>
* events.h: Change illegal (for C) // comment to /* */
2003-01-15 Jerry James <james(a)eecs.ku.edu>
* emodules.h: #undef everything we redefine for module code.
2003-01-14 Sergey Okhapkin <sos(a)prospect.com.ru>
* Makefile.in.in (ldflags): re-order sections for gcc 3.2.
* s/cygwin.sc: new linker file.
2003-01-11 Mike Sperber <mike(a)xemacs.org>
* window.c (Fdelete_window): Make sure that
f->last_nonminibuf_window is set to a live window once we're done.
(contains_window): Abstract this code out of Fdelete_window.
2003-01-10 Mike Sperber <mike(a)xemacs.org>
* window.c (Fdelete_other_windows): Prevent crash for combination
windows.
2003-01-08 Mike Sperber <mike(a)xemacs.org>
* console.h (CDFW_CONSOLE): Don't lead to a crash if we're dealing
with a dead window/frame/device/console.
2002-12-20 Mike Sperber <mike(a)xemacs.org>
* ui-gtk.c: Fix typo from Ben's patch: emacs_ffi_data is a
typedef, not a struct. emacs_gtk_object_data is a typedef, not a
struct.
* gtk-glue.c (gdk_event_to_emacs_event): Fix typos from Ben's
patch: le -> emacs_event + rearrange the code.
* event-gtk.c (gtk_event_to_emacs_event): Fix typos from Ben's
patch: ..._UNDERLYING_GDK_EVENT -> ..._GDK_EVENT, ev -> key_event.
* device-gtk.c: Fix typo from Ben's patch: x_keysym_map_hash_table
-> x_keysym_map_hashtable.
2002-12-19 Mike Sperber <mike(a)xemacs.org>
* menubar-x.c (set_frame_menubar): Initialize protect_me field of
popup_data.
2002-12-16 Ben Wing <ben(a)xemacs.org>
Major cleanup of KKCC, etc.
KKCC, pdump-related:
-- descriptions are written for all objects. this required some
changes in the format of some objects, e.g. extents, popup-data,
coding system, lstream, lcrecord-list.
-- KKCC now handles weakness in markers, hash tables, elsewhere
correctly (formerly, you'd eventually get a stack overflow due
to endlessly expanding markers).
-- textual changes: lrecord_description -> memory_description,
struct_description -> sized_memory_description.
-- extensive comment describing descriptions and pdump.
-- redo XD_UNION so it works inline and change its format to provide
sufficient info for pdump. implement XD_UNION in pdump. also add
XD_UNION_DYNAMIC_SIZE, which works like XD_UNION except for when
auto-computing structure sizes.
-- add support for XD_INDIRECT in description offsets (used by
extents).
-- add support for "description maps", allowing for indirect
descriptions that are retrieved from an object at run-time. this
generalizes XD_CODING_SYSTEM_END, XD_SPECIFIER_END, etc., which
have now been eliminated.
-- add a fifth field "flags" to memory_description, to support flags
that can be specified for this particular line. Currently defined
flags are XD_FLAG_NO_KKCC (KKCC should ignore this entry; useful
for the weakness above in markers, etc.), XD_FLAG_NO_PDUMP (pdump
should ignore this entry), XD_FLAG_UNION_DEFAULT_ENTRY (in
union maps, this specifies a "default" entry for all remaining
values), and XD_FLAG_FREE_LISP_OBJECT (for use with lcrecord-lists).
-- clean up the kkcc-itis in events, so that the differences
between event data as separate objects and as a union are now
minimized to a small number of places. with the new XD_UNION, we
no longer need event data as separate objects, so this code is no
longer ifdef USE_KKCC, but instead ifdef EVENT_DATA_AS_OBJECTS,
not used by default. make sure that we explicitly free the
separate event data objects when no longer in use, to maintain the
invariant the event processing causes no consing.
-- also remove other USE_KKCC ifdefs when not necessary.
-- allow for KKCC compilation under MS Windows.
-- fix README.kkcc.
-- dump_add_root_object -> dump_add_root_lisp_object.
-- implement dump_add_root_block and use this to handle
dump_add_opaque.
-- factor out some code duplicated in kkcc and pdump.
Other allocation/object-related:
-- change various *slots.h so MARKED_SLOT() call no longer
includes semicolon.
-- free_marker() takes a Lisp_Object not a direct pointer.
-- make bit vectors lcrecords, like vectors, and eliminate code
that essentially duplicated the lcrecord handling.
-- additional asserts in FREE_FIXED_TYPE, formerly duplicated in
the various callers of this.
-- all lcrecord allocation functions now zero out the returned
lcrecords. unnecessary calls to zero_lcrecord removed. add long
comment describing these functions.
-- extract out process and coding system slots, like for buffers,
frames, etc.
-- lcrecords now set the type of items sitting on the free list to
lcrecord_type_free.
-- changes to the way that gap arrays are allocated, for kkcc's
benefit -- now, one single memory block with a stretchy array on
the end, instead of a separate block holding the array.
Error-checking-related:
-- now can compile with C++ under MS Windows. clean up compile errors
discovered that way. (a few were real problems)
-- add C++ error-checking code to verify problems with mismatched
GCPRO/UNGCPRO. (there were a few in the kkcc code.) add long
comment about how to catch insufficient GCPRO (yes, it's possible
using C++).
-- add debug_p4(), a simple object printer, when debug_print()
doesn't work.
-- add dp() and db() as short synonyms of debug_print(),
debug_backtrace().
-- `print' tries EXTREMELY hard to avoid core dumping when printing
when crashing or from debug_print(), and tries as hard as it
reasonably can in other situations.
-- Correct the message output upon crashing to be more up-to-date.
Event-related:
-- document event-matches-key-specifier-p better.
-- generalize the dispatch queues formerly duplicated in the
various event implementations. add event methods to drain pending
events. generalize and clean up QUIT handling, removing
event-specific quit processing. allow arbitrary keystrokes, not
just ASCII, to be the QUIT char. among other things, this should
fix some longstanding bugs in X quit handling. long comment
describing the various event queues.
-- implement delaying of XFlush() if there are pending expose events.
SOMEONE PLEASE TRY THIS OUT.
-- Fix `xemacs -batch -l dunnet' under Cygwin. Try to fix under
MS Windows but not quite there yet.
Other:
-- class -> class_ and no more C++ games with this item.
new -> new_ in the lwlib code, so far not elsewhere.
-- use `struct htentry' not `struct hentry' in elhash.c to avoid
debugger confusion with hash.c.
-- new macros ALIST_LOOP_3, ALIST_LOOP_4.
* README.kkcc:
* alloc.c:
* alloc.c (deadbeef_memory):
* alloc.c (allocate_lisp_storage):
* alloc.c (copy_lisp_object):
* alloc.c (ALLOCATE_FIXED_TYPE_1):
* alloc.c (FREE_FIXED_TYPE):
* alloc.c (make_vector_internal):
* alloc.c (make_bit_vector_internal):
* alloc.c (make_key_data):
* alloc.c (make_button_data):
* alloc.c (make_motion_data):
* alloc.c (make_process_data):
* alloc.c (make_timeout_data):
* alloc.c (make_magic_data):
* alloc.c (make_magic_eval_data):
* alloc.c (make_eval_data):
* alloc.c (make_misc_user_data):
* alloc.c (struct string_chars_block):
* alloc.c (mark_lcrecord_list):
* alloc.c (make_lcrecord_list):
* alloc.c (alloc_managed_lcrecord):
* alloc.c (free_managed_lcrecord):
* alloc.c (alloc_automanaged_lcrecord):
* alloc.c (staticpro_1):
* alloc.c (staticpro):
* alloc.c (lispdesc_indirect_count_1):
* alloc.c (lispdesc_indirect_description_1):
* alloc.c (lispdesc_one_description_line_size):
* alloc.c (lispdesc_structure_size):
* alloc.c (mark_object_maybe_checking_free):
* alloc.c (mark_with_description):
* alloc.c (mark_struct_contents):
* alloc.c (mark_object):
* alloc.c (tick_lcrecord_stats):
* alloc.c (free_cons):
* alloc.c (free_key_data):
* alloc.c (free_button_data):
* alloc.c (free_motion_data):
* alloc.c (free_process_data):
* alloc.c (free_timeout_data):
* alloc.c (free_magic_data):
* alloc.c (free_magic_eval_data):
* alloc.c (free_eval_data):
* alloc.c (free_misc_user_data):
* alloc.c (free_marker):
* alloc.c (compact_string_chars):
* alloc.c (gc_sweep):
* alloc.c (garbage_collect_1):
* alloc.c (Fgarbage_collect):
* alloc.c (common_init_alloc_early):
* alloc.c (init_alloc_early):
* alloc.c (init_alloc_once_early):
* buffer.c:
* buffer.c (mark_buffer):
* buffer.c (MARKED_SLOT):
* buffer.c (cleanup_buffer_undo_lists):
* buffer.c (Fget_file_buffer):
* buffer.h (MARKED_SLOT):
* bufslots.h:
* bytecode.c:
* callint.c:
* casetab.c:
* chartab.c:
* chartab.c (symbol_to_char_table_type):
* cmdloop.c:
* cmdloop.c (Fcommand_loop_1):
* config.h.in (new):
* conslots.h:
* console-gtk-impl.h (struct gtk_frame):
* console-impl.h:
* console-impl.h (struct console):
* console-impl.h (MARKED_SLOT):
* console-impl.h (CONSOLE_QUIT_EVENT):
* console-msw-impl.h (XM_BUMPQUEUE):
* console-msw.c (write_string_to_mswindows_debugging_output):
* console-msw.h:
* console-stream-impl.h:
* console-stream-impl.h (struct stream_console):
* console-stream.c:
* console-stream.c (stream_init_console):
* console-stream.h:
* console-tty.c:
* console-tty.h:
* console-x.h:
* console.c:
* console.c (mark_console):
* console.c (MARKED_SLOT):
* console.c (allocate_console):
* console.c (get_console_variant):
* console.c (create_console):
* console.c (delete_console_internal):
* console.c (Fset_input_mode):
* console.c (Fcurrent_input_mode):
* console.c (common_init_complex_vars_of_console):
* console.h:
* console.h (console_variant):
* console.h (device_metrics):
* data.c:
* data.c (Faref):
* data.c (Faset):
* data.c (decode_weak_list_type):
* database.c:
* debug.c (xemacs_debug_loop):
* debug.c (FROB):
* debug.c (Fadd_debug_class_to_check):
* debug.c (Fdelete_debug_class_to_check):
* debug.c (Fset_debug_classes_to_check):
* debug.c (Fset_debug_class_types_to_check):
* debug.c (Fdebug_types_being_checked):
* debug.h (DASSERT):
* device-gtk.c:
* device-impl.h (struct device):
* device-impl.h (MARKED_SLOT):
* device-msw.c:
* device-x.c:
* device-x.c (x_init_device_class):
* device-x.c (x_comp_visual_info):
* device-x.c (x_try_best_visual_class):
* device-x.c (x_init_device):
* device-x.c (construct_name_list):
* device-x.c (x_get_resource_prefix):
* device-x.c (Fx_get_resource):
* device-x.c (Fx_display_visual_class):
* device.c:
* device.c (MARKED_SLOT):
* device.c (allocate_device):
* device.c (Fmake_device):
* device.c (delete_device_internal):
* device.c (Fset_device_class):
* device.h:
* devslots.h:
* devslots.h (MARKED_SLOT):
* dialog-msw.c:
* dired-msw.c (mswindows_ls_sort_fcn):
* dired-msw.c (mswindows_get_files):
* dired-msw.c (mswindows_format_file):
* doprnt.c (parse_doprnt_spec):
* dumper.c:
* dumper.c (struct):
* dumper.c (dump_add_root_block):
* dumper.c (dump_add_root_struct_ptr):
* dumper.c (dump_add_root_lisp_object):
* dumper.c (pdump_struct_list_elt):
* dumper.c (pdump_get_entry_list):
* dumper.c (pdump_backtrace):
* dumper.c (pdump_bump_depth):
* dumper.c (pdump_register_sub):
* dumper.c (pdump_register_object):
* dumper.c (pdump_register_struct_contents):
* dumper.c (pdump_register_struct):
* dumper.c (pdump_store_new_pointer_offsets):
* dumper.c (pdump_dump_data):
* dumper.c (pdump_reloc_one):
* dumper.c (pdump_allocate_offset):
* dumper.c (pdump_scan_by_alignment):
* dumper.c (pdump_dump_root_blocks):
* dumper.c (pdump_dump_rtables):
* dumper.c (pdump_dump_root_lisp_objects):
* dumper.c (pdump):
* dumper.c (pdump_load_finish):
* dumper.c (pdump_file_get):
* dumper.c (pdump_resource_get):
* dumper.c (pdump_load):
* editfns.c (save_excursion_restore):
* editfns.c (user_login_name):
* editfns.c (save_restriction_restore):
* elhash.c:
* elhash.c (htentry):
* elhash.c (struct Lisp_Hash_Table):
* elhash.c (HTENTRY_CLEAR_P):
* elhash.c (LINEAR_PROBING_LOOP):
* elhash.c (check_hash_table_invariants):
* elhash.c (mark_hash_table):
* elhash.c (hash_table_equal):
* elhash.c (print_hash_table_data):
* elhash.c (free_hentries):
* elhash.c (make_general_lisp_hash_table):
* elhash.c (decode_hash_table_weakness):
* elhash.c (decode_hash_table_test):
* elhash.c (Fcopy_hash_table):
* elhash.c (resize_hash_table):
* elhash.c (pdump_reorganize_hash_table):
* elhash.c (find_htentry):
* elhash.c (Fgethash):
* elhash.c (Fputhash):
* elhash.c (remhash_1):
* elhash.c (Fremhash):
* elhash.c (Fclrhash):
* elhash.c (copy_compress_hentries):
* elhash.c (elisp_maphash_unsafe):
* elhash.c (finish_marking_weak_hash_tables):
* elhash.c (prune_weak_hash_tables):
* elhash.h:
* emacs.c:
* emacs.c (main_1):
* emacs.c (main):
* emacs.c (shut_down_emacs):
* emodules.h (dump_add_root_lisp_object):
* eval.c:
* eval.c (unwind_to_catch):
* eval.c (maybe_signal_error_1):
* eval.c (maybe_signal_continuable_error_1):
* eval.c (maybe_signal_error):
* eval.c (maybe_signal_continuable_error):
* eval.c (maybe_signal_error_2):
* eval.c (maybe_signal_continuable_error_2):
* eval.c (maybe_signal_ferror):
* eval.c (maybe_signal_continuable_ferror):
* eval.c (maybe_signal_ferror_with_frob):
* eval.c (maybe_signal_continuable_ferror_with_frob):
* eval.c (maybe_syntax_error):
* eval.c (maybe_sferror):
* eval.c (maybe_invalid_argument):
* eval.c (maybe_invalid_constant):
* eval.c (maybe_invalid_operation):
* eval.c (maybe_invalid_change):
* eval.c (maybe_invalid_state):
* eval.c (Feval):
* eval.c (call_trapping_problems):
* eval.c (call_with_suspended_errors):
* eval.c (warn_when_safe_lispobj):
* eval.c (warn_when_safe):
* eval.c (vars_of_eval):
* event-Xt.c:
* event-Xt.c (maybe_define_x_key_as_self_inserting_character):
* event-Xt.c (x_to_emacs_keysym):
* event-Xt.c (x_event_to_emacs_event):
* event-Xt.c (emacs_Xt_enqueue_focus_event):
* event-Xt.c (emacs_Xt_format_magic_event):
* event-Xt.c (emacs_Xt_compare_magic_event):
* event-Xt.c (emacs_Xt_hash_magic_event):
* event-Xt.c (emacs_Xt_handle_magic_event):
* event-Xt.c (Xt_timeout_to_emacs_event):
* event-Xt.c (Xt_process_to_emacs_event):
* event-Xt.c (signal_special_Xt_user_event):
* event-Xt.c (emacs_Xt_next_event):
* event-Xt.c (emacs_Xt_event_handler):
* event-Xt.c (emacs_Xt_drain_queue):
* event-Xt.c (emacs_Xt_event_pending_p):
* event-Xt.c (check_if_pending_expose_event):
* event-Xt.c (reinit_vars_of_event_Xt):
* event-Xt.c (vars_of_event_Xt):
* event-gtk.c:
* event-gtk.c (IS_MODIFIER_KEY):
* event-gtk.c (emacs_gtk_format_magic_event):
* event-gtk.c (emacs_gtk_compare_magic_event):
* event-gtk.c (emacs_gtk_hash_magic_event):
* event-gtk.c (emacs_gtk_handle_magic_event):
* event-gtk.c (gtk_to_emacs_keysym):
* event-gtk.c (gtk_timeout_to_emacs_event):
* event-gtk.c (gtk_process_to_emacs_event):
* event-gtk.c (dragndrop_data_received):
* event-gtk.c (signal_special_gtk_user_event):
* event-gtk.c (emacs_gtk_next_event):
* event-gtk.c (gtk_event_to_emacs_event):
* event-gtk.c (generic_event_handler):
* event-gtk.c (emacs_shell_event_handler):
* event-gtk.c (emacs_gtk_drain_queue):
* event-gtk.c (emacs_gtk_event_pending_p):
* event-gtk.c (reinit_vars_of_event_gtk):
* event-gtk.c (vars_of_event_gtk):
* event-msw.c:
* event-msw.c (struct winsock_stream):
* event-msw.c (winsock_reader):
* event-msw.c (winsock_writer):
* event-msw.c (mswindows_enqueue_dispatch_event):
* event-msw.c (mswindows_enqueue_misc_user_event):
* event-msw.c (mswindows_enqueue_magic_event):
* event-msw.c (mswindows_enqueue_process_event):
* event-msw.c (mswindows_enqueue_mouse_button_event):
* event-msw.c (mswindows_enqueue_keypress_event):
* event-msw.c (mswindows_dequeue_dispatch_event):
* event-msw.c (emacs_mswindows_drain_queue):
* event-msw.c (mswindows_need_event_in_modal_loop):
* event-msw.c (mswindows_need_event):
* event-msw.c (mswindows_wm_timer_callback):
* event-msw.c (dde_eval_string):
* event-msw.c (Fdde_alloc_advise_item):
* event-msw.c (mswindows_dde_callback):
* event-msw.c (mswindows_wnd_proc):
* event-msw.c (remove_timeout_mapper):
* event-msw.c (emacs_mswindows_remove_timeout):
* event-msw.c (emacs_mswindows_event_pending_p):
* event-msw.c (emacs_mswindows_format_magic_event):
* event-msw.c (emacs_mswindows_compare_magic_event):
* event-msw.c (emacs_mswindows_hash_magic_event):
* event-msw.c (emacs_mswindows_handle_magic_event):
* event-msw.c (emacs_mswindows_select_console):
* event-msw.c (emacs_mswindows_unselect_console):
* event-msw.c (reinit_vars_of_event_mswindows):
* event-msw.c (vars_of_event_mswindows):
* event-stream.c:
* event-stream.c (mark_command_builder):
* event-stream.c (reset_command_builder_event_chain):
* event-stream.c (allocate_command_builder):
* event-stream.c (copy_command_builder):
* event-stream.c (command_builder_append_event):
* event-stream.c (event_stream_event_pending_p):
* event-stream.c (event_stream_force_event_pending):
* event-stream.c (maybe_read_quit_event):
* event-stream.c (event_stream_drain_queue):
* event-stream.c (remove_quit_p_event):
* event-stream.c (event_stream_quit_p):
* event-stream.c (echo_key_event):
* event-stream.c (maybe_kbd_translate):
* event-stream.c (execute_help_form):
* event-stream.c (event_stream_generate_wakeup):
* event-stream.c (enqueue_dispatch_event):
* event-stream.c (enqueue_magic_eval_event):
* event-stream.c (Fenqueue_eval_event):
* event-stream.c (enqueue_misc_user_event):
* event-stream.c (enqueue_misc_user_event_pos):
* event-stream.c (next_event_internal):
* event-stream.c (Fnext_event):
* event-stream.c (Faccept_process_output):
* event-stream.c (execute_internal_event):
* event-stream.c (munge_keymap_translate):
* event-stream.c (command_builder_find_leaf_no_mule_processing):
* event-stream.c (command_builder_find_leaf):
* event-stream.c (lookup_command_event):
* event-stream.c (is_scrollbar_event):
* event-stream.c (execute_command_event):
* event-stream.c (Fdispatch_event):
* event-stream.c (Fread_key_sequence):
* event-stream.c (dribble_out_event):
* event-stream.c (vars_of_event_stream):
* event-tty.c (tty_timeout_to_emacs_event):
* event-tty.c (emacs_tty_next_event):
* event-tty.c (emacs_tty_drain_queue):
* event-tty.c (reinit_vars_of_event_tty):
* event-unixoid.c:
* event-unixoid.c (find_tty_or_stream_console_from_fd):
* event-unixoid.c (read_event_from_tty_or_stream_desc):
* event-unixoid.c (drain_tty_devices):
* event-unixoid.c (poll_fds_for_input):
* events.c:
* events.c (deinitialize_event):
* events.c (zero_event):
* events.c (mark_event):
* events.c (print_event_1):
* events.c (print_event):
* events.c (event_equal):
* events.c (event_hash):
* events.c (Fmake_event):
* events.c (Fdeallocate_event):
* events.c (Fcopy_event):
* events.c (map_event_chain_remove):
* events.c (character_to_event):
* events.c (event_to_character):
* events.c (Fevent_to_character):
* events.c (format_event_object):
* events.c (upshift_event):
* events.c (downshift_event):
* events.c (event_upshifted_p):
* events.c (Fevent_live_p):
* events.c (Fevent_type):
* events.c (Fevent_timestamp):
* events.c (CHECK_EVENT_TYPE):
* events.c (CHECK_EVENT_TYPE2):
* events.c (CHECK_EVENT_TYPE3):
* events.c (Fevent_key):
* events.c (Fevent_button):
* events.c (Fevent_modifier_bits):
* events.c (event_x_y_pixel_internal):
* events.c (event_pixel_translation):
* events.c (Fevent_process):
* events.c (Fevent_function):
* events.c (Fevent_object):
* events.c (Fevent_properties):
* events.c (syms_of_events):
* events.c (vars_of_events):
* events.h:
* events.h (struct event_stream):
* events.h (struct Lisp_Key_Data):
* events.h (KEY_DATA_KEYSYM):
* events.h (EVENT_KEY_KEYSYM):
* events.h (struct Lisp_Button_Data):
* events.h (EVENT_BUTTON_BUTTON):
* events.h (struct Lisp_Motion_Data):
* events.h (EVENT_MOTION_X):
* events.h (struct Lisp_Process_Data):
* events.h (EVENT_PROCESS_PROCESS):
* events.h (struct Lisp_Timeout_Data):
* events.h (EVENT_TIMEOUT_INTERVAL_ID):
* events.h (struct Lisp_Eval_Data):
* events.h (EVENT_EVAL_FUNCTION):
* events.h (struct Lisp_Misc_User_Data):
* events.h (EVENT_MISC_USER_FUNCTION):
* events.h (struct Lisp_Magic_Eval_Data):
* events.h (EVENT_MAGIC_EVAL_INTERNAL_FUNCTION):
* events.h (struct Lisp_Magic_Data):
* events.h (EVENT_MAGIC_UNDERLYING):
* events.h (EVENT_MAGIC_GDK_EVENT):
* events.h (struct Lisp_Event):
* events.h (XEVENT_CHANNEL):
* events.h (SET_EVENT_TIMESTAMP_ZERO):
* events.h (SET_EVENT_CHANNEL):
* events.h (SET_EVENT_NEXT):
* events.h (XSET_EVENT_TYPE):
* events.h (struct command_builder):
* extents.c:
* extents.c (gap_array_adjust_markers):
* extents.c (gap_array_recompute_derived_values):
* extents.c (gap_array_move_gap):
* extents.c (gap_array_make_gap):
* extents.c (gap_array_insert_els):
* extents.c (gap_array_delete_els):
* extents.c (gap_array_make_marker):
* extents.c (gap_array_delete_marker):
* extents.c (gap_array_move_marker):
* extents.c (make_gap_array):
* extents.c (free_gap_array):
* extents.c (extent_list_num_els):
* extents.c (extent_list_insert):
* extents.c (mark_extent_auxiliary):
* extents.c (allocate_extent_auxiliary):
* extents.c (decode_extent_at_flag):
* extents.c (verify_extent_mapper):
* extents.c (symbol_to_glyph_layout):
* extents.c (syms_of_extents):
* faces.c:
* file-coding.c:
* file-coding.c (struct_detector_category_description =):
* file-coding.c (detector_category_dynarr_description_1):
* file-coding.c (struct_detector_description =):
* file-coding.c (detector_dynarr_description_1):
* file-coding.c (MARKED_SLOT):
* file-coding.c (mark_coding_system):
* file-coding.c (coding_system_extra_description_map):
* file-coding.c (coding_system_description):
* file-coding.c (allocate_coding_system):
* file-coding.c (symbol_to_eol_type):
* file-coding.c (Fcoding_system_aliasee):
* file-coding.c (set_coding_stream_coding_system):
* file-coding.c (struct convert_eol_coding_system):
* file-coding.c (struct undecided_coding_system):
* file-coding.c (undecided_mark_coding_stream):
* file-coding.c (coding_category_symbol_to_id):
* file-coding.c (struct gzip_coding_system):
* file-coding.c (coding_system_type_create):
* file-coding.h:
* file-coding.h (struct Lisp_Coding_System):
* file-coding.h (CODING_SYSTEM_SLOT_DECLARATION):
* file-coding.h (coding_system_variant):
* file-coding.h (struct coding_system_methods):
* file-coding.h (DEFINE_CODING_SYSTEM_TYPE_WITH_DATA):
* file-coding.h (INITIALIZE_CODING_SYSTEM_TYPE_WITH_DATA):
* file-coding.h (struct coding_stream):
* fileio.c (Fsubstitute_in_file_name):
* floatfns.c:
* fns.c:
* fns.c (base64_encode_1):
* frame-gtk.c:
* frame-gtk.c (Fgtk_start_drag_internal):
* frame-impl.h (struct frame):
* frame-impl.h (MARKED_SLOT):
* frame-msw.c:
* frame-x.c:
* frame-x.c (Fcde_start_drag_internal):
* frame-x.c (Foffix_start_drag_internal):
* frame.c:
* frame.c (MARKED_SLOT):
* frame.c (allocate_frame_core):
* frame.c (delete_frame_internal):
* frame.c (Fmouse_position_as_motion_event):
* frameslots.h:
* frameslots.h (MARKED_SLOT_ARRAY):
* free-hook.c:
* glyphs-msw.c (mswindows_widget_instantiate):
* glyphs-x.c:
* glyphs-x.c (convert_EImage_to_XImage):
* glyphs.c:
* glyphs.c (process_image_string_instantiator):
* glyphs.c (mark_image_instance):
* glyphs.c (allocate_image_instance):
* glyphs.c (unmap_subwindow):
* glyphs.c (map_subwindow):
* glyphs.c (syms_of_glyphs):
* glyphs.c (specifier_type_create_image):
* glyphs.h:
* glyphs.h (struct text_image_instance):
* glyphs.h (struct Lisp_Image_Instance):
* gmalloc.c:
* gmalloc.c ("C"):
* gpmevent.c (Freceive_gpm_event):
* gpmevent.c (gpm_next_event_cb):
* gpmevent.c (vars_of_gpmevent):
* gtk-glue.c (gdk_event_to_emacs_event):
* gtk-xemacs.c (gtk_xemacs_class_init):
* gui-msw.c:
* gui-msw.c (mswindows_handle_gui_wm_command):
* gui-msw.c (mswindows_translate_menu_or_dialog_item):
* gui-x.c:
* gui-x.c (mark_popup_data):
* gui-x.c (snarf_widget_value_mapper):
* gui-x.c (gcpro_popup_callbacks):
* gui-x.c (ungcpro_popup_callbacks):
* gui-x.c (free_popup_widget_value_tree):
* gui-x.c (popup_selection_callback):
* gui-x.h:
* gui-x.h (struct popup_data):
* gui.c:
* gui.c (allocate_gui_item):
* gutter.c (decode_gutter_position):
* hash.c (NULL_ENTRY):
* indent.c (vmotion_1):
* indent.c (vmotion_pixels):
* input-method-motif.c (res):
* input-method-xlib.c (IMInstantiateCallback):
* input-method-xlib.c (XIM_init_device):
* input-method-xlib.c (res):
* intl-encap-win32.c:
* intl-encap-win32.c (qxeSHGetDataFromIDList):
* intl-win32.c:
* intl-win32.c (mswindows_multibyte_cp_type):
* intl-win32.c (struct mswindows_multibyte_coding_system):
* keymap.c:
* keymap.c (make_key_description):
* keymap.c (keymap_store):
* keymap.c (get_keyelt):
* keymap.c (keymap_lookup_1):
* keymap.c (define_key_parser):
* keymap.c (key_desc_list_to_event):
* keymap.c (event_matches_key_specifier_p):
* keymap.c (meta_prefix_char_p):
* keymap.c (ensure_meta_prefix_char_keymapp):
* keymap.c (Fdefine_key):
* keymap.c (struct raw_lookup_key_mapper_closure):
* keymap.c (raw_lookup_key):
* keymap.c (raw_lookup_key_mapper):
* keymap.c (lookup_keys):
* keymap.c (lookup_events):
* keymap.c (Flookup_key):
* keymap.c (struct map_keymap_unsorted_closure):
* keymap.c (map_keymap_unsorted_mapper):
* keymap.c (map_keymap_sorted):
* keymap.c (map_keymap_mapper):
* keymap.c (map_keymap):
* keymap.c (accessible_keymaps_mapper_1):
* keymap.c (Faccessible_keymaps):
* keymap.c (Fsingle_key_description):
* keymap.c (raw_keys_to_keys):
* keymap.c (format_raw_keys):
* keymap.c (where_is_recursive_mapper):
* keymap.c (where_is_internal):
* keymap.c (describe_map_mapper_shadow_search):
* keymap.c (keymap_lookup_inherited_mapper):
* keymap.c (describe_map_mapper):
* keymap.h (event_matches_key_specifier_p):
* lisp.h:
* lisp.h (this):
* lisp.h (RETURN_NOT_REACHED):
* lisp.h (struct Lisp_Vector):
* lisp.h (struct Lisp_Bit_Vector):
* lisp.h (UNGCPRO_1):
* lisp.h (NUNGCPRO):
* lisp.h (NNUNGCPRO):
* lisp.h (DECLARE_INLINE_HEADER):
* lrecord.h:
* lrecord.h (struct lrecord_header):
* lrecord.h (struct lcrecord_header):
* lrecord.h (lrecord_type):
* lrecord.h (struct lrecord_implementation):
* lrecord.h (RECORD_DUMPABLE):
* lrecord.h (memory_description_type):
* lrecord.h (data_description_entry_flags):
* lrecord.h (struct memory_description):
* lrecord.h (struct sized_memory_description):
* lrecord.h (XD_INDIRECT):
* lrecord.h (XD_IS_INDIRECT):
* lrecord.h (XD_DYNARR_DESC):
* lrecord.h (DEFINE_BASIC_LRECORD_IMPLEMENTATION):
* lrecord.h (MAKE_LRECORD_IMPLEMENTATION):
* lrecord.h (MAKE_EXTERNAL_LRECORD_IMPLEMENTATION):
* lrecord.h (alloc_lcrecord_type):
* lstream.c:
* lstream.c (Lstream_new):
* lstream.c (lisp_buffer_marker):
* lstream.h:
* lstream.h (lstream_implementation):
* lstream.h (DEFINE_LSTREAM_IMPLEMENTATION):
* lstream.h (DEFINE_LSTREAM_IMPLEMENTATION_WITH_DATA):
* marker.c:
* marker.c (copy_marker_1):
* mem-limits.h:
* menubar-gtk.c:
* menubar-gtk.c (gtk_popup_menu):
* menubar-msw.c:
* menubar-msw.c (mswindows_popup_menu):
* menubar-x.c (make_dummy_xbutton_event):
* menubar-x.c (command_builder_operate_menu_accelerator):
* menubar-x.c (menu_accelerator_safe_compare):
* menubar-x.c (menu_accelerator_safe_mod_compare):
* mule-charset.c:
* mule-charset.c (make_charset):
* mule-charset.c (Fcharset_property):
* mule-coding.c:
* mule-coding.c (ccs_description_1):
* mule-coding.c (ccs_description =):
* mule-coding.c (ccsd_description_1):
* mule-coding.c (ccsd_description =):
* nt.c (getpwnam):
* nt.c (init_mswindows_environment):
* nt.c (get_cached_volume_information):
* nt.c (mswindows_is_executable):
* nt.c (read_unc_volume):
* nt.c (mswindows_access):
* nt.c (mswindows_link):
* nt.c (mswindows_fstat):
* nt.c (mswindows_stat):
* nt.c (mswindows_executable_type):
* nt.c (Fmswindows_short_file_name):
* nt.c (Fmswindows_long_file_name):
* objects-impl.h (struct Lisp_Color_Instance):
* objects-impl.h (struct Lisp_Font_Instance):
* objects-tty.c:
* objects-x.c (allocate_nearest_color):
* objects.c:
* objects.c (Fmake_color_instance):
* objects.c (Fmake_font_instance):
* objects.c (font_instantiate):
* opaque.c:
* opaque.c (make_opaque):
* opaque.c (make_opaque_ptr):
* opaque.c (reinit_opaque_early):
* opaque.c (init_opaque_once_early):
* print.c:
* print.c (printing_badness):
* print.c (printing_major_badness):
* print.c (print_internal):
* print.c (debug_p4):
* print.c (dp):
* print.c (debug_backtrace):
* process-nt.c (nt_create_process):
* process-nt.c (get_internet_address):
* process-unix.c:
* process-unix.c (struct unix_process_data):
* process-unix.c (get_internet_address):
* process-unix.c (unix_alloc_process_data):
* process-unix.c (unix_create_process):
* process-unix.c (try_to_initialize_subtty):
* process-unix.c (unix_kill_child_process):
* process-unix.c (process_type_create_unix):
* process.c:
* process.c (mark_process):
* process.c (MARKED_SLOT):
* process.c (make_process_internal):
* process.c (Fprocess_tty_name):
* process.c (decode_signal):
* process.h:
* procimpl.h:
* procimpl.h (struct process_methods):
* procimpl.h (struct Lisp_Process):
* rangetab.c:
* realpath.c (readlink_and_correct_case):
* redisplay-x.c (x_window_output_end):
* redisplay-x.c (x_redraw_exposed_area):
* redisplay-x.c (x_clear_frame):
* redisplay.c:
* redisplay.h:
* redisplay.h (struct rune_dglyph):
* redisplay.h (struct rune):
* scrollbar.c:
* scrollbar.c (create_scrollbar_instance):
* specifier.c:
* specifier.c (specifier_empty_extra_description_1):
* specifier.c (make_specifier_internal):
* specifier.c (decode_locale_type):
* specifier.c (decode_how_to_add_specification):
* specifier.h:
* specifier.h (struct specifier_methods):
* specifier.h (DEFINE_SPECIFIER_TYPE_WITH_DATA):
* specifier.h (INITIALIZE_SPECIFIER_TYPE_WITH_DATA):
* symbols.c:
* symbols.c (Fsetplist):
* symbols.c (default_value):
* symbols.c (decode_magic_handler_type):
* symbols.c (handler_type_from_function_symbol):
* symbols.c (Fdefvaralias):
* symbols.c (init_symbols_once_early):
* symbols.c (reinit_symbols_early):
* symsinit.h:
* sysdep.c (sys_subshell):
* sysdep.c (tty_init_sys_modes_on_device):
* syswindows.h:
* text.c (dfc_convert_to_external_format):
* text.c (dfc_convert_to_internal_format):
* text.c (reinit_eistring_early):
* text.c (init_eistring_once_early):
* text.c (reinit_vars_of_text):
* text.h:
* text.h (INC_IBYTEPTR_FMT):
* text.h (DEC_IBYTEPTR_FMT):
* toolbar.c:
* toolbar.c (decode_toolbar_position):
* tooltalk.c:
* ui-gtk.c:
* unexnt.c:
* unexnt.c (_start):
* unexnt.c (unexec):
* unexnt.c (get_section_info):
* unicode.c:
* unicode.c (vars_of_unicode):
* window.c:
* window.c (allocate_window):
* window.c (new_window_mirror):
* window.c (update_mirror_internal):
* winslots.h:
2003-01-08 Andy Piper <andy(a)xemacs.org>
* unexcw.c (copy_executable_and_dump_data_section): Set the stack
reserve size during unexec().
2002-12-17 Daiki Ueno <daiki(a)xemacs.org>
* process-unix.c (unix_create_process): Set pipe write descriptor
non-blocking.
- -------- ChangeLog Entries from tests/ChangeLog --------
2003-02-16 Steve Youngs <youngs(a)xemacs.org>
* XEmacs 21.5.11 "cabbage" is released.
2003-01-19 Stephen J. Turnbull <stephen(a)xemacs.org>
* sigpipe.c: New file. Crashes 21.1 but not 21.4 or 21.5 (I
think). Thanks to Richard Mlynarik <mly(a)pobox.com>.
2003-01-17 Stephen J. Turnbull <stephen(a)xemacs.org>
* automated/test-harness.el (test-harness-from-buffer): Move
success rate report to end of line where it's easier to see.
2003-01-09 Stephen J. Turnbull <stephen(a)xemacs.org>
* automated/mule-tests.el: Test cases for charset-in-* functions.
2003-01-06 Stephen J. Turnbull <stephen(a)xemacs.org>
* automated/regexp-tests.el (stale match data): Stale match data
persists after failed match. Thanks to <bjacob(a)ca.metsci.com>.
- --
|---<Steve Youngs>---------------<GnuPG KeyID: 10D5C9C5>---|
| XEmacs - It's not just an editor. |
| It's a way of life. |
|------------------------------------<youngs(a)xemacs.org>---|
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.2.1 (GNU/Linux)
Comment: The XEmacs Development Team.
iD8DBQE+UDgnjNKQaxDVycURAgDQAJ9Oin0CUTPDKGgCx6cwusrQDY0+7wCeJCuA
80avU4wA9/PzZoGlrXVZ89o=
=b3jv
-----END PGP SIGNATURE-----