carbon2-commit: Document the new allocator and the new garbage collector in gc.c and mc-alloc.c.
14 years, 4 months
Marcus Crestani
changeset: 5294:2cc24c69446c
user: Marcus Crestani <crestani(a)informatik.uni-tuebingen.de>
date: Mon Jul 05 18:17:39 2010 +0200
files: src/ChangeLog src/gc.c src/mc-alloc.c
description:
Document the new allocator and the new garbage collector in gc.c and mc-alloc.c.
diff -r 6466bc9ebf15 -r 2cc24c69446c src/ChangeLog
--- a/src/ChangeLog Wed Jun 23 08:04:18 2010 -0400
+++ b/src/ChangeLog Mon Jul 05 18:17:39 2010 +0200
@@ -1,3 +1,9 @@
+2010-06-05 Marcus Crestani <crestani(a)informatik.uni-tuebingen.de>
+
+ * gc.c:
+ * mc-alloc.c:
+ Document the new allocator and the new garbage collector.
+
2010-06-21 Jeff Sparkes <jsparkes(a)gmail.com>
* console-x-impl.h (DEVICE_X_XFTDRAW): Define, instead of
diff -r 6466bc9ebf15 -r 2cc24c69446c src/gc.c
--- a/src/gc.c Wed Jun 23 08:04:18 2010 -0400
+++ b/src/gc.c Mon Jul 05 18:17:39 2010 +0200
@@ -20,6 +20,318 @@
Boston, MA 02111-1307, USA. */
/* Synched up with: Not in FSF. */
+
+/*
+ Garbage Collectors in XEmacs
+
+ Currently, XEmacs comes with two garbage collectors:
+
+ - The "old garbage collector": a simple mark and sweep collector,
+ its implementation is mainly spread out over gc.c and alloc.c.
+ It is used by the default configuration or if you configure
+ `--with-newgc=no'.
+
+ - The "new garbage collector": an incremental mark and sweep collector,
+ its implementation is in gc.c. It is used if you configure
+ `--with-newgc'. It comes with a new allocator, see mc-alloc.c, and
+ with the KKCC mark algorith, see below.
+
+ Additionally, the old garbage collectors comes with two mark algorithms:
+
+ - The "recursive mark algorithm" marks live objects by recursively
+ calling mark_* functions on live objects. It is the default mark
+ algorithm of the old garbage collector.
+
+ - The "KKCC mark algorithm" uses an explicit stack that to keep
+ track of the current progress of traversal and uses memory layout
+ descriptions (that are also used by the portable dumper) instead
+ of the mark_* functions. The old garbage collector uses it if
+ you configure `--with-kkcc'. It is the default and only mark
+ algorithm of the new garbage collector.
+
+
+ The New Incremental Garbage Collector
+
+ An incremental garbage collector keeps garbage collection pause
+ times short by interleaving small amounts of collection work with
+ program execution, it does that by instrumenting write barrier
+ algorithms that essentially allow interrupting the mark phase.
+
+
+ Write Barrier
+
+ A write barrier is the most important prerequisite for fancy
+ garbage collection techniques. We implement a "Virtual Dirty Bit
+ (short: vdb) Write Barrier" that makes uses of the operating
+ system's memory-protection mechanisms: The write barrier
+ write-protects memory pages containing heap objects. If the
+ mutator tries to modify these objects by writing into the
+ write-protected page, the operating system generates a fault. The
+ write barrier catches this fault, reads out the error-causing
+ address and can thus identify the updated object and page.
+
+ Not all environments and operating systems provide the mechanism to
+ write-protect memory, catch resulting write faults, and read out
+ the faulting address. But luckily, most of today's operating
+ systems provide the features needed for the write-barrier
+ implementation. Currently, XEmacs includes write-barrier
+ implementations for the following platforms:
+
+ - POSIX-compliant platforms like up-to-date UNIX, Linux, Solaris,
+ etc. use the system call `mprotect' for memory protection,
+ `sigaction' for signal handling and get the faulting address from
+ `struct siginfo'. See file vdb-posix.c.
+
+ - Mach-based systems like Mac OS X use "Mach Exception Handlers".
+ See file vdb-mach.c.
+
+ - Windows systems like native Windows and Cygwin use Microsoft's
+ so-called "Structured Exception Handling". See file vdb-win32.c.
+
+ The configure script determines which write barrier implementation
+ to use for a system. If no write barrier implementation is working
+ on that system, a fall-back "fake" implementation is used: This
+ implementation simply turns of the incremental write barrier at
+ runtime and does not allow any incremental collection (see
+ vdb-fake.c). The garbage collector then acts like a traditional
+ mark-and-sweep garbage collector. Generally, the incremental
+ garbage collector can be turned of at runtime by the user or by
+ applications, see below.
+
+
+ Memory Protection and Object Layout
+
+ Implementations of a memory-protection mechanism may restrict the
+ size and the alignment of the memory region to be on page-size
+ boundaries. All objects subject to be covered by the write barrier
+ have to be allocated on logical memory pages, so that they meet the
+ requirement to be write-protected. The new allocator mc-alloc is
+ aware of a system page size---it allocates all Lisp objects on
+ logical memory pages and is therefore defaulted to on when the new
+ garbage collector is enabled.
+
+ Unfortunately, the Lisp object layout that works with the old
+ collector leads to holes in the write barrier: Not all data
+ structures containing pointers to Lisp objects are allocated on the
+ Lisp heap. Some Lisp objects do not carry all their information in
+ the object itself. External parts are kept in separately allocated
+ memory blocks that are not managed by the new Lisp allocator.
+ Examples for these objects are hash tables and dynamic arrays, two
+ objects that can dynamically grow and shrink. The separate memory
+ blocks are not guaranteed to reside on page boundaries, and thus
+ cannot be watched by the write barrier.
+
+ Moreover, the separate parts can contain live pointers to other Lisp
+ objects. These pointers are not covered by the write barrier and
+ modifications by the client during garbage collection do escape. In
+ this case, the client changes the connectivity of the reachability
+ graph behind the collector's back, which eventually leads to
+ erroneous collection of live objects. To solve this problem, I
+ transformed the separately allocated parts to fully qualified Lisp
+ objects that are managed by the allocator and thus are covered by
+ the write barrier. This also removes a lot of special allocation
+ and removal code for the out-sourced parts. Generally, allocating
+ all data structures that contain pointers to Lisp objects on one
+ heap makes the whole memory layout more consistent.
+
+
+ Debugging
+
+ The virtual-dirty-bit write barrier provokes signals on purpose,
+ namely SIGSEGV and SIGBUS. When debugging XEmacs with this write
+ barrier running, the debugger always breaks whenever a signal
+ occurs. This behavior is generally desired: A debugger has to break
+ on signals, to allow the user to examine the cause of the
+ signal---especially for illegal memory access, which is a common
+ programming error. But the debugger should not break for signals
+ caused by the write barrier. Therefore, most debuggers provide the
+ ability to turn of their fault handling for specific signals. The
+ configure script generates the debugger's settings .gdbinit and
+ .dbxrc, adding code to turn of signal handling for SIGSEGV and
+ SIGBUS, if the new garbage collector is used.
+
+ But what happens if a bug in XEmacs causes an illegal memory access?
+ To maintain basic debugging abilities, we use another signal: First,
+ the write-barrier signal handler has to determine if the current
+ error situation is caused by the write-barrier memory protection or
+ not. Therefore, the signal handler checks if the faulting address
+ has been write-protected before. If it has not, the fault is caused
+ by a bug; the debugger has to break in this situation. To achieve
+ this, the signal handler raises SIGABRT to abort the program. Since
+ SIGABRT is not masked out by the debugger, XEmacs aborts and allows
+ the user to examine the problem.
+
+
+ Incremental Garbage Collection
+
+ The new garbage collector is still a mark-and-sweep collector, but
+ now the mark phase no longer runs in one atomic action, it is
+ interleaved with program execution. The incremental garbage
+ collector needs an explicit mark stack to store the state of the
+ incremental traversal: the KKCC mark algorithm is a prerequisite and
+ is enabled by default when the new garbage collector is on.
+
+ Garbage collection is invoked as before: After `gc-cons-threshold'
+ bytes have been allocated since the last garbage collection (or
+ after `gc-cons-percentage' percentage of the total amount of memory
+ used for Lisp data has been allocated since the last garbage
+ collection) a collection starts. After some initialization, the
+ marking begins.
+
+ The variable `gc-incremental-traversal-threshold' contains how many
+ steps of incremental work have to be executed in one incremental
+ traversal cycle. After that many steps have been made, the mark
+ phase is interrupted and the client resumes. Now, the Lisp memory
+ is write-protected and the write barrier records modified objects.
+ Incremental traversal is resumed after
+ `gc-cons-incremental-threshold' bytes have been allocated since the
+ interruption of garbage collection. Then, the objects recorded by
+ the write-barrier have to be re-examined by the traversal, i.e. they
+ are re-pushed onto the mark stack and processed again. Once the
+ mark stack is empty, the traversal is done.
+
+ A full incremental collection is slightly slower than a full garbage
+ collection before: There is an overhead for storing pointers into
+ objects when the write barrier is running, and an overhead for
+ repeated traversal of modified objects. However, the new
+ incremental garbage collector reduces client pause times to
+ one-third, so even when a garbage collection is running, XEmacs
+ stays reactive.
+
+
+ Tricolor Marking: White, Black, and Grey Mark Bits
+
+ Garbage collection traverses the graph of reachable objects and
+ colors them. The objects subject to garbage collection are white at
+ the beginning. By the end of the collection, those that will be
+ retained are colored black. When there are no reachable objects left
+ to blacken, the traversal of live data structures is finished. In
+ traditional mark-and-sweep collectors, this black and white coloring
+ is sufficient.
+
+ In an incremental collector, the intermediate state of the traversal
+ is im- portant because of ongoing mutator activity: the mutator
+ cannot be allowed to change things in such way that the collector
+ will fail to find all reachable objects. To understand and prevent
+ such interactions between the mutator and the collector, it is
+ useful to introduce a third color, grey.
+
+ Grey objects have been reached by the traversal, but its descendants
+ may not have been. White objects are changed to grey when they are
+ reached by the traversal. Grey objects mark the current state of the
+ traversal: traversal pro- ceeds by processing the grey objects. The
+ KKCC mark stack holds all the currently grey-colored objects.
+ Processing a grey object means following its outgoing pointers, and
+ coloring it black afterwards.
+
+ Intuitively, the traversal proceeds in a wavefront of grey objects
+ that separates the unreached objects, which are colored white, from
+ the already processed black objects.
+
+ The allocator takes care of storing the mark bits: The mark bits are
+ kept in a tree like structure, for details see mc-alloc.c.
+
+
+ Internal States of the Incremental Garbage Collector
+
+ To keep track of its current state, the collector holds it's current
+ phase in the global `gc_state' variable. A collector phase is one
+ of the following:
+
+ NONE No incremental or full collection is currently running.
+
+ INIT_GC The collector prepares for a new collection, e.g. sets some
+ global variables.
+
+ PUSH_ROOT_SET The collector pushes the root set on the mark stack
+ to start the traversal of live objects.
+
+ MARK The traversal of live objects colors the reachable objects
+ white, grey, or black, according to their lifeness. The mark
+ phase can be interrupted by the incremental collection algorithm:
+ Before the client (i.e. the non collector part of XEmacs) resumes,
+ the write barrier has to be installed so that the collector knows
+ what objects get modified during the collector's pause.
+ Installing a write barrier means protecting pages that only
+ contain black objects and recording write access to these objects.
+ Pages with white or grey objects do not need to be protected,
+ since these pages are due to marking anyways when the collector
+ resumes. Once the collector resumes, it has to re-scan all
+ objects that have been modified during the collector pause and
+ have been caught by the write barrier. The mark phase is done when
+ there are no more grey objects on the heap, i.e. the KKCC mark stack
+ is empty.
+
+ REPUSH_ROOT_SET After the mark phase is done, the collector has to
+ traverse the root set pointers again, since modifications to the
+ objects in the root set can not all be covered by the write barrier
+ (e.g. root set objects that are on the call stack). Therefore, the
+ collector has to traverse the root set again without interruption.
+
+ FINISH_MARK After the mark phase is finished, some objects with
+ special liveness semantics have to be treated separately, e.g.
+ ephemerons and the various flavors of weak objects.
+
+ FINALIZE The collector registers all objects that have finalizers
+ for finalization. Finalizations happens asynchronously sometimes
+ after the collection has finished.
+
+ SWEEP The allocator scans the entire heap and frees all white marked
+ objects. The freed memory is recycled and can be re-used for future
+ allocations. The sweep phase is carried out atomically.
+
+ FINISH_GC The collector cleans up after the garbage collection by
+ resetting some global variables.
+
+
+ Lisp Interface
+
+ The new garbage collector can be accessed directly from Emacs Lisp.
+ Basically, two functions invoke the garbage collector:
+
+ (gc-full) starts a full garbage collection. If an incremental
+ garbage collection is already running, it is finished without
+ further interruption. This function guarantees that unused
+ objects have been freed when it returns.
+
+ (gc-incremental) starts an incremental garbage collection. If an
+ incremental garbage collection is already running, the next cycle
+ of incremental traversal is started. The garbage collection is
+ finished if the traversal completes. Note that this function does
+ not necessarily free any memory. It only guarantees that the
+ traversal of the heap makes progress.
+
+ The old garbage collector uses the function (garbage-collect) to
+ invoke a garbage collection. This function is still in use by some
+ applications that explicitly want to invoke a garbage collection.
+ Since these applications may expect that unused memory has really
+ been freed when (garbage-collect) returns, it maps to (gc-full).
+
+ The new garbage collector is highly customizable during runtime; it
+ can even be switched back to the traditional mark-and-sweep garbage
+ collector: The variable allow-incremental-gc controls whether
+ garbage collections may be interrupted or if they have to be carried
+ out in one atomic action. Setting allow-incremental-gc to nil
+ prevents incremental garbage collection, and the garbage collector
+ then only does full collects, even if (gc-incremental) is called.
+ Non-nil allows incremental garbage collection.
+
+ This way applications can freely decide what garbage collection
+ algorithm is best for the upcoming memory usage. How frequently a
+ garbage collection occurs and how much traversal work is done in one
+ incremental cycle can also be modified during runtime. See
+
+ M-x customize RET alloc RET
+
+ for an overview of all settings.
+
+
+ More Information
+
+ More details can be found in
+ http://crestani.de/xemacs/pdf/thesis-newgc.pdf .
+
+*/
#include <config.h>
#include "lisp.h"
@@ -50,8 +362,14 @@
#include "vdb.h"
+/* Number of bytes of consing since gc before a full gc should happen. */
#define GC_CONS_THRESHOLD 2000000
+
+/* Number of bytes of consing since gc before another cycle of the gc
+ should happen in incremental mode. */
#define GC_CONS_INCREMENTAL_THRESHOLD 200000
+
+/* Number of elements marked in one cycle of incremental GC. */
#define GC_INCREMENTAL_TRAVERSAL_THRESHOLD 100000
/* Number of bytes of consing done since the last GC. */
diff -r 6466bc9ebf15 -r 2cc24c69446c src/mc-alloc.c
--- a/src/mc-alloc.c Wed Jun 23 08:04:18 2010 -0400
+++ b/src/mc-alloc.c Mon Jul 05 18:17:39 2010 +0200
@@ -20,6 +20,227 @@
Boston, MA 02111-1307, USA. */
/* Synched up with: Not in FSF. */
+
+/*
+ The New Allocator
+
+ The ideas and algorithms are based on the allocator of the
+ Boehm-Demers-Weiser conservative garbage collector. See
+ http://www.hpl.hp.com/personal/Hans_ Boehm/gc/index.html.
+
+ The new allocator is enabled when the new garbage collector
+ is enabled (with `--with-newgc'). The implementation of
+ the new garbage collector is in gc.c.
+
+ The new allocator takes care of:
+ - allocating objects in a write-barrier-friendly way
+ - manage object's mark bits
+
+ Three-Level Allocation
+
+ The new allocator efficiently manages the allocation of Lisp
+ objects by minimizing the number of times malloc() and free() are
+ called. The allocation process has three layers of abstraction:
+
+ 1. It allocates memory in very large chunks called heap sections.
+
+ 2. The heap sections are subdivided into pages. The page size is
+ determined by the constant PAGE_SIZE. It holds the size of a page
+ in bytes.
+
+ 3. One page consists of one or more cells. Each cell represents
+ a memory location for an object. The cells on one page all have
+ the same size, thus every page only contains equal-sized
+ objects.
+
+ If an object is bigger than page size, it is allocated on a
+ multi-page. Then there is only one cell on a multi-page (the cell
+ covers the full multi-page). Is an object smaller than 1/2 PAGE_SIZE,
+ a page contains several objects and several cells. There
+ is only one cell on a page for object sizes from 1/2 PAGE_SIZE to
+ PAGE_SIZE (whereas multi-pages always contain 2 only one
+ cell). Only in layer one malloc() and free() are called.
+
+
+ Size Classes and Page Lists
+
+ Meta-information about every page and multi-page is kept in a page
+ header. The page header contains some bookkeeping information like
+ number of used and free cells, and pointers to other page
+ headers. The page headers are linked in a page list.
+
+ Every page list builds a size class. A size class contains all
+ pages (linked via page headers) for objects of the same size. The
+ new allocator does not group objects based on their type, it groups
+ objects based on their sizes.
+
+ Here is an example: A cons contains a lrecord_header, a car and cdr
+ field. Altogether it uses 12 bytes of memory (on 32 bits
+ machines). All conses are allocated on pages with a cell size of 12
+ bytes. All theses pages are kept together in a page list, which
+ represents the size class for 12 bytes objects. But this size class
+ is not exclusively for conses only. Other objects, which are also
+ 12 bytes big (e.g. weak-boxes), are allocated in the same size
+ class and on the same pages.
+
+ The number of size classes is customizable, so is the size step
+ between successive size classes.
+
+
+ Used and Unused Heap
+
+ The memory which is managed by the allocator can be divided in two
+ logical parts:
+
+ The used heap contains pages, on which objects are allocated. These
+ pages are com- pletely or partially occupied. In the used heap, it
+ is important to quickly find a free spot for a new
+ object. Therefore the size classes of the used heap are defined by
+ the size of the cells on the pages. The size classes should match
+ common object sizes, to avoid wasting memory.
+
+ The unused heap only contains completely empty pages. They have
+ never been used or have been freed completely again. In the unused
+ heap, the size of consecutive memory tips the scales. A page is the
+ smallest entity which is asked for. Therefore, the size classes of
+ the unused heap are defined by the number of consecutive pages.
+
+ The parameters for the different size classes can be adjusted
+ independently, see `configurable values' below.
+
+
+ The Allocator's Data Structures
+
+ The struct `mc_allocator_globals holds' all the data structures
+ that the new allocator uses (lists of used and unused pages, mark
+ bits, etc.).
+
+
+ Mapping of Heap Pointers to Page Headers
+
+ For caching benefits, the page headers and mark bits are stored
+ separately from their associated page. During garbage collection
+ (i.e. for marking and freeing objects) it is important to identify
+ the page header which is responsible for a given Lisp object.
+
+ To do this task quickly, I added a two level search tree: the upper
+ 10 bits of the heap pointer are the index of the first level. This
+ entry of the first level links to the second level, where the next
+ 10 bits of the heap pointer are used to identify the page
+ header. The remaining bits point to the object relative to the
+ page.
+
+ On architectures with more than 32 bits pointers, a hash value of
+ the upper bits is used to index into the first level.
+
+
+ Mark Bits
+
+ For caching purposes, the mark bits are no longer kept within the
+ objects, they are kept in a separate bit field.
+
+ Every page header has a field for the mark bits of the objects on
+ the page. If there are less cells on the page than there fit bits
+ in the integral data type EMACS_INT, the mark bits are stored
+ directly in this EMACS_INT.
+
+ Otherwise, the mark bits are written in a separate space, with the
+ page header pointing to this space. This happens to pages with
+ rather small objects: many cells fit on a page, thus many mark bits
+ are needed.
+
+
+ Allocate Memory
+
+ Use
+ void *mc_alloc (size_t size)
+ to request memory from the allocator. This returns a pointer to a
+ newly allocated block of memory of given size.
+
+ This is how the new allocator allocates memory:
+ 1. Determine the size class of the object.
+ 2. Is there already a page in this size class and is there a free
+ cell on this page?
+ * YES
+ 3. Unlink free cell from free list, return address of free cell.
+ DONE.
+ * NO
+ 3. Is there a page in the unused heap?
+ * YES
+ 4. Move unused page to used heap.
+ 5. Initialize page header, free list, and mark bits.
+ 6. Unlink first cell from free list, return address of cell.
+ DONE.
+ * NO
+ 4. Expand the heap, add new memory to unused heap
+ [go back to 3. and proceed with the YES case].
+
+ The allocator puts partially filled pages to the front of the page
+ list, completely filled ones to the end. That guarantees a fast
+ terminating search for free cells. Are there two successive full
+ pages at the front of the page list, the complete size class is
+ full, a new page has to be added.
+
+
+ Expand Heap
+
+ To expand the heap, a big chunk of contiguous memory is allocated
+ using malloc(). These pieces are called heap sections. How big a new
+ heap section is (and thus the growth of the heap) is adjustable: See
+ MIN_HEAP_INCREASE, MAX_HEAP_INCREASE, and HEAP_GROWTH_DIVISOR below.
+
+
+ Free Memory
+
+ One optimization in XEmacs is that locally used Lisp objects are
+ freed manually (the memory is not wasted till the next garbage
+ collection). Therefore the new allocator provides this function:
+ void mc_free (void *ptr)
+ That frees the object pointed to by ptr.
+
+ This function is also used internally during sweep phase of the
+ garbage collection. This is how it works in detail:
+
+ 1. Use pointer to identify page header
+ (use lookup mechanism described above).
+ 2. Mark cell as free and hook it into free list.
+ 3. Is the page completely empty?
+ * YES
+ 4. Unlink page from page list.
+ 5. Remove page header, free list, and mark bits.
+ 6. Move page to unused heap.
+ * NO
+ 4. Move page to front of size class (to speed up allocation
+ of objects).
+
+ If the last object of a page is freed, the empty page is returned to
+ the unused heap. The allocator tries to coalesce adjacent pages, to
+ gain a big piece of contiguous memory. The resulting chunk is hooked
+ into the according size class of the unused heap. If this created a
+ complete heap section, the heap section is returned to the operating
+ system by using free().
+
+
+ Allocator and Garbage Collector
+
+ The new allocator simplifies the interface to the Garbage Collector:
+ * mark live objects: MARK_[WHITE|GREY|BLACK] (ptr)
+ * sweep heap: EMACS_INT mc_sweep (void)
+ * run finalizers: EMACS_INT mc_finalize (void)
+
+
+ Allocator and Dumper
+
+ The new allocator provides special finalization for the portable
+ dumper (to save disk space): EMACS_INT mc_finalize_for_disksave (void)
+
+
+ More Information
+
+ More details can be found in
+ http://crestani.de/xemacs/pdf/mc-alloc.pdf .
+
+*/
#include <config.h>
_______________________________________________
XEmacs-Patches mailing list
XEmacs-Patches(a)xemacs.org
http://lists.xemacs.org/mailman/listinfo/xemacs-patches
carbon2-commit: * console-x-impl.h (DEVICE_X_XFTDRAW): Define, instead of
14 years, 4 months
Jeff Sparkes
changeset: 5293:6466bc9ebf15
user: Jeff Sparkes <jsparkes(a)gmail.com>
date: Wed Jun 23 08:04:18 2010 -0400
files: lisp/gtk-widget-accessors.el src/ChangeLog src/console-x-impl.h src/device-x.c src/frame-x.c src/redisplay-xlike-inc.c
description:
* console-x-impl.h (DEVICE_X_XFTDRAW): Define, instead of
FRAME_X_FTDRAW.
(struct x_device): Add XftDraw field.
(struct x_frame): Remove XftDraw field.
Move XftDraw from frame to device for improved caching.
* device-x.c (x_delete_device): Free XftDraw here.
* frame-x.c (x_delete_frame): Remove freeing of XftDraw.
* redisplay-xlike-inc.c (XLIKE_output_string): Use
DEVICE_X_XFTDRAW instead of FRAME_X_XFTDRAW when lazily creating
XftDraw structure.
diff -r 0f7d483cff5a -r 6466bc9ebf15 lisp/gtk-widget-accessors.el
--- a/lisp/gtk-widget-accessors.el Sun Jun 13 23:54:13 2010 +0900
+++ b/lisp/gtk-widget-accessors.el Wed Jun 23 08:04:18 2010 -0400
@@ -20,28 +20,28 @@
(require 'gtk-ffi)
-(defconst GTK_TYPE_INVALID 0)
-(defconst GTK_TYPE_NONE 1)
-(defconst GTK_TYPE_CHAR 2)
-(defconst GTK_TYPE_UCHAR 3)
-(defconst GTK_TYPE_BOOL 4)
-(defconst GTK_TYPE_INT 5)
-(defconst GTK_TYPE_UINT 6)
-(defconst GTK_TYPE_LONG 7)
-(defconst GTK_TYPE_ULONG 8)
-(defconst GTK_TYPE_FLOAT 9)
-(defconst GTK_TYPE_DOUBLE 10)
-(defconst GTK_TYPE_STRING 11)
-(defconst GTK_TYPE_ENUM 12)
-(defconst GTK_TYPE_FLAGS 13)
-(defconst GTK_TYPE_BOXED 14)
-(defconst GTK_TYPE_POINTER 15)
-(defconst GTK_TYPE_SIGNAL 16)
-(defconst GTK_TYPE_ARGS 17)
-(defconst GTK_TYPE_CALLBACK 18)
-(defconst GTK_TYPE_C_CALLBACK 19)
-(defconst GTK_TYPE_FOREIGN 20)
-(defconst GTK_TYPE_OBJECT 21)
+(defconst G_TYPE_INVALID 0)
+(defconst G_TYPE_NONE 1)
+(defconst G_TYPE_CHAR 2)
+(defconst G_TYPE_UCHAR 3)
+(defconst G_TYPE_BOOL 4)
+(defconst G_TYPE_INT 5)
+(defconst G_TYPE_UINT 6)
+(defconst G_TYPE_LONG 7)
+(defconst G_TYPE_ULONG 8)
+(defconst G_TYPE_FLOAT 9)
+(defconst G_TYPE_DOUBLE 10)
+(defconst G_TYPE_STRING 11)
+(defconst G_TYPE_ENUM 12)
+(defconst G_TYPE_FLAGS 13)
+(defconst G_TYPE_BOXED 14)
+(defconst G_TYPE_POINTER 15)
+(defconst G_TYPE_SIGNAL 16)
+(defconst G_TYPE_ARGS 17)
+(defconst G_TYPE_CALLBACK 18)
+(defconst G_TYPE_C_CALLBACK 19)
+(defconst G_TYPE_FOREIGN 20)
+(defconst G_TYPE_OBJECT 21)
(defconst gtk-value-accessor-names
'("INVALID" "NONE" "CHAR" "UCHAR" "BOOL" "INT" "UINT" "LONG" "ULONG" "FLOAT" "DOUBLE"
@@ -88,8 +88,8 @@
"\n"
(format "\tthe_obj = GTK_%s (XGTK_OBJECT (obj)->object);\n" wrapper)
- (format "\targ.type = gtk_type_from_name (\"%s\");\n" (symbol-name (car arg))))
-; (format "\targ.type = GTK_TYPE_%s;\n" (or
+ (format "\targ.type = g_type_from_name (\"%s\");\n" (symbol-name (car arg))))
+; (format "\targ.type = G_TYPE_%s;\n" (or
; (nth (gtk-fundamental-type (car arg))
; gtk-value-accessor-names)
; (case (car arg)
@@ -100,12 +100,12 @@
(setq base-arg-type (gtk-fundamental-type (car arg)))
(cond
- ((= base-arg-type GTK_TYPE_OBJECT)
+ ((= base-arg-type G_TYPE_OBJECT)
(insert
(format "\tGTK_VALUE_OBJECT (arg) = GTK_OBJECT (the_obj->%s);"
(cdr arg))))
- ((or (= base-arg-type GTK_TYPE_POINTER)
- (= base-arg-type GTK_TYPE_BOXED))
+ ((or (= base-arg-type G_TYPE_POINTER)
+ (= base-arg-type G_TYPE_BOXED))
(insert
(format "\tGTK_VALUE_%s (arg) = (void *)the_obj->%s;"
(nth (gtk-fundamental-type (car arg)) gtk-value-accessor-names)
@@ -117,7 +117,7 @@
(cdr arg)))))
(insert
"\n"
- "\treturn (gtk_type_to_lisp (&arg));\n"
+ "\treturn (g_type_to_lisp (&arg));\n"
"}\n\n")
(push c-func-name func-names))
func-names))
diff -r 0f7d483cff5a -r 6466bc9ebf15 src/ChangeLog
--- a/src/ChangeLog Sun Jun 13 23:54:13 2010 +0900
+++ b/src/ChangeLog Wed Jun 23 08:04:18 2010 -0400
@@ -1,3 +1,19 @@
+2010-06-21 Jeff Sparkes <jsparkes(a)gmail.com>
+
+ * console-x-impl.h (DEVICE_X_XFTDRAW): Define, instead of
+ FRAME_X_FTDRAW.
+ (struct x_device): Add XftDraw field.
+ (struct x_frame): Remove XftDraw field.
+ Move XftDraw from frame to device for improved caching.
+
+ * device-x.c (x_delete_device): Free XftDraw here.
+
+ * frame-x.c (x_delete_frame): Remove freeing of XftDraw.
+
+ * redisplay-xlike-inc.c (XLIKE_output_string): Use
+ DEVICE_X_XFTDRAW instead of FRAME_X_XFTDRAW when lazily creating
+ XftDraw structure.
+
2010-06-13 Stephen J. Turnbull <stephen(a)xemacs.org>
* elhash.c:
diff -r 0f7d483cff5a -r 6466bc9ebf15 src/console-x-impl.h
--- a/src/console-x-impl.h Sun Jun 13 23:54:13 2010 +0900
+++ b/src/console-x-impl.h Wed Jun 23 08:04:18 2010 -0400
@@ -67,6 +67,17 @@
/* Used by x_bevel_modeline in redisplay-x.c */
Pixmap gray_pixmap;
+
+#ifdef HAVE_XFT
+ /* The Xft Drawable wrapper for this device. */
+ /* This is persistent to take advantage of the ability of Xft's glyph
+ cache in the server, and avoid rendering the font again and again...
+
+ This is created the first time through redisplay, and destroyed when our
+ connection to the X display is destroyed. */
+ XftDraw *xftDraw;
+#endif
+
/* Atoms associated with this device. */
/* allocated in Xatoms_of_device_x */
@@ -187,6 +198,7 @@
#define DEVICE_XT_APP_SHELL(d) (DEVICE_X_DATA (d)->Xt_app_shell)
#define DEVICE_X_GC_CACHE(d) (DEVICE_X_DATA (d)->gc_cache)
#define DEVICE_X_GRAY_PIXMAP(d) (DEVICE_X_DATA (d)->gray_pixmap)
+#define DEVICE_X_XFTDRAW(d) (DEVICE_X_DATA (d)->xftDraw)
#define DEVICE_X_WM_COMMAND_FRAME(d) (DEVICE_X_DATA (d)->WM_COMMAND_frame)
#define DEVICE_X_MOUSE_TIMESTAMP(d) (DEVICE_X_DATA (d)->mouse_timestamp)
#define DEVICE_X_GLOBAL_MOUSE_TIMESTAMP(d) (DEVICE_X_DATA (d)->global_mouse_timestamp)
@@ -319,17 +331,6 @@
#endif /* XIM_XLIB */
#endif /* HAVE_XIM */
-#ifdef HAVE_XFT
- /* The Xft Drawable wrapper for this device.
- #### Should this be per-device, or per-frame? */
- /* This is persistent to take advantage of the ability of Xft's glyph
- cache in the server, and avoid rendering the font again and again...
-
- This is created the first time through redisplay, and destroyed when our
- connection to the X display is destroyed. */
- XftDraw *xftDraw;
-#endif
-
/* 1 if the frame is completely visible on the display, 0 otherwise.
if 0 the frame may have been iconified or may be totally
or partially hidden by another X window */
@@ -391,10 +392,6 @@
#define FRAME_X_GEOM_FREE_ME_PLEASE(f) (FRAME_X_DATA (f)->geom_free_me_please)
-#ifdef HAVE_XFT
-#define FRAME_X_XFTDRAW(f) (FRAME_X_DATA (f)->xftDraw)
-#endif
-
#define FRAME_X_TOTALLY_VISIBLE_P(f) (FRAME_X_DATA (f)->totally_visible_p)
#define FRAME_X_TOP_LEVEL_FRAME_P(f) (FRAME_X_DATA (f)->top_level_frame_p)
diff -r 0f7d483cff5a -r 6466bc9ebf15 src/device-x.c
--- a/src/device-x.c Sun Jun 13 23:54:13 2010 +0900
+++ b/src/device-x.c Wed Jun 23 08:04:18 2010 -0400
@@ -944,6 +944,18 @@
#ifdef FREE_CHECKING
extern void (*__free_hook) (void *);
int checking_free;
+#endif
+
+#ifdef HAVE_XFT
+ /* If we have an XftDraw structure, we need to free it here.
+ We can't ever have an XftDraw without a Display, so we are safe
+ to free it in here, and we avoid too much playing around with the
+ malloc checking hooks this way. */
+ if (DEVICE_X_XFTDRAW (d))
+ {
+ XftDrawDestroy (DEVICE_X_XFTDRAW (d));
+ DEVICE_X_XFTDRAW (d) = NULL;
+ }
#endif
display = DEVICE_X_DISPLAY (d);
diff -r 0f7d483cff5a -r 6466bc9ebf15 src/frame-x.c
--- a/src/frame-x.c Sun Jun 13 23:54:13 2010 +0900
+++ b/src/frame-x.c Wed Jun 23 08:04:18 2010 -0400
@@ -2614,19 +2614,6 @@
DtDndDropUnregister (FRAME_X_TEXT_WIDGET (f));
#endif /* HAVE_CDE */
-#ifdef HAVE_XFT
- /* If we have an XftDraw structure, we need to free it here.
- We can't ever have an XftDraw without a Display, so we are safe
- to free it in here, and we avoid too much playing around with the
- malloc checking hooks this way. */
- if (FRAME_X_XFTDRAW (f))
- {
- XftDrawDestroy (FRAME_X_XFTDRAW (f));
- FRAME_X_XFTDRAW (f) = NULL;
- }
-#endif
-
-
assert (FRAME_X_SHELL_WIDGET (f) != 0);
dpy = XtDisplay (FRAME_X_SHELL_WIDGET (f));
diff -r 0f7d483cff5a -r 6466bc9ebf15 src/redisplay-xlike-inc.c
--- a/src/redisplay-xlike-inc.c Sun Jun 13 23:54:13 2010 +0900
+++ b/src/redisplay-xlike-inc.c Wed Jun 23 08:04:18 2010 -0400
@@ -1028,10 +1028,10 @@
XftDraw *xftDraw;
/* Lazily initialize frame's xftDraw member. */
- if (!FRAME_X_XFTDRAW (f)) {
- FRAME_X_XFTDRAW (f) = XftDrawCreate (dpy, x_win, visual, cmap);
+ if (!DEVICE_X_XFTDRAW (d)) {
+ DEVICE_X_XFTDRAW (d) = XftDrawCreate (dpy, x_win, visual, cmap);
}
- xftDraw = FRAME_X_XFTDRAW (f);
+ xftDraw = DEVICE_X_XFTDRAW (d);
/* #### This will probably cause asserts when passed a Lisp integer for a
color. See ca. line 759 this file.
_______________________________________________
XEmacs-Patches mailing list
XEmacs-Patches(a)xemacs.org
http://lists.xemacs.org/mailman/listinfo/xemacs-patches
carbon2-commit: Add ChangeLogs for recent address updates in permission notices.
14 years, 4 months
Stephen J. Turnbull
changeset: 5292:0f7d483cff5a
user: Stephen J. Turnbull <stephen(a)xemacs.org>
date: Sun Jun 13 23:54:13 2010 +0900
files: etc/ChangeLog lib-src/ChangeLog lisp/ChangeLog lwlib/ChangeLog man/ChangeLog nt/ChangeLog src/ChangeLog tests/ChangeLog
description:
Add ChangeLogs for recent address updates in permission notices.
diff -r 9058351b0236 -r 0f7d483cff5a etc/ChangeLog
--- a/etc/ChangeLog Sun Jun 13 21:39:00 2010 +0900
+++ b/etc/ChangeLog Sun Jun 13 23:54:13 2010 +0900
@@ -1,3 +1,13 @@
+2010-06-13 Stephen J. Turnbull <stephen(a)xemacs.org>
+
+ * unicode/other/lao.txt:
+ * tests/external-widget/Makefile:
+ * tests/external-widget/test-ew-motif:
+ * tests/external-widget/test-ew-xlib:
+ * custom/example-themes/example-theme.el:
+ * custom/example-themes/europe-theme.el:
+ Correct FSF address in permission notice.
+
2010-02-22 Ben Wing <ben(a)xemacs.org>
* dbxrc.in:
diff -r 9058351b0236 -r 0f7d483cff5a lib-src/ChangeLog
--- a/lib-src/ChangeLog Sun Jun 13 21:39:00 2010 +0900
+++ b/lib-src/ChangeLog Sun Jun 13 23:54:13 2010 +0900
@@ -1,3 +1,7 @@
+2010-06-13 Stephen J. Turnbull <stephen(a)xemacs.org>
+
+ * ad2c: Correct FSF address in permission notice.
+
2010-06-02 Aidan Kehoe <kehoea(a)parhasard.net>
* gnuclient.c (main):
diff -r 9058351b0236 -r 0f7d483cff5a lisp/ChangeLog
--- a/lisp/ChangeLog Sun Jun 13 21:39:00 2010 +0900
+++ b/lisp/ChangeLog Sun Jun 13 23:54:13 2010 +0900
@@ -1,3 +1,16 @@
+2010-06-13 Stephen J. Turnbull <stephen(a)xemacs.org>
+
+ * gnome.el:
+ * gtk-compose.el:
+ * gtk-marshal.el:
+ * gtk-package.el:
+ * gtk-widget-accessors.el:
+ * gtk.el:
+ * hyper-apropos.el:
+ * multicast.el:
+ * view-less.el:
+ Correct FSF address in permission notice.
+
2010-06-08 Aidan Kehoe <kehoea(a)parhasard.net>
* diagnose.el (show-gc-stats):
diff -r 9058351b0236 -r 0f7d483cff5a lwlib/ChangeLog
--- a/lwlib/ChangeLog Sun Jun 13 21:39:00 2010 +0900
+++ b/lwlib/ChangeLog Sun Jun 13 23:54:13 2010 +0900
@@ -1,3 +1,7 @@
+2010-06-13 Stephen J. Turnbull <stephen(a)xemacs.org>
+
+ * lwlib-internal.h: Correct FSF address in permission notice.
+
2010-02-22 Ben Wing <ben(a)xemacs.org>
* lwlib-colors.h:
diff -r 9058351b0236 -r 0f7d483cff5a man/ChangeLog
--- a/man/ChangeLog Sun Jun 13 21:39:00 2010 +0900
+++ b/man/ChangeLog Sun Jun 13 23:54:13 2010 +0900
@@ -1,3 +1,7 @@
+2010-06-13 Stephen J. Turnbull <stephen(a)xemacs.org>
+
+ * external-widget.texi: Correct FSF address in permission notice.
+
2010-05-28 Aidan Kehoe <kehoea(a)parhasard.net>
* lispref/windows.texi (Buffers and Windows):
diff -r 9058351b0236 -r 0f7d483cff5a nt/ChangeLog
--- a/nt/ChangeLog Sun Jun 13 21:39:00 2010 +0900
+++ b/nt/ChangeLog Sun Jun 13 23:54:13 2010 +0900
@@ -1,3 +1,10 @@
+2010-06-13 Stephen J. Turnbull <stephen(a)xemacs.org>
+
+ * tiff.mak:
+ * xemacs.rc:
+ * xpm.mak:
+ Correct FSF address in permission notice.
+
2010-02-22 Ben Wing <ben(a)xemacs.org>
* xemacs.dsp:
diff -r 9058351b0236 -r 0f7d483cff5a src/ChangeLog
--- a/src/ChangeLog Sun Jun 13 21:39:00 2010 +0900
+++ b/src/ChangeLog Sun Jun 13 23:54:13 2010 +0900
@@ -1,3 +1,27 @@
+2010-06-13 Stephen J. Turnbull <stephen(a)xemacs.org>
+
+ * elhash.c:
+ * emacs.c:
+ * glade.c:
+ * gtk-glue.c:
+ * gtk-xemacs.c:
+ * gtk-xemacs.h:
+ * m/alpha.h:
+ * number-gmp.c:
+ * number-gmp.h:
+ * number-mp.c:
+ * number-mp.h:
+ * number.c:
+ * number.h:
+ * s/hpux11-shr.h:
+ * s/mach-bsd4-3.h:
+ * s/sco7.h:
+ * symsinit.h:
+ * ui-byhand.c:
+ * ui-gtk.c:
+ * ui-gtk.h:
+ Correct FSF address in permission notice.
+
2010-06-08 Aidan Kehoe <kehoea(a)parhasard.net>
* alloc.c (Fpurecopy):
diff -r 9058351b0236 -r 0f7d483cff5a tests/ChangeLog
--- a/tests/ChangeLog Sun Jun 13 21:39:00 2010 +0900
+++ b/tests/ChangeLog Sun Jun 13 23:54:13 2010 +0900
@@ -1,3 +1,14 @@
+2010-06-13 Stephen J. Turnbull <stephen(a)xemacs.org>
+
+ * gtk/event-stream-tests.el:
+ * gtk/gnome-test.el:
+ * gtk/gtk-embedded-test.el:
+ * gtk/gtk-extra-test.el:
+ * gtk/statusbar-test.el:
+ * gtk/toolbar-test.el:
+ * gtk/xemacs-toolbar.el:
+ Correct FSF address in permission notice.
+
2010-06-02 Aidan Kehoe <kehoea(a)parhasard.net>
* gtk/gtk-test.el (gtk-test):
_______________________________________________
XEmacs-Patches mailing list
XEmacs-Patches(a)xemacs.org
http://lists.xemacs.org/mailman/listinfo/xemacs-patches
carbon2-commit: Fix up very old FSF address in three Lisp files.
14 years, 4 months
Stephen J. Turnbull
changeset: 5291:9058351b0236
user: Stephen J. Turnbull <stephen(a)xemacs.org>
date: Sun Jun 13 21:39:00 2010 +0900
files: lisp/hyper-apropos.el lisp/multicast.el lisp/view-less.el
description:
Fix up very old FSF address in three Lisp files.
diff -r 53b88477345d -r 9058351b0236 lisp/hyper-apropos.el
--- a/lisp/hyper-apropos.el Sun Jun 13 21:21:00 2010 +0900
+++ b/lisp/hyper-apropos.el Sun Jun 13 21:39:00 2010 +0900
@@ -22,8 +22,9 @@
;; GNU General Public License for more details.
;;
;; You should have received a copy of the GNU General Public License
-;; along with XEmacs; if not, write to the Free Software
-;; Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
+;; along with XEmacs; see the file COPYING. If not, write to
+;; the Free Software Foundation, Inc., 51 Franklin Street - Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Synched up with: Not in FSF.
diff -r 53b88477345d -r 9058351b0236 lisp/multicast.el
--- a/lisp/multicast.el Sun Jun 13 21:21:00 2010 +0900
+++ b/lisp/multicast.el Sun Jun 13 21:39:00 2010 +0900
@@ -23,9 +23,9 @@
;; GNU General Public License for more details.
;; You should have received a copy of the GNU General Public License
-;; along with this program; if not, write to the Free Software
-;; Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-
+;; along with XEmacs; see the file COPYING. If not, write to
+;; the Free Software Foundation, Inc., 51 Franklin Street - Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
diff -r 53b88477345d -r 9058351b0236 lisp/view-less.el
--- a/lisp/view-less.el Sun Jun 13 21:21:00 2010 +0900
+++ b/lisp/view-less.el Sun Jun 13 21:39:00 2010 +0900
@@ -19,8 +19,9 @@
;; GNU General Public License for more details.
;;
;; You should have received a copy of the GNU General Public License
-;; along with XEmacs; if not, write to the Free Software
-;; Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
+;; along with XEmacs; see the file COPYING. If not, write to
+;; the Free Software Foundation, Inc., 51 Franklin Street - Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Synched up with: Not in FSF.
_______________________________________________
XEmacs-Patches mailing list
XEmacs-Patches(a)xemacs.org
http://lists.xemacs.org/mailman/listinfo/xemacs-patches
carbon2-commit: Fix up FSF's Franklin Street address in number.h.
14 years, 4 months
Stephen J. Turnbull
changeset: 5290:53b88477345d
user: Stephen J. Turnbull <stephen(a)xemacs.org>
date: Sun Jun 13 21:21:00 2010 +0900
files: src/number.h
description:
Fix up FSF's Franklin Street address in number.h.
diff -r 705ff51e3b6b -r 53b88477345d src/number.h
--- a/src/number.h Sun Jun 13 18:01:11 2010 +0900
+++ b/src/number.h Sun Jun 13 21:21:00 2010 +0900
@@ -16,7 +16,7 @@
You should have received a copy of the GNU General Public License
along with XEmacs; see the file COPYING. If not, write to
the Free Software Foundation, Inc., 51 Franklin St - Fifth Floor,
-Boston, MA 02111-1301, USA. */
+Boston, MA 02110-1301, USA. */
/* Synched up with: Not in FSF. */
_______________________________________________
XEmacs-Patches mailing list
XEmacs-Patches(a)xemacs.org
http://lists.xemacs.org/mailman/listinfo/xemacs-patches
carbon2-commit: Replace references to GNU Emacs with XEmacs in alpha.h.
14 years, 4 months
Stephen J. Turnbull
changeset: 5289:705ff51e3b6b
user: Stephen J. Turnbull <stephen(a)xemacs.org>
date: Sun Jun 13 18:01:11 2010 +0900
files: src/m/alpha.h
description:
Replace references to GNU Emacs with XEmacs in alpha.h.
diff -r 33899241a6a8 -r 705ff51e3b6b src/m/alpha.h
--- a/src/m/alpha.h Sun Jun 13 17:59:42 2010 +0900
+++ b/src/m/alpha.h Sun Jun 13 18:01:11 2010 +0900
@@ -3,12 +3,12 @@
This file is part of XEmacs.
-GNU Emacs is free software; you can redistribute it and/or modify
+XEmacs is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation; either version 1, or (at your option)
any later version.
-GNU Emacs is distributed in the hope that it will be useful,
+XEmacs is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
_______________________________________________
XEmacs-Patches mailing list
XEmacs-Patches(a)xemacs.org
http://lists.xemacs.org/mailman/listinfo/xemacs-patches
carbon2-commit: Fix typo in permission notice of elhash.c.
14 years, 4 months
Stephen J. Turnbull
changeset: 5288:33899241a6a8
user: Stephen J. Turnbull <stephen(a)xemacs.org>
date: Sun Jun 13 17:59:42 2010 +0900
files: src/elhash.c
description:
Fix typo in permission notice of elhash.c.
diff -r ba07c880114a -r 33899241a6a8 src/elhash.c
--- a/src/elhash.c Sun Jun 13 17:44:56 2010 +0900
+++ b/src/elhash.c Sun Jun 13 17:59:42 2010 +0900
@@ -11,7 +11,7 @@
later version.
XEmacs is distributed in the hope that it will be useful, but WITHOUT
-ANY WARRANTY; without even the implied warranty of MERCNTABILITY or
+ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
for more details.
_______________________________________________
XEmacs-Patches mailing list
XEmacs-Patches(a)xemacs.org
http://lists.xemacs.org/mailman/listinfo/xemacs-patches
carbon2-commit: Fix up FSF's Franklin Street address in many files.
14 years, 4 months
Stephen J. Turnbull
changeset: 5287:ba07c880114a
user: Stephen J. Turnbull <stephen(a)xemacs.org>
date: Sun Jun 13 17:44:56 2010 +0900
files: etc/custom/example-themes/europe-theme.el etc/custom/example-themes/example-theme.el etc/tests/external-widget/Makefile etc/tests/external-widget/test-ew-motif.c etc/tests/external-widget/test-ew-xlib.c etc/unicode/other/lao.txt lib-src/ad2c lisp/gnome.el lisp/gtk-compose.el lisp/gtk-marshal.el lisp/gtk-package.el lisp/gtk-widget-accessors.el lisp/gtk.el lwlib/lwlib-internal.h man/external-widget.texi nt/tiff.mak nt/xemacs.rc nt/xpm.mak src/emacs.c src/glade.c src/gtk-glue.c src/gtk-xemacs.c src/gtk-xemacs.h src/number-gmp.c src/number-gmp.h src/number-mp.c src/number-mp.h src/number.c src/s/hpux11-shr.h src/s/mach-bsd4-3.h src/s/sco7.h src/symsinit.h src/ui-byhand.c src/ui-gtk.c src/ui-gtk.h tests/gtk/event-stream-tests.el tests/gtk/gnome-test.el tests/gtk/gtk-embedded-test.el tests/gtk/gtk-extra-test.el tests/gtk/statusbar-test.el tests/gtk/toolbar-test.el tests/gtk/xemacs-toolbar.el
description:
Fix up FSF's Franklin Street address in many files.
diff -r 4c56e7c6a704 -r ba07c880114a etc/custom/example-themes/europe-theme.el
--- a/etc/custom/example-themes/europe-theme.el Tue Jun 08 16:37:32 2010 +0100
+++ b/etc/custom/example-themes/europe-theme.el Sun Jun 13 17:44:56 2010 +0900
@@ -19,7 +19,7 @@
;; You should have received a copy of the GNU General Public License
;; along with XEmacs; see the file COPYING. If not, write to the Free
;; Software Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston,
-;; MA 02111-1301, USA.
+;; MA 02110-1301, USA.
;;;autoload
(deftheme europe
diff -r 4c56e7c6a704 -r ba07c880114a etc/custom/example-themes/example-theme.el
--- a/etc/custom/example-themes/example-theme.el Tue Jun 08 16:37:32 2010 +0100
+++ b/etc/custom/example-themes/example-theme.el Sun Jun 13 17:44:56 2010 +0900
@@ -19,7 +19,7 @@
;; You should have received a copy of the GNU General Public License
;; along with XEmacs; see the file COPYING. If not, write to the Free
;; Software Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston,
-;; MA 02111-1301, USA.
+;; MA 02110-1301, USA.
;;;autoload
(deftheme example
diff -r 4c56e7c6a704 -r ba07c880114a etc/tests/external-widget/Makefile
--- a/etc/tests/external-widget/Makefile Tue Jun 08 16:37:32 2010 +0100
+++ b/etc/tests/external-widget/Makefile Sun Jun 13 17:44:56 2010 +0900
@@ -15,7 +15,7 @@
## You should have received a copy of the GNU General Public License
## along with XEmacs; see the file COPYING. If not, write to
-## the Free Software Foundation, Inc., 51 Franklin St - Fifth Floor,
+## the Free Software Foundation, Inc., 51 Franklin Street - Fifth Floor,
## Boston, MA 02110-1301, USA.
CFLAGS += -Xc -g -DTOOLTALK
diff -r 4c56e7c6a704 -r ba07c880114a etc/tests/external-widget/test-ew-motif.c
--- a/etc/tests/external-widget/test-ew-motif.c Tue Jun 08 16:37:32 2010 +0100
+++ b/etc/tests/external-widget/test-ew-motif.c Sun Jun 13 17:44:56 2010 +0900
@@ -15,7 +15,7 @@
You should have received a copy of the GNU General Public License
along with XEmacs; see the file COPYING. If not, write to
-the Free Software Foundation, Inc., 51 Franklin St - Fifth Floor,
+the Free Software Foundation, Inc., 51 Franklin Street - Fifth Floor,
Boston, MA 02110-1301, USA. */
#include <Xm/Xm.h>
diff -r 4c56e7c6a704 -r ba07c880114a etc/tests/external-widget/test-ew-xlib.c
--- a/etc/tests/external-widget/test-ew-xlib.c Tue Jun 08 16:37:32 2010 +0100
+++ b/etc/tests/external-widget/test-ew-xlib.c Sun Jun 13 17:44:56 2010 +0900
@@ -16,7 +16,7 @@
You should have received a copy of the GNU General Public License
along with XEmacs; see the file COPYING. If not, write to
-the Free Software Foundation, Inc., 51 Franklin St - Fifth Floor,
+the Free Software Foundation, Inc., 51 Franklin Street - Fifth Floor,
Boston, MA 02110-1301, USA. */
#include <X11/Xlib.h>
diff -r 4c56e7c6a704 -r ba07c880114a etc/unicode/other/lao.txt
--- a/etc/unicode/other/lao.txt Tue Jun 08 16:37:32 2010 +0100
+++ b/etc/unicode/other/lao.txt Sun Jun 13 17:44:56 2010 +0900
@@ -15,7 +15,7 @@
## You should have received a copy of the GNU General Public License
## along with XEmacs; see the file COPYING. If not, write to
-## the Free Software Foundation, Inc., 51 Franklin St - Fifth Floor,
+## the Free Software Foundation, Inc., 51 Franklin Street - Fifth Floor,
## Boston, MA 02110-1301, USA.
## Made up based on the comment in lao.el:
diff -r 4c56e7c6a704 -r ba07c880114a lib-src/ad2c
--- a/lib-src/ad2c Tue Jun 08 16:37:32 2010 +0100
+++ b/lib-src/ad2c Sun Jun 13 17:44:56 2010 +0900
@@ -27,7 +27,7 @@
# You should have received a copy of the GNU General Public License
# along with XEmacs; see the file COPYING. If not, write to
# the Free Software Foundation, Inc., 51 Franklin Street - Fifth Floor,
-# Boston, MA 02111-1301, USA. */
+# Boston, MA 02110-1301, USA. */
#
# Synched up with: Not in FSF.
diff -r 4c56e7c6a704 -r ba07c880114a lisp/gnome.el
--- a/lisp/gnome.el Tue Jun 08 16:37:32 2010 +0100
+++ b/lisp/gnome.el Sun Jun 13 17:44:56 2010 +0900
@@ -13,7 +13,7 @@
;; You should have received a copy of the GNU General Public License
;; along with XEmacs; see the file COPYING. If not, write to
;; the Free Software Foundation, Inc., 51 Franklin Street - Fifth Floor,
-;; Boston, MA 02111-1301, USA. */
+;; Boston, MA 02110-1301, USA. */
(globally-declare-fboundp
'(gtk-type-from-name
diff -r 4c56e7c6a704 -r ba07c880114a lisp/gtk-compose.el
--- a/lisp/gtk-compose.el Tue Jun 08 16:37:32 2010 +0100
+++ b/lisp/gtk-compose.el Sun Jun 13 17:44:56 2010 +0900
@@ -13,7 +13,7 @@
;; You should have received a copy of the GNU General Public License
;; along with XEmacs; see the file COPYING. If not, write to
;; the Free Software Foundation, Inc., 51 Franklin Street - Fifth Floor,
-;; Boston, MA 02111-1301, USA. */
+;; Boston, MA 02110-1301, USA. */
(require 'x-compose)
diff -r 4c56e7c6a704 -r ba07c880114a lisp/gtk-marshal.el
--- a/lisp/gtk-marshal.el Tue Jun 08 16:37:32 2010 +0100
+++ b/lisp/gtk-marshal.el Sun Jun 13 17:44:56 2010 +0900
@@ -13,7 +13,7 @@
;; You should have received a copy of the GNU General Public License
;; along with XEmacs; see the file COPYING. If not, write to
;; the Free Software Foundation, Inc., 51 Franklin Street - Fifth Floor,
-;; Boston, MA 02111-1301, USA. */
+;; Boston, MA 02110-1301, USA. */
;;
;; To regenerate ../src/emacs-marshals.c just load this file.
;;
diff -r 4c56e7c6a704 -r ba07c880114a lisp/gtk-package.el
--- a/lisp/gtk-package.el Tue Jun 08 16:37:32 2010 +0100
+++ b/lisp/gtk-package.el Sun Jun 13 17:44:56 2010 +0900
@@ -13,7 +13,7 @@
;; You should have received a copy of the GNU General Public License
;; along with XEmacs; see the file COPYING. If not, write to
;; the Free Software Foundation, Inc., 51 Franklin Street - Fifth Floor,
-;; Boston, MA 02111-1301, USA. */
+;; Boston, MA 02110-1301, USA. */
;;
;; A GTK version of package-ui.el
diff -r 4c56e7c6a704 -r ba07c880114a lisp/gtk-widget-accessors.el
--- a/lisp/gtk-widget-accessors.el Tue Jun 08 16:37:32 2010 +0100
+++ b/lisp/gtk-widget-accessors.el Sun Jun 13 17:44:56 2010 +0900
@@ -13,7 +13,7 @@
;; You should have received a copy of the GNU General Public License
;; along with XEmacs; see the file COPYING. If not, write to
;; the Free Software Foundation, Inc., 51 Franklin Street - Fifth Floor,
-;; Boston, MA 02111-1301, USA. */
+;; Boston, MA 02110-1301, USA. */
(globally-declare-fboundp
'(gtk-fundamental-type))
diff -r 4c56e7c6a704 -r ba07c880114a lisp/gtk.el
--- a/lisp/gtk.el Tue Jun 08 16:37:32 2010 +0100
+++ b/lisp/gtk.el Sun Jun 13 17:44:56 2010 +0900
@@ -13,7 +13,7 @@
;; You should have received a copy of the GNU General Public License
;; along with XEmacs; see the file COPYING. If not, write to
;; the Free Software Foundation, Inc., 51 Franklin Street - Fifth Floor,
-;; Boston, MA 02111-1301, USA. */
+;; Boston, MA 02110-1301, USA. */
(globally-declare-fboundp
'(gtk-import-function-internal
diff -r 4c56e7c6a704 -r ba07c880114a lwlib/lwlib-internal.h
--- a/lwlib/lwlib-internal.h Tue Jun 08 16:37:32 2010 +0100
+++ b/lwlib/lwlib-internal.h Sun Jun 13 17:44:56 2010 +0900
@@ -16,7 +16,7 @@
You should have received a copy of the GNU General Public License
along with XEmacs; see the file COPYING. If not, write to
-the Free Software Foundation, Inc., 51 Franklin St - Fifth Floor,
+the Free Software Foundation, Inc., 51 Franklin Street - Fifth Floor,
Boston, MA 02110-1301, USA. */
#ifndef INCLUDED_lwlib_internal_h_
diff -r 4c56e7c6a704 -r ba07c880114a man/external-widget.texi
--- a/man/external-widget.texi Tue Jun 08 16:37:32 2010 +0100
+++ b/man/external-widget.texi Sun Jun 13 17:44:56 2010 +0900
@@ -26,7 +26,7 @@
You should have received a copy of the GNU General Public License
along with XEmacs; see the file COPYING. If not, write to
-the Free Software Foundation, Inc., 51 Franklin St - Fifth Floor,
+the Free Software Foundation, Inc., 51 Franklin Street - Fifth Floor,
Boston, MA 02110-1301, USA.
@end ifinfo
diff -r 4c56e7c6a704 -r ba07c880114a nt/tiff.mak
--- a/nt/tiff.mak Tue Jun 08 16:37:32 2010 +0100
+++ b/nt/tiff.mak Sun Jun 13 17:44:56 2010 +0900
@@ -15,7 +15,7 @@
## You should have received a copy of the GNU General Public License
## along with XEmacs; see the file COPYING. If not, write to
-## the Free Software Foundation, Inc., 51 Franklin St - Fifth Floor,
+## the Free Software Foundation, Inc., 51 Franklin Street - Fifth Floor,
## Boston, MA 02110-1301, USA.
!if !defined(DEBUG_XEMACS)
diff -r 4c56e7c6a704 -r ba07c880114a nt/xemacs.rc
--- a/nt/xemacs.rc Tue Jun 08 16:37:32 2010 +0100
+++ b/nt/xemacs.rc Sun Jun 13 17:44:56 2010 +0900
@@ -14,7 +14,7 @@
You should have received a copy of the GNU General Public License
along with XEmacs; see the file COPYING. If not, write to
-the Free Software Foundation, Inc., 51 Franklin St. - Fifth Floor,
+the Free Software Foundation, Inc., 51 Franklin Street - Fifth Floor,
Boston, MA 02110-1301, USA. */
#ifdef INCLUDE_DUMP
diff -r 4c56e7c6a704 -r ba07c880114a nt/xpm.mak
--- a/nt/xpm.mak Tue Jun 08 16:37:32 2010 +0100
+++ b/nt/xpm.mak Sun Jun 13 17:44:56 2010 +0900
@@ -17,7 +17,7 @@
#
# You should have received a copy of the GNU General Public License
# along with XEmacs; see the file COPYING. If not, write to
-# the Free Software Foundation, Inc., 51 Franklin St. - Fifth Floor,
+# the Free Software Foundation, Inc., 51 Franklin Street - Fifth Floor,
# Boston, MA 02110-1301, USA.
#
!if !defined(DEBUG)
diff -r 4c56e7c6a704 -r ba07c880114a src/emacs.c
--- a/src/emacs.c Tue Jun 08 16:37:32 2010 +0100
+++ b/src/emacs.c Sun Jun 13 17:44:56 2010 +0900
@@ -18,8 +18,8 @@
You should have received a copy of the GNU General Public License
along with XEmacs; see the file COPYING. If not, write to
-the Free Software Foundation, Inc., 51 Franklin St - Fifth Floor,
-Boston, MA 02111-1301, USA. */
+the Free Software Foundation, Inc., 51 Franklin Street - Fifth Floor,
+Boston, MA 02110-1301, USA. */
/* Synched up with: Mule 2.0, FSF 19.28. */
diff -r 4c56e7c6a704 -r ba07c880114a src/glade.c
--- a/src/glade.c Tue Jun 08 16:37:32 2010 +0100
+++ b/src/glade.c Sun Jun 13 17:44:56 2010 +0900
@@ -22,7 +22,7 @@
** You should have received a copy of the GNU General Public License
** along with XEmacs; see the file COPYING. If not, write to
** the Free Software Foundation, Inc., 51 Franklin Street - Fifth Floor,
-** Boston, MA 02111-1301, USA. */
+** Boston, MA 02110-1301, USA. */
*/
#if defined(HAVE_GLADE_H) || defined(HAVE_GLADE_GLADE_H)
diff -r 4c56e7c6a704 -r ba07c880114a src/gtk-glue.c
--- a/src/gtk-glue.c Tue Jun 08 16:37:32 2010 +0100
+++ b/src/gtk-glue.c Sun Jun 13 17:44:56 2010 +0900
@@ -14,7 +14,7 @@
You should have received a copy of the GNU General Public License
along with XEmacs; see the file COPYING. If not, write to
the Free Software Foundation, Inc., 51 Franklin Street - Fifth Floor,
-Boston, MA 02111-1301, USA. */
+Boston, MA 02110-1301, USA. */
GtkType GTK_TYPE_ARRAY = 0;
GtkType GTK_TYPE_STRING_ARRAY = 0;
diff -r 4c56e7c6a704 -r ba07c880114a src/gtk-xemacs.c
--- a/src/gtk-xemacs.c Tue Jun 08 16:37:32 2010 +0100
+++ b/src/gtk-xemacs.c Sun Jun 13 17:44:56 2010 +0900
@@ -21,7 +21,7 @@
** You should have received a copy of the GNU General Public License
** along with XEmacs; see the file COPYING. If not, write to
** the Free Software Foundation, Inc., 51 Franklin Street - Fifth Floor,
-** Boston, MA 02111-1301, USA. */
+** Boston, MA 02110-1301, USA. */
#include <config.h>
diff -r 4c56e7c6a704 -r ba07c880114a src/gtk-xemacs.h
--- a/src/gtk-xemacs.h Tue Jun 08 16:37:32 2010 +0100
+++ b/src/gtk-xemacs.h Sun Jun 13 17:44:56 2010 +0900
@@ -20,7 +20,7 @@
** You should have received a copy of the GNU General Public License
** along with XEmacs; see the file COPYING. If not, write to
** the Free Software Foundation, Inc., 51 Franklin Street - Fifth Floor,
-** Boston, MA 02111-1301, USA. */
+** Boston, MA 02110-1301, USA. */
#ifndef __GTK_XEMACS_H__
#define __GTK_XEMACS_H__
diff -r 4c56e7c6a704 -r ba07c880114a src/number-gmp.c
--- a/src/number-gmp.c Tue Jun 08 16:37:32 2010 +0100
+++ b/src/number-gmp.c Sun Jun 13 17:44:56 2010 +0900
@@ -15,8 +15,8 @@
You should have received a copy of the GNU General Public License
along with XEmacs; see the file COPYING. If not, write to
-the Free Software Foundation, Inc., 51 Franklin St - Fifth Floor,
-Boston, MA 02111-1301, USA. */
+the Free Software Foundation, Inc., 51 Franklin Street - Fifth Floor,
+Boston, MA 02110-1301, USA. */
/* Synched up with: Not in FSF. */
diff -r 4c56e7c6a704 -r ba07c880114a src/number-gmp.h
--- a/src/number-gmp.h Tue Jun 08 16:37:32 2010 +0100
+++ b/src/number-gmp.h Sun Jun 13 17:44:56 2010 +0900
@@ -15,8 +15,8 @@
You should have received a copy of the GNU General Public License
along with XEmacs; see the file COPYING. If not, write to
-the Free Software Foundation, Inc., 51 Franklin St - Fifth Floor,
-Boston, MA 02111-1301, USA. */
+the Free Software Foundation, Inc., 51 Franklin Street - Fifth Floor,
+Boston, MA 02110-1301, USA. */
/* Synched up with: Not in FSF. */
diff -r 4c56e7c6a704 -r ba07c880114a src/number-mp.c
--- a/src/number-mp.c Tue Jun 08 16:37:32 2010 +0100
+++ b/src/number-mp.c Sun Jun 13 17:44:56 2010 +0900
@@ -15,8 +15,8 @@
You should have received a copy of the GNU General Public License
along with XEmacs; see the file COPYING. If not, write to
-the Free Software Foundation, Inc., 51 Franklin St - Fifth Floor,
-Boston, MA 02111-1301, USA. */
+the Free Software Foundation, Inc., 51 Franklin Street - Fifth Floor,
+Boston, MA 02110-1301, USA. */
/* Synched up with: Not in FSF. */
diff -r 4c56e7c6a704 -r ba07c880114a src/number-mp.h
--- a/src/number-mp.h Tue Jun 08 16:37:32 2010 +0100
+++ b/src/number-mp.h Sun Jun 13 17:44:56 2010 +0900
@@ -15,8 +15,8 @@
You should have received a copy of the GNU General Public License
along with XEmacs; see the file COPYING. If not, write to
-the Free Software Foundation, Inc., 51 Franklin St - Fifth Floor,
-Boston, MA 02111-1301, USA. */
+the Free Software Foundation, Inc., 51 Franklin Street - Fifth Floor,
+Boston, MA 02110-1301, USA. */
/* Synched up with: Not in FSF. */
diff -r 4c56e7c6a704 -r ba07c880114a src/number.c
--- a/src/number.c Tue Jun 08 16:37:32 2010 +0100
+++ b/src/number.c Sun Jun 13 17:44:56 2010 +0900
@@ -16,8 +16,8 @@
You should have received a copy of the GNU General Public License
along with XEmacs; see the file COPYING. If not, write to
-the Free Software Foundation, Inc., 51 Franklin St - Fifth Floor,
-Boston, MA 02111-1301, USA. */
+the Free Software Foundation, Inc., 51 Franklin Street - Fifth Floor,
+Boston, MA 02110-1301, USA. */
/* Synched up with: Not in FSF. */
diff -r 4c56e7c6a704 -r ba07c880114a src/s/hpux11-shr.h
--- a/src/s/hpux11-shr.h Tue Jun 08 16:37:32 2010 +0100
+++ b/src/s/hpux11-shr.h Sun Jun 13 17:44:56 2010 +0900
@@ -15,7 +15,7 @@
You should have received a copy of the GNU General Public License
along with XEmacs; see the file COPYING. If not, write to
-the Free Software Foundation, Inc., 51 Franklin St. - Fifth Floor,
+the Free Software Foundation, Inc., 51 Franklin Street - Fifth Floor,
Boston, MA 02110-1301, USA. */
/* Synched up with: FSF 19.31. */
diff -r 4c56e7c6a704 -r ba07c880114a src/s/mach-bsd4-3.h
--- a/src/s/mach-bsd4-3.h Tue Jun 08 16:37:32 2010 +0100
+++ b/src/s/mach-bsd4-3.h Sun Jun 13 17:44:56 2010 +0900
@@ -15,7 +15,7 @@
You should have received a copy of the GNU General Public License
along with XEmacs; see the file COPYING. If not, write to
-the Free Software Foundation, Inc., 51 Franklin St. - Fifth Floor,
+the Free Software Foundation, Inc., 51 Franklin Street - Fifth Floor,
Boston, MA 02110-1301, USA. */
/* Synched up with: FSF 19.31. */
diff -r 4c56e7c6a704 -r ba07c880114a src/s/sco7.h
--- a/src/s/sco7.h Tue Jun 08 16:37:32 2010 +0100
+++ b/src/s/sco7.h Sun Jun 13 17:44:56 2010 +0900
@@ -15,7 +15,7 @@
You should have received a copy of the GNU General Public License
along with XEmacs; see the file COPYING. If not, write to
-the Free Software Foundation, Inc., 51 Franklin St. - Fifth Floor,
+the Free Software Foundation, Inc., 51 Franklin Street - Fifth Floor,
Boston, MA 02110-1301, USA. */
/* Synched up with: FSF 19.31. */
diff -r 4c56e7c6a704 -r ba07c880114a src/symsinit.h
--- a/src/symsinit.h Tue Jun 08 16:37:32 2010 +0100
+++ b/src/symsinit.h Sun Jun 13 17:44:56 2010 +0900
@@ -16,8 +16,8 @@
You should have received a copy of the GNU General Public License
along with XEmacs; see the file COPYING. If not, write to
-the Free Software Foundation, Inc., 51 Franklin St - Fifth Floor,
-Boston, MA 02111-1301, USA. */
+the Free Software Foundation, Inc., 51 Franklin Street - Fifth Floor,
+Boston, MA 02110-1301, USA. */
/* Synched up with: Not in FSF. */
diff -r 4c56e7c6a704 -r ba07c880114a src/ui-byhand.c
--- a/src/ui-byhand.c Tue Jun 08 16:37:32 2010 +0100
+++ b/src/ui-byhand.c Sun Jun 13 17:44:56 2010 +0900
@@ -23,7 +23,7 @@
You should have received a copy of the GNU General Public License
along with XEmacs; see the file COPYING. If not, write to
the Free Software Foundation, Inc., 51 Franklin Street - Fifth Floor,
-Boston, MA 02111-1301, USA.
+Boston, MA 02110-1301, USA.
*/
#include "gui.h"
diff -r 4c56e7c6a704 -r ba07c880114a src/ui-gtk.c
--- a/src/ui-gtk.c Tue Jun 08 16:37:32 2010 +0100
+++ b/src/ui-gtk.c Sun Jun 13 17:44:56 2010 +0900
@@ -21,7 +21,7 @@
** You should have received a copy of the GNU General Public License
** along with XEmacs; see the file COPYING. If not, write to
** the Free Software Foundation, Inc., 51 Franklin Street - Fifth Floor,
-** Boston, MA 02111-1301, USA. */
+** Boston, MA 02110-1301, USA. */
#include <config.h>
#include "lisp.h"
diff -r 4c56e7c6a704 -r ba07c880114a src/ui-gtk.h
--- a/src/ui-gtk.h Tue Jun 08 16:37:32 2010 +0100
+++ b/src/ui-gtk.h Sun Jun 13 17:44:56 2010 +0900
@@ -20,7 +20,7 @@
** You should have received a copy of the GNU General Public License
** along with XEmacs; see the file COPYING. If not, write to
** the Free Software Foundation, Inc., 51 Franklin Street - Fifth Floor,
-** Boston, MA 02111-1301, USA. */
+** Boston, MA 02110-1301, USA. */
#ifndef __UI_GTK_H__
#define __UI_GTK_H__
diff -r 4c56e7c6a704 -r ba07c880114a tests/gtk/event-stream-tests.el
--- a/tests/gtk/event-stream-tests.el Tue Jun 08 16:37:32 2010 +0100
+++ b/tests/gtk/event-stream-tests.el Sun Jun 13 17:44:56 2010 +0900
@@ -13,7 +13,7 @@
;; You should have received a copy of the GNU General Public License
;; along with XEmacs; see the file COPYING. If not, write to
;; the Free Software Foundation, Inc., 51 Franklin Street - Fifth Floor,
-;; Boston, MA 02111-1301, USA. */
+;; Boston, MA 02110-1301, USA. */
;also do this: make two frames, one viewing "*scratch*", the other "foo".
;in *scratch*, type (sit-for 20)^J
diff -r 4c56e7c6a704 -r ba07c880114a tests/gtk/gnome-test.el
--- a/tests/gtk/gnome-test.el Tue Jun 08 16:37:32 2010 +0100
+++ b/tests/gtk/gnome-test.el Sun Jun 13 17:44:56 2010 +0900
@@ -13,7 +13,7 @@
;; You should have received a copy of the GNU General Public License
;; along with XEmacs; see the file COPYING. If not, write to
;; the Free Software Foundation, Inc., 51 Franklin Street - Fifth Floor,
-;; Boston, MA 02111-1301, USA. */
+;; Boston, MA 02110-1301, USA. */
(require 'gnome)
diff -r 4c56e7c6a704 -r ba07c880114a tests/gtk/gtk-embedded-test.el
--- a/tests/gtk/gtk-embedded-test.el Tue Jun 08 16:37:32 2010 +0100
+++ b/tests/gtk/gtk-embedded-test.el Sun Jun 13 17:44:56 2010 +0900
@@ -13,7 +13,7 @@
;; You should have received a copy of the GNU General Public License
;; along with XEmacs; see the file COPYING. If not, write to
;; the Free Software Foundation, Inc., 51 Franklin Street - Fifth Floor,
-;; Boston, MA 02111-1301, USA. */
+;; Boston, MA 02110-1301, USA. */
(gtk-define-test
"Embedded XEmacs frame" xemacs-frame t
diff -r 4c56e7c6a704 -r ba07c880114a tests/gtk/gtk-extra-test.el
--- a/tests/gtk/gtk-extra-test.el Tue Jun 08 16:37:32 2010 +0100
+++ b/tests/gtk/gtk-extra-test.el Sun Jun 13 17:44:56 2010 +0900
@@ -13,7 +13,7 @@
;; You should have received a copy of the GNU General Public License
;; along with XEmacs; see the file COPYING. If not, write to
;; the Free Software Foundation, Inc., 51 Franklin Street - Fifth Floor,
-;; Boston, MA 02111-1301, USA. */
+;; Boston, MA 02110-1301, USA. */
(require 'gtk-extra)
diff -r 4c56e7c6a704 -r ba07c880114a tests/gtk/statusbar-test.el
--- a/tests/gtk/statusbar-test.el Tue Jun 08 16:37:32 2010 +0100
+++ b/tests/gtk/statusbar-test.el Sun Jun 13 17:44:56 2010 +0900
@@ -13,7 +13,7 @@
;; You should have received a copy of the GNU General Public License
;; along with XEmacs; see the file COPYING. If not, write to
;; the Free Software Foundation, Inc., 51 Franklin Street - Fifth Floor,
-;; Boston, MA 02111-1301, USA. */
+;; Boston, MA 02110-1301, USA. */
(defvar statusbar-hashtable (make-hashtable 29))
(defvar statusbar-gnome-p nil)
diff -r 4c56e7c6a704 -r ba07c880114a tests/gtk/toolbar-test.el
--- a/tests/gtk/toolbar-test.el Tue Jun 08 16:37:32 2010 +0100
+++ b/tests/gtk/toolbar-test.el Sun Jun 13 17:44:56 2010 +0900
@@ -13,7 +13,7 @@
;; You should have received a copy of the GNU General Public License
;; along with XEmacs; see the file COPYING. If not, write to
;; the Free Software Foundation, Inc., 51 Franklin Street - Fifth Floor,
-;; Boston, MA 02111-1301, USA. */
+;; Boston, MA 02110-1301, USA. */
(require 'gtk-widgets)
(require 'gnome-widgets)
diff -r 4c56e7c6a704 -r ba07c880114a tests/gtk/xemacs-toolbar.el
--- a/tests/gtk/xemacs-toolbar.el Tue Jun 08 16:37:32 2010 +0100
+++ b/tests/gtk/xemacs-toolbar.el Sun Jun 13 17:44:56 2010 +0900
@@ -13,7 +13,7 @@
;; You should have received a copy of the GNU General Public License
;; along with XEmacs; see the file COPYING. If not, write to
;; the Free Software Foundation, Inc., 51 Franklin Street - Fifth Floor,
-;; Boston, MA 02111-1301, USA. */
+;; Boston, MA 02110-1301, USA. */
(defvar gtk-torture-test-toolbar-open-active-p t)
_______________________________________________
XEmacs-Patches mailing list
XEmacs-Patches(a)xemacs.org
http://lists.xemacs.org/mailman/listinfo/xemacs-patches
carbon2-commit: Fix a misspelling, diagnose.el.
14 years, 4 months
Aidan Kehoe
changeset: 5286:4c56e7c6a704
user: Aidan Kehoe <kehoea(a)parhasard.net>
date: Tue Jun 08 16:37:32 2010 +0100
files: lisp/ChangeLog lisp/diagnose.el
description:
Fix a misspelling, diagnose.el.
2010-06-08 Aidan Kehoe <kehoea(a)parhasard.net>
* diagnose.el (show-gc-stats):
Fix a misspelling in a heading in this function.
diff -r 7d06a8bf47d2 -r 4c56e7c6a704 lisp/ChangeLog
--- a/lisp/ChangeLog Tue Jun 08 15:58:47 2010 +0100
+++ b/lisp/ChangeLog Tue Jun 08 16:37:32 2010 +0100
@@ -1,3 +1,8 @@
+2010-06-08 Aidan Kehoe <kehoea(a)parhasard.net>
+
+ * diagnose.el (show-gc-stats):
+ Fix a misspelling in a heading in this function.
+
2010-06-08 Aidan Kehoe <kehoea(a)parhasard.net>
* paragraphs.el (sentence-end):
diff -r 7d06a8bf47d2 -r 4c56e7c6a704 lisp/diagnose.el
--- a/lisp/diagnose.el Tue Jun 08 15:58:47 2010 +0100
+++ b/lisp/diagnose.el Tue Jun 08 16:37:32 2010 +0100
@@ -490,7 +490,7 @@
(princ (make-string 78 ?-))
(princ "\n")
(princ (format fmt "stat" "total" "last-gc" "this-gc"
- "last-cycle" "this-cylce"))
+ "last-cycle" "this-cycle"))
(princ (make-string 78 ?-))
(princ "\n")
(show-stats "n-gc")
_______________________________________________
XEmacs-Patches mailing list
XEmacs-Patches(a)xemacs.org
http://lists.xemacs.org/mailman/listinfo/xemacs-patches
carbon2-commit: Move #'purecopy from alloc.c to being an obsolete alias for #'identity
14 years, 4 months
Aidan Kehoe
changeset: 5285:7d06a8bf47d2
user: Aidan Kehoe <kehoea(a)parhasard.net>
date: Tue Jun 08 15:58:47 2010 +0100
files: lisp/ChangeLog lisp/custom.el lisp/gtk-faces.el lisp/obsolete.el lisp/paragraphs.el src/ChangeLog src/alloc.c
description:
Move #'purecopy from alloc.c to being an obsolete alias for #'identity
lisp/ChangeLog addition:
2010-06-08 Aidan Kehoe <kehoea(a)parhasard.net>
* paragraphs.el (sentence-end):
* gtk-faces.el:
* custom.el (custom-declare-variable):
Remove all core code calls to #'purecopy.
* obsolete.el (purecopy):
Make the function itself an obsolete alias to #'identity.
src/ChangeLog addition:
2010-06-08 Aidan Kehoe <kehoea(a)parhasard.net>
* alloc.c (Fpurecopy):
Moved to obsolete.el as an alias for #'identity, marked obsolete.
diff -r 5efbd1253905 -r 7d06a8bf47d2 lisp/ChangeLog
--- a/lisp/ChangeLog Mon Jun 07 18:42:10 2010 +0100
+++ b/lisp/ChangeLog Tue Jun 08 15:58:47 2010 +0100
@@ -1,3 +1,12 @@
+2010-06-08 Aidan Kehoe <kehoea(a)parhasard.net>
+
+ * paragraphs.el (sentence-end):
+ * gtk-faces.el:
+ * custom.el (custom-declare-variable):
+ Remove all core code calls to #'purecopy.
+ * obsolete.el (purecopy):
+ Make the function itself an obsolete alias to #'identity.
+
2010-06-06 Aidan Kehoe <kehoea(a)parhasard.net>
* cl-seq.el (reduce):
diff -r 5efbd1253905 -r 7d06a8bf47d2 lisp/custom.el
--- a/lisp/custom.el Mon Jun 07 18:42:10 2010 +0100
+++ b/lisp/custom.el Tue Jun 08 15:58:47 2010 +0100
@@ -183,7 +183,7 @@
((eq keyword :require)
(push value requests))
((eq keyword :type)
- (put symbol 'custom-type (purecopy value)))
+ (put symbol 'custom-type value))
((eq keyword :options)
(if (get symbol 'custom-options)
;; Slow safe code to avoid duplicates.
diff -r 5efbd1253905 -r 7d06a8bf47d2 lisp/gtk-faces.el
--- a/lisp/gtk-faces.el Mon Jun 07 18:42:10 2010 +0100
+++ b/lisp/gtk-faces.el Tue Jun 08 15:58:47 2010 +0100
@@ -131,36 +131,33 @@
(encoding "[^-]+") ; false!
)
(setq gtk-font-regexp
- (purecopy
- (concat "\\`\\*?[-?*]"
- foundry - family - weight\? - slant\? - swidth - adstyle -
- pixelsize - pointsize - resx - resy - spacing - avgwidth -
- registry - encoding "\\'"
- )))
+ (concat "\\`\\*?[-?*]"
+ foundry - family - weight\? - slant\? - swidth - adstyle -
+ pixelsize - pointsize - resx - resy - spacing - avgwidth -
+ registry - encoding "\\'"
+ ))
(setq gtk-font-regexp-head
- (purecopy
- (concat "\\`[-?*]" foundry - family - weight\? - slant\?
- "\\([-*?]\\|\\'\\)")))
+ (concat "\\`[-?*]" foundry - family - weight\? - slant\?
+ "\\([-*?]\\|\\'\\)"))
(setq gtk-font-regexp-head-2
- (purecopy
- (concat "\\`[-?*]" foundry - family - weight\? - slant\?
- - swidth - adstyle - pixelsize - pointsize
- "\\([-*?]\\|\\'\\)")))
- (setq gtk-font-regexp-slant (purecopy (concat - slant -)))
- (setq gtk-font-regexp-weight (purecopy (concat - weight -)))
+ (concat "\\`[-?*]" foundry - family - weight\? - slant\?
+ - swidth - adstyle - pixelsize - pointsize
+ "\\([-*?]\\|\\'\\)"))
+ (setq gtk-font-regexp-slant (concat - slant -))
+ (setq gtk-font-regexp-weight (concat - weight -))
;; if we can't match any of the more specific regexps (unfortunate) then
;; look for digits; assume 2+ digits is 10ths of points, and 1-2 digits
;; is pixels. Bogus as hell.
- (setq gtk-font-regexp-pixel (purecopy "[-?*]\\([0-9][0-9]?\\)[-?*]"))
- (setq gtk-font-regexp-point (purecopy "[-?*]\\([0-9][0-9]+\\)[-?*]"))
+ (setq gtk-font-regexp-pixel "[-?*]\\([0-9][0-9]?\\)[-?*]")
+ (setq gtk-font-regexp-point "[-?*]\\([0-9][0-9]+\\)[-?*]")
;; the following two are used by x-font-menu.el.
(setq gtk-font-regexp-foundry-and-family
- (purecopy (concat "\\`[-?*]" foundry - "\\(" family "\\)" -)))
+ (concat "\\`[-?*]" foundry - "\\(" family "\\)" -))
(setq gtk-font-regexp-registry-and-encoding
- (purecopy (concat - "\\(" registry "\\)" - "\\(" encoding "\\)\\'")))
+ (concat - "\\(" registry "\\)" - "\\(" encoding "\\)\\'"))
(setq gtk-font-regexp-spacing
- (purecopy (concat - "\\(" spacing "\\)" - avgwidth
- - registry - encoding "\\'")))
+ (concat - "\\(" spacing "\\)" - avgwidth
+ - registry - encoding "\\'"))
)
(defvaralias 'x-font-regexp 'gtk-font-regexp)
diff -r 5efbd1253905 -r 7d06a8bf47d2 lisp/obsolete.el
--- a/lisp/obsolete.el Mon Jun 07 18:42:10 2010 +0100
+++ b/lisp/obsolete.el Tue Jun 08 15:58:47 2010 +0100
@@ -425,6 +425,8 @@
;; Keywords already do The Right Thing in XEmacs
(make-compatible 'define-widget-keywords "Just use them")
+(define-function 'purecopy 'identity)
+(make-obsolete 'purecopy "purespace is not available in XEmacs.")
(provide 'obsolete)
;;; obsolete.el ends here
diff -r 5efbd1253905 -r 7d06a8bf47d2 lisp/paragraphs.el
--- a/lisp/paragraphs.el Mon Jun 07 18:42:10 2010 +0100
+++ b/lisp/paragraphs.el Tue Jun 08 15:58:47 2010 +0100
@@ -145,18 +145,17 @@
:group 'fill)
(defcustom sentence-end
- (purecopy
- ;; This is a bit stupid since it's not auto-updated when the
- ;; other variables are changed, but it's still useful info.
- (concat (if sentence-end-without-period "\\w \\|")
- "[.?!"
- (if (featurep 'mule)
- (decode-coding-string "\033$B!#!%!)!*\033$A!##.#?#!\033$(0!$!%!)!*\033$(G!$!%!)!*\033(B" 'iso-2022-7bit)
- "")
- "][]\"')}]*"
- (if sentence-end-double-space
- "\\($\\| $\\|\t\\| \\)" "\\($\\|[\t ]\\)")
- "[ \t\n]*"))
+ ;; This is a bit stupid since it's not auto-updated when the
+ ;; other variables are changed, but it's still useful info.
+ (concat (if sentence-end-without-period "\\w \\|")
+ "[.?!"
+ (if (featurep 'mule)
+ (decode-coding-string "\033$B!#!%!)!*\033$A!##.#?#!\033$(0!$!%!)!*\033$(G!$!%!)!*\033(B" 'iso-2022-7bit)
+ "")
+ "][]\"')}]*"
+ (if sentence-end-double-space
+ "\\($\\| $\\|\t\\| \\)" "\\($\\|[\t ]\\)")
+ "[ \t\n]*")
"*Regexp describing the end of a sentence.
The value includes the whitespace following the sentence.
All paragraph boundaries also end sentences, regardless.
diff -r 5efbd1253905 -r 7d06a8bf47d2 src/ChangeLog
--- a/src/ChangeLog Mon Jun 07 18:42:10 2010 +0100
+++ b/src/ChangeLog Tue Jun 08 15:58:47 2010 +0100
@@ -1,3 +1,8 @@
+2010-06-08 Aidan Kehoe <kehoea(a)parhasard.net>
+
+ * alloc.c (Fpurecopy):
+ Moved to obsolete.el as an alias for #'identity, marked obsolete.
+
2010-06-06 Aidan Kehoe <kehoea(a)parhasard.net>
* fns.c (Freduce):
diff -r 5efbd1253905 -r 7d06a8bf47d2 src/alloc.c
--- a/src/alloc.c Mon Jun 07 18:42:10 2010 +0100
+++ b/src/alloc.c Tue Jun 08 15:58:47 2010 +0100
@@ -3343,19 +3343,6 @@
free_managed_lcrecord (all_lcrecord_lists[type], rec);
}
#endif /* not NEW_GC */
-
-
-DEFUN ("purecopy", Fpurecopy, 1, 1, 0, /*
-Kept for compatibility, returns its argument.
-Old:
-Make a copy of OBJECT in pure storage.
-Recursively copies contents of vectors and cons cells.
-Does not copy symbols.
-*/
- (object))
-{
- return object;
-}
/************************************************************************/
@@ -5722,7 +5709,6 @@
DEFSUBR (Fstring);
DEFSUBR (Fmake_symbol);
DEFSUBR (Fmake_marker);
- DEFSUBR (Fpurecopy);
#ifdef ALLOC_TYPE_STATS
DEFSUBR (Fobject_memory_usage_stats);
DEFSUBR (Ftotal_object_memory_usage);
_______________________________________________
XEmacs-Patches mailing list
XEmacs-Patches(a)xemacs.org
http://lists.xemacs.org/mailman/listinfo/xemacs-patches