summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorMiles Bader <miles@gnu.org>2007-01-26 06:16:11 +0000
committerMiles Bader <miles@gnu.org>2007-01-26 06:16:11 +0000
commitb5c3b01ac9e24754df2940f672c0eed8efc98798 (patch)
tree4686f0632a338b1f01fe9089ab0892e4344482c4 /src
parentb0704ef4a460f65f66ae68d346890abccc596cab (diff)
parentf2dbf244b49b17616264ddcd569ec004937626e7 (diff)
downloademacs-b5c3b01ac9e24754df2940f672c0eed8efc98798.tar.gz
Merge from emacs--devo--0
Patches applied: * emacs--devo--0 (patch 586-614) - Update from CVS - Update from erc--emacs--22 - Merge from gnus--rel--5.10 - Merge from erc--main--0 - Make byte compiler correctly write circular constants * gnus--rel--5.10 (patch 186-196) - Update from CVS - Merge from emacs--devo--0 Revision: emacs@sv.gnu.org/emacs--unicode--0--patch-162
Diffstat (limited to 'src')
-rw-r--r--src/.gdbinit78
-rw-r--r--src/ChangeLog268
-rw-r--r--src/ChangeLog.13
-rw-r--r--src/ChangeLog.23
-rw-r--r--src/ChangeLog.33
-rw-r--r--src/ChangeLog.43
-rw-r--r--src/ChangeLog.53
-rw-r--r--src/ChangeLog.63
-rw-r--r--src/ChangeLog.73
-rw-r--r--src/ChangeLog.83
-rw-r--r--src/ChangeLog.93
-rw-r--r--src/Makefile.in2
-rw-r--r--src/abbrev.c2
-rw-r--r--src/alloc.c30
-rw-r--r--src/atimer.c4
-rw-r--r--src/atimer.h4
-rw-r--r--src/blockinput.h4
-rw-r--r--src/buffer.c2
-rw-r--r--src/buffer.h2
-rw-r--r--src/bytecode.c2
-rw-r--r--src/callint.c4
-rw-r--r--src/callproc.c8
-rw-r--r--src/casefiddle.c2
-rw-r--r--src/casetab.c4
-rw-r--r--src/category.c5
-rw-r--r--src/category.h2
-rw-r--r--src/ccl.c4
-rw-r--r--src/ccl.h2
-rw-r--r--src/charset.c5
-rw-r--r--src/charset.h5
-rw-r--r--src/cm.c4
-rw-r--r--src/cm.h4
-rw-r--r--src/cmds.c2
-rw-r--r--src/coding.c4
-rw-r--r--src/coding.h6
-rw-r--r--src/commands.h4
-rw-r--r--src/composite.c4
-rw-r--r--src/composite.h4
-rw-r--r--src/config.in2
-rw-r--r--src/cxux-crt0.s2
-rw-r--r--src/data.c2
-rw-r--r--src/dired.c37
-rw-r--r--src/dispextern.h2
-rw-r--r--src/dispnew.c14
-rw-r--r--src/disptab.h4
-rw-r--r--src/doc.c2
-rw-r--r--src/doprnt.c4
-rw-r--r--src/dosfns.c2
-rw-r--r--src/dosfns.h4
-rw-r--r--src/ecrt0.c4
-rw-r--r--src/editfns.c79
-rw-r--r--src/emacs.c7
-rw-r--r--src/epaths.in4
-rw-r--r--src/eval.c2
-rw-r--r--src/fileio.c2
-rw-r--r--src/filelock.c2
-rw-r--r--src/filemode.c4
-rw-r--r--src/firstfile.c4
-rw-r--r--src/floatfns.c4
-rw-r--r--src/fns.c8
-rw-r--r--src/fontset.c5
-rw-r--r--src/fontset.h6
-rw-r--r--src/frame.c4
-rw-r--r--src/frame.h2
-rw-r--r--src/fringe.c4
-rw-r--r--src/getloadavg.c3
-rw-r--r--src/getpagesize.h2
-rw-r--r--src/gmalloc.c2
-rw-r--r--src/gtkutil.c82
-rw-r--r--src/gtkutil.h4
-rw-r--r--src/image.c10
-rw-r--r--src/indent.c21
-rw-r--r--src/indent.h4
-rw-r--r--src/insdel.c2
-rw-r--r--src/intervals.c4
-rw-r--r--src/intervals.h4
-rw-r--r--src/keyboard.c7
-rw-r--r--src/keyboard.h4
-rw-r--r--src/keymap.c10
-rw-r--r--src/keymap.h2
-rw-r--r--src/lastfile.c4
-rw-r--r--src/lisp.h2
-rw-r--r--src/lread.c2
-rw-r--r--src/m/7300.h4
-rw-r--r--src/m/acorn.h4
-rw-r--r--src/m/alliant-2800.h4
-rw-r--r--src/m/alliant.h4
-rw-r--r--src/m/alpha.h4
-rw-r--r--src/m/altos.h4
-rw-r--r--src/m/amdahl.h4
-rw-r--r--src/m/amdx86-64.h2
-rw-r--r--src/m/apollo.h4
-rw-r--r--src/m/arm.h4
-rw-r--r--src/m/att3b.h4
-rw-r--r--src/m/aviion.h4
-rw-r--r--src/m/celerity.h4
-rw-r--r--src/m/clipper.h4
-rw-r--r--src/m/cnvrgnt.h4
-rw-r--r--src/m/convex.h4
-rw-r--r--src/m/cydra5.h4
-rw-r--r--src/m/delta88k.h4
-rw-r--r--src/m/dpx2.h4
-rw-r--r--src/m/dual.h4
-rw-r--r--src/m/elxsi.h4
-rw-r--r--src/m/ews4800.h2
-rw-r--r--src/m/gould-np1.h4
-rw-r--r--src/m/gould.h2
-rw-r--r--src/m/hp800.h4
-rw-r--r--src/m/hp9000s300.h4
-rw-r--r--src/m/i860.h4
-rw-r--r--src/m/ia64.h4
-rw-r--r--src/m/ibm370aix.h2
-rw-r--r--src/m/ibmps2-aix.h4
-rw-r--r--src/m/ibmrs6000.h4
-rw-r--r--src/m/ibmrt-aix.h4
-rw-r--r--src/m/ibmrt.h4
-rw-r--r--src/m/ibms390.h2
-rw-r--r--src/m/ibms390x.h2
-rw-r--r--src/m/intel386.h4
-rw-r--r--src/m/iris4d.h4
-rw-r--r--src/m/irist.h4
-rw-r--r--src/m/isi-ov.h4
-rw-r--r--src/m/m68k.h4
-rw-r--r--src/m/macppc.h2
-rw-r--r--src/m/masscomp.h4
-rw-r--r--src/m/mega68.h4
-rw-r--r--src/m/mg1.h4
-rw-r--r--src/m/mips-siemens.h4
-rw-r--r--src/m/mips.h4
-rw-r--r--src/m/news.h4
-rw-r--r--src/m/next.h4
-rw-r--r--src/m/nh3000.h4
-rw-r--r--src/m/nh4000.h4
-rw-r--r--src/m/ns16000.h4
-rw-r--r--src/m/ns32000.h4
-rw-r--r--src/m/nu.h4
-rw-r--r--src/m/orion.h4
-rw-r--r--src/m/orion105.h4
-rw-r--r--src/m/pfa50.h4
-rw-r--r--src/m/plexus.h4
-rw-r--r--src/m/powermac.h2
-rw-r--r--src/m/powerpcle.h4
-rw-r--r--src/m/pyramid.h4
-rw-r--r--src/m/sequent-ptx.h4
-rw-r--r--src/m/sequent.h4
-rw-r--r--src/m/sh3el.h2
-rw-r--r--src/m/sparc.h4
-rw-r--r--src/m/sps7.h4
-rw-r--r--src/m/sr2k.h4
-rw-r--r--src/m/stride.h4
-rw-r--r--src/m/sun1.h4
-rw-r--r--src/m/sun2.h4
-rw-r--r--src/m/sun386.h4
-rw-r--r--src/m/symmetry.h4
-rw-r--r--src/m/tad68k.h4
-rw-r--r--src/m/tahoe.h4
-rw-r--r--src/m/targon31.h4
-rw-r--r--src/m/tek4300.h4
-rw-r--r--src/m/tekxd88.h4
-rw-r--r--src/m/template.h4
-rw-r--r--src/m/tower32.h4
-rw-r--r--src/m/tower32v3.h4
-rw-r--r--src/m/ustation.h4
-rw-r--r--src/m/vax.h4
-rw-r--r--src/m/wicat.h4
-rw-r--r--src/m/windowsnt.h4
-rw-r--r--src/m/xps100.h4
-rw-r--r--src/mac.c10
-rw-r--r--src/macfns.c2
-rw-r--r--src/macgui.h12
-rw-r--r--src/macmenu.c595
-rw-r--r--src/macros.c2
-rw-r--r--src/macros.h4
-rw-r--r--src/macselect.c13
-rw-r--r--src/macterm.c335
-rw-r--r--src/macterm.h19
-rw-r--r--src/makefile.w32-in2
-rw-r--r--src/marker.c4
-rw-r--r--src/md5.c4
-rw-r--r--src/md5.h4
-rw-r--r--src/mem-limits.h4
-rw-r--r--src/minibuf.c4
-rw-r--r--src/mktime.c4
-rw-r--r--src/msdos.c2
-rw-r--r--src/msdos.h2
-rw-r--r--src/prefix-args.c4
-rw-r--r--src/print.c2
-rw-r--r--src/process.c20
-rw-r--r--src/process.h4
-rw-r--r--src/puresize.h4
-rw-r--r--src/ralloc.c4
-rw-r--r--src/regex.c2
-rw-r--r--src/regex.h5
-rw-r--r--src/region-cache.c4
-rw-r--r--src/region-cache.h4
-rw-r--r--src/s/aix3-1.h4
-rw-r--r--src/s/bsd4-1.h4
-rw-r--r--src/s/bsd4-2.h4
-rw-r--r--src/s/bsd4-3.h4
-rw-r--r--src/s/cxux.h4
-rw-r--r--src/s/cygwin.h2
-rw-r--r--src/s/darwin.h2
-rw-r--r--src/s/dgux.h4
-rw-r--r--src/s/dgux4.h4
-rw-r--r--src/s/dgux5-4-3.h4
-rw-r--r--src/s/dgux5-4r2.h4
-rw-r--r--src/s/freebsd.h2
-rw-r--r--src/s/gnu-linux.h4
-rw-r--r--src/s/gnu.h4
-rw-r--r--src/s/hpux.h4
-rw-r--r--src/s/iris3-5.h4
-rw-r--r--src/s/iris3-6.h4
-rw-r--r--src/s/irix3-3.h4
-rw-r--r--src/s/lynxos.h2
-rw-r--r--src/s/ms-w32.h4
-rw-r--r--src/s/msdos.h2
-rw-r--r--src/s/newsos5.h4
-rw-r--r--src/s/nextstep.h4
-rw-r--r--src/s/ptx.h4
-rw-r--r--src/s/riscix1-1.h4
-rw-r--r--src/s/riscix12.h4
-rw-r--r--src/s/rtu.h4
-rw-r--r--src/s/sco4.h4
-rw-r--r--src/s/sco5.h3
-rw-r--r--src/s/template.h4
-rw-r--r--src/s/umax.h4
-rw-r--r--src/s/unipl5-2.h4
-rw-r--r--src/s/usg5-0.h4
-rw-r--r--src/s/usg5-2-2.h4
-rw-r--r--src/s/usg5-2.h4
-rw-r--r--src/s/usg5-3.h4
-rw-r--r--src/s/usg5-4.h4
-rw-r--r--src/s/vms.h4
-rw-r--r--src/s/xenix.h4
-rw-r--r--src/scroll.c4
-rw-r--r--src/search.c4
-rw-r--r--src/sheap.c2
-rw-r--r--src/sound.c2
-rw-r--r--src/strftime.c3
-rw-r--r--src/sunfns.c2
-rw-r--r--src/syntax.c5
-rw-r--r--src/syntax.h4
-rw-r--r--src/sysdep.c2
-rw-r--r--src/sysselect.h4
-rw-r--r--src/syssignal.h4
-rw-r--r--src/systime.h2
-rw-r--r--src/systty.h4
-rw-r--r--src/syswait.h4
-rw-r--r--src/term.c2
-rw-r--r--src/termcap.c2
-rw-r--r--src/termchar.h4
-rw-r--r--src/termhooks.h4
-rw-r--r--src/terminfo.c4
-rw-r--r--src/termopts.h4
-rw-r--r--src/textprop.c2
-rw-r--r--src/tparam.c4
-rw-r--r--src/uaf.h4
-rw-r--r--src/undo.c4
-rw-r--r--src/unexaix.c4
-rw-r--r--src/unexalpha.c4
-rw-r--r--src/unexapollo.c4
-rw-r--r--src/unexconvex.c4
-rw-r--r--src/unexcw.c2
-rw-r--r--src/unexec.c4
-rw-r--r--src/unexelf.c2
-rw-r--r--src/unexenix.c4
-rw-r--r--src/unexmacosx.c2
-rw-r--r--src/unexmips.c4
-rw-r--r--src/unexnext.c4
-rw-r--r--src/unexsni.c5
-rw-r--r--src/unexsunos4.c4
-rw-r--r--src/unexw32.c4
-rw-r--r--src/vm-limit.c4
-rw-r--r--src/w16select.c2
-rw-r--r--src/w32.c2
-rw-r--r--src/w32.h4
-rw-r--r--src/w32bdf.c4
-rw-r--r--src/w32bdf.h4
-rw-r--r--src/w32console.c4
-rw-r--r--src/w32fns.c2
-rw-r--r--src/w32gui.h4
-rw-r--r--src/w32heap.c4
-rw-r--r--src/w32heap.h4
-rw-r--r--src/w32inevt.c4
-rw-r--r--src/w32inevt.h4
-rw-r--r--src/w32menu.c4
-rw-r--r--src/w32proc.c2
-rw-r--r--src/w32reg.c4
-rw-r--r--src/w32select.c4
-rw-r--r--src/w32term.c2
-rw-r--r--src/w32term.h2
-rw-r--r--src/w32xfns.c4
-rw-r--r--src/widget.c4
-rw-r--r--src/widget.h4
-rw-r--r--src/widgetprv.h4
-rw-r--r--src/window.c18
-rw-r--r--src/window.h2
-rw-r--r--src/xdisp.c3
-rw-r--r--src/xfaces.c2
-rw-r--r--src/xfns.c2
-rw-r--r--src/xmenu.c2
-rw-r--r--src/xrdb.c2
-rw-r--r--src/xselect.c2
-rw-r--r--src/xsmfns.c2
-rw-r--r--src/xterm.c175
-rw-r--r--src/xterm.h7
306 files changed, 1995 insertions, 854 deletions
diff --git a/src/.gdbinit b/src/.gdbinit
index aa6ec1bfe59..723f8f6b21c 100644
--- a/src/.gdbinit
+++ b/src/.gdbinit
@@ -1,5 +1,5 @@
# Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 2000, 2001,
-# 2004, 2005, 2006 Free Software Foundation, Inc.
+# 2002, 2003, 2004, 2005, 2006, 2007 Free Software Foundation, Inc.
#
# This file is part of GNU Emacs.
#
@@ -158,7 +158,8 @@ define ppt
printf " SZ=%d\n", $t->gap_size
end
document ppt
-Print point, beg, end, narrow, and gap for current buffer.
+Print current buffer's point and boundaries.
+Prints values of point, beg, end, narrow, and gap for current buffer.
end
# Print out iterator given as first arg
@@ -312,7 +313,7 @@ define pcursorx
printf "y=%d x=%d vpos=%d hpos=%d", $cp->y, $cp->x, $cp->vpos, $cp->hpos
end
document pcursorx
-Pretty print a window cursor
+Pretty print a window cursor.
end
define pcursor
@@ -321,7 +322,7 @@ define pcursor
printf "\n"
end
document pcursor
-Pretty print the output_cursor
+Pretty print the output_cursor.
end
define pwinx
@@ -381,7 +382,7 @@ define pwinx
end
document pwinx
Pretty print a window structure.
-Takes one argument, a pointer to a window structure
+Takes one argument, a pointer to a window structure.
end
define pwin
@@ -447,7 +448,7 @@ define pgx
end
document pgx
Pretty print a glyph structure.
-Takes one argument, a pointer to a glyph structure
+Takes one argument, a pointer to a glyph structure.
end
define pg
@@ -532,7 +533,8 @@ define xvectype
echo \n
end
document xvectype
-Print the size or vector subtype of $, assuming it is a vector or pseudovector.
+Print the size or vector subtype of $.
+This command assumes that $ is a vector or pseudovector.
end
define xmisctype
@@ -541,7 +543,7 @@ define xmisctype
echo \n
end
document xmisctype
-Print the specific type of $, assuming it is some misc type.
+Assume that $ is some misc type and print its specific type.
end
define xint
@@ -549,7 +551,7 @@ define xint
print $int
end
document xint
-Print $, assuming it is an Emacs Lisp integer. This gets the sign right.
+Print $ as an Emacs Lisp integer. This gets the sign right.
end
define xptr
@@ -557,7 +559,7 @@ define xptr
print (void *) $ptr
end
document xptr
-Print the pointer portion of $, assuming it is an Emacs Lisp value.
+Print the pointer portion of an Emacs Lisp value in $.
end
define xmarker
@@ -565,7 +567,8 @@ define xmarker
print (struct Lisp_Marker *) $ptr
end
document xmarker
-Print $ as a marker pointer, assuming it is an Emacs Lisp marker value.
+Print $ as a marker pointer.
+This command assumes that $ is an Emacs Lisp marker value.
end
define xoverlay
@@ -573,7 +576,8 @@ define xoverlay
print (struct Lisp_Overlay *) $ptr
end
document xoverlay
-Print $ as a overlay pointer, assuming it is an Emacs Lisp overlay value.
+Print $ as a overlay pointer.
+This command assumes that $ is an Emacs Lisp overlay value.
end
define xmiscfree
@@ -581,7 +585,8 @@ define xmiscfree
print (struct Lisp_Free *) $ptr
end
document xmiscfree
-Print $ as a misc free-cell pointer, assuming it is an Emacs Lisp Misc value.
+Print $ as a misc free-cell pointer.
+This command assumes that $ is an Emacs Lisp Misc value.
end
define xintfwd
@@ -589,7 +594,8 @@ define xintfwd
print (struct Lisp_Intfwd *) $ptr
end
document xintfwd
-Print $ as an integer forwarding pointer, assuming it is an Emacs Lisp Misc value.
+Print $ as an integer forwarding pointer.
+This command assumes that $ is an Emacs Lisp Misc value.
end
define xboolfwd
@@ -597,7 +603,8 @@ define xboolfwd
print (struct Lisp_Boolfwd *) $ptr
end
document xboolfwd
-Print $ as a boolean forwarding pointer, assuming it is an Emacs Lisp Misc value.
+Print $ as a boolean forwarding pointer.
+This command assumes that $ is an Emacs Lisp Misc value.
end
define xobjfwd
@@ -605,7 +612,8 @@ define xobjfwd
print (struct Lisp_Objfwd *) $ptr
end
document xobjfwd
-Print $ as an object forwarding pointer, assuming it is an Emacs Lisp Misc value.
+Print $ as an object forwarding pointer.
+This command assumes that $ is an Emacs Lisp Misc value.
end
define xbufobjfwd
@@ -613,7 +621,8 @@ define xbufobjfwd
print (struct Lisp_Buffer_Objfwd *) $ptr
end
document xbufobjfwd
-Print $ as a buffer-local object forwarding pointer, assuming it is an Emacs Lisp Misc value.
+Print $ as a buffer-local object forwarding pointer.
+This command assumes that $ is an Emacs Lisp Misc value.
end
define xkbobjfwd
@@ -621,7 +630,8 @@ define xkbobjfwd
print (struct Lisp_Kboard_Objfwd *) $ptr
end
document xkbobjfwd
-Print $ as a kboard-local object forwarding pointer, assuming it is an Emacs Lisp Misc value.
+Print $ as a kboard-local object forwarding pointer.
+This command assumes that $ is an Emacs Lisp Misc value.
end
define xbuflocal
@@ -629,7 +639,8 @@ define xbuflocal
print (struct Lisp_Buffer_Local_Value *) $ptr
end
document xbuflocal
-Print $ as a buffer-local-value pointer, assuming it is an Emacs Lisp Misc value.
+Print $ as a buffer-local-value pointer.
+This command assumes that $ is an Emacs Lisp Misc value.
end
define xsymbol
@@ -673,7 +684,8 @@ define xprocess
echo \n
end
document xprocess
-Print the address of the struct Lisp_process which the Lisp_Object $ points to.
+Print the address of the struct Lisp_process to which $ points.
+This command assumes that $ is a Lisp_Object.
end
define xframe
@@ -685,7 +697,8 @@ define xframe
echo \n
end
document xframe
-Print $ as a frame pointer, assuming it is an Emacs Lisp frame value.
+Print $ as a frame pointer.
+This command assumes $ is an Emacs Lisp frame value.
end
define xcompiled
@@ -694,7 +707,8 @@ define xcompiled
output ($->contents[0])@($->size & 0xff)
end
document xcompiled
-Print $ as a compiled function pointer, assuming it is an Emacs Lisp compiled value.
+Print $ as a compiled function pointer.
+This command assumes that $ is an Emacs Lisp compiled value.
end
define xwindow
@@ -721,7 +735,8 @@ define xwinconfig
print (struct save_window_data *) $ptr
end
document xwinconfig
-Print $ as a window configuration pointer, assuming it is an Emacs Lisp window configuration value.
+Print $ as a window configuration pointer.
+This command assumes that $ is an Emacs Lisp window configuration value.
end
define xsubr
@@ -766,8 +781,8 @@ define xbuffer
echo \n
end
document xbuffer
-Set $ as a buffer pointer, assuming it is an Emacs Lisp buffer value.
-Print the name of the buffer.
+Set $ as a buffer pointer and the name of the buffer.
+This command assumes $ is an Emacs Lisp buffer value.
end
define xhashtable
@@ -775,7 +790,8 @@ define xhashtable
print (struct Lisp_Hash_Table *) $ptr
end
document xhashtable
-Set $ as a hash table pointer, assuming it is an Emacs Lisp hash table value.
+Set $ as a hash table pointer.
+This command assumes that $ is an Emacs Lisp hash table value.
end
define xcons
@@ -785,7 +801,7 @@ define xcons
echo \n
end
document xcons
-Print the contents of $, assuming it is an Emacs Lisp cons.
+Print the contents of $ as an Emacs Lisp cons.
end
define nextcons
@@ -794,7 +810,7 @@ define nextcons
end
document nextcons
Print the contents of the next cell in a list.
-This assumes that the last thing you printed was a cons cell contents
+This command assumes that the last thing you printed was a cons cell contents
(type struct Lisp_Cons) or a pointer to one.
end
define xcar
@@ -803,7 +819,7 @@ define xcar
print/x ($type == Lisp_Cons ? ((struct Lisp_Cons *) $ptr)->car : 0)
end
document xcar
-Print the car of $, assuming it is an Emacs Lisp pair.
+Assume that $ is an Emacs Lisp pair and print its car.
end
define xcdr
@@ -812,7 +828,7 @@ define xcdr
print/x ($type == Lisp_Cons ? ((struct Lisp_Cons *) $ptr)->u.cdr : 0)
end
document xcdr
-Print the cdr of $, assuming it is an Emacs Lisp pair.
+Assume that $ is an Emacs Lisp pair and print its cdr.
end
define xlist
@@ -1030,7 +1046,7 @@ define which
set debug_print (which_symbols ($arg0))
end
document which
- Print symbols which references a given lisp object,
+ Print symbols which references a given lisp object
either as its symbol value or symbol function.
end
diff --git a/src/ChangeLog b/src/ChangeLog
index 2da10e41c7e..bf6fd1b7638 100644
--- a/src/ChangeLog
+++ b/src/ChangeLog
@@ -1,3 +1,257 @@
+2007-01-24 Kim F. Storm <storm@cua.dk>
+
+ * keymap.c (describe_map): Don't consider prefix keys to be shadowed.
+
+2007-01-23 Juanma Barranquero <lekktu@gmail.com>
+
+ * editfns.c (Finsert_char): Doc fix.
+ (Fget_internal_run_time, Fdecode_time): Fix typos in docstrings.
+
+2007-01-22 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
+
+ * macselect.c [TARGET_API_MAC_CARBON] (mac_do_receive_drag): Don't
+ pass keyboard modifiers to mac_store_drag_event, but put them as
+ kEventParamKeyModifiers Apple event parameter.
+
+2007-01-21 Chong Yidong <cyd@stupidchicken.com>
+
+ * xdisp.c (try_window): Revert previous change.
+
+ * dispnew.c (update_text_area): Revert 2006-09-17 change.
+ Always redraw non-mode-line rows with mouse-face.
+
+2007-01-20 Chong Yidong <cyd@stupidchicken.com>
+
+ * xdisp.c (try_window): Clear mouse-face highlights first.
+
+ * window.c (set_window_buffer): Revert 2006-11-22 change.
+
+2007-01-20 Eli Zaretskii <eliz@gnu.org>
+
+ * .gdbinit (ppt, xtype, xmisctype, xint, xptr, xmarker, xframe)
+ (xbuffer, xcons, xcar, xcdr): Fix doc strings.
+
+2007-01-20 Chong Yidong <cyd@stupidchicken.com>
+
+ * keyboard.c (read_key_sequence): Extract local map only if the
+ given position is in an accessible buffer region.
+
+2007-01-19 Nick Roberts <nickrob@snap.net.nz>
+
+ * .gdbinit: Reformat documentation so that first sentence
+ displays properly with "help user-defined" (like apropos).
+
+2007-01-18 Bruno Haible <bruno@clisp.org> (tiny change)
+
+ * epaths.in: Move PATH_DOC from local/info to local/share/info.
+
+2007-01-15 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
+
+ * macmenu.c (create_and_show_dialog) [TARGET_API_MAC_CARBON]:
+ Create movable modal window instead of movable alert window.
+ (create_and_show_dialog) [!MAC_OSX]: Use DeactivateControl instead
+ of DisableControl.
+
+ * macselect.c (Fmac_resume_apple_event): Set error number when
+ descriptor type of reply is non-null.
+
+2007-01-14 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
+
+ * macmenu.c (create_and_show_dialog) [TARGET_API_MAC_CARBON]: Use
+ DisableControl for disabled items. Set default button to first
+ enabled one. Use icon of application in execution.
+
+2007-01-13 Eli Zaretskii <eliz@gnu.org>
+
+ * process.c (Fdelete_process, Fprocess_id, sigchld_handler):
+ Copy PID into EMACS_INT to avoid GCC warnings.
+
+ * fns.c (maybe_resize_hash_table): Copy new size of hash table
+ into EMACS_INT to avoid GCC warnings.
+
+ * editfns.c (Fuser_uid, Fuser_real_uid): Copy values returned by
+ geteuid and getuid into EMACS_INT to avoid GCC warnings.
+
+ * dired.c (Ffile_attributes): Fix last change.
+
+2007-01-12 Eli Zaretskii <eliz@gnu.org>
+
+ * dired.c (Ffile_attributes): Copy some members of `struct stat'
+ into int's to avoid GCC warnings about limited range of short in
+ arguments to FIXNUM_OVERFLOW_P.
+
+2007-01-12 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
+
+ * macmenu.c (HAVE_DIALOGS): Define if TARGET_API_MAC_CARBON.
+ (mac_handle_dialog_event, install_dialog_event_handler)
+ (create_and_show_dialog) [TARGET_API_MAC_CARBON]: New functions.
+ (DIALOG_LEFT_MARGIN, DIALOG_TOP_MARGIN, DIALOG_RIGHT_MARGIN)
+ (DIALOG_BOTTOM_MARGIN, DIALOG_MIN_INNER_WIDTH)
+ (DIALOG_MAX_INNER_WIDTH, DIALOG_BUTTON_BUTTON_HORIZONTAL_SPACE)
+ (DIALOG_BUTTON_BUTTON_VERTICAL_SPACE, DIALOG_BUTTON_MIN_WIDTH)
+ (DIALOG_TEXT_MIN_HEIGHT, DIALOG_TEXT_BUTTONS_VERTICAL_SPACE)
+ (DIALOG_ICON_WIDTH, DIALOG_ICON_HEIGHT, DIALOG_ICON_LEFT_MARGIN)
+ (DIALOG_ICON_TOP_MARGIN) [TARGET_API_MAC_CARBON]: New macros.
+ (mac_dialog) [TARGET_API_MAC_CARBON]: Remove function.
+ (mac_dialog_show) [TARGET_API_MAC_CARBON]: Use create_and_show_dialog.
+
+ * macterm.c (x_free_frame_resources) [USE_CG_DRAWING]: Call
+ mac_prepare_for_quickdraw.
+ (quit_char, make_ctrl_char) [TARGET_API_MAC_CARBON]: Move externs
+ outside #ifdef MAC_OSX.
+ (mac_quit_char_key_p) [TARGET_API_MAC_CARBON]: Move function
+ outside #ifdef MAC_OSX.
+ (mac_check_bundle) [MAC_OSX]: Remove unused function.
+
+ * macterm.h (mac_quit_char_key_p): Move extern outside #ifdef MAC_OSX.
+ (HOURGLASS_WIDTH, HOURGLASS_HEIGHT): Parenthesize definitions.
+
+2007-01-11 Jan Dj,Ad(Brv <jan.h.d@swipnet.se>
+
+ * alloc.c (BLOCK_INPUT_ALLOC, UNBLOCK_INPUT_ALLOC): Use pthread_equal,
+ block/unblock SIGIO.
+
+2007-01-10 Stefan Monnier <monnier@iro.umontreal.ca>
+
+ * editfns.c (Fformat): Allow integer-format to work with floats of size
+ larger than most-positive-fixnum (but still smaller than MAXINT).
+
+ * dired.c (Ffile_attributes): Use floats for large uids/gids.
+
+2007-01-09 Eli Zaretskii <eliz@gnu.org>
+
+ * emacs.c (syms_of_emacs) <path-separator>: Doc fix.
+
+2007-01-09 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
+
+ * callproc.c (Fcall_process_region) [HAVE_MKSTEMP]: Add BLOCK_INPUT
+ around mkstemp.
+
+ * image.c (XDrawLine) [MAC_OS]: Remove macro.
+ (XCreateGC_pixmap) [!HAVE_NTGUI]: Likewise.
+ (x_disable_image) [!HAVE_NTGUI]: Use XCreateGC instead of
+ XCreateGC_pixmap.
+
+ * macgui.h (Display): Typedef to opaque type.
+
+ * macmenu.c (mac_dialog_modal_filter) [MAC_OSX]: New function.
+ (Fx_popup_dialog) [MAC_OSX]: Use standard alert if called from
+ Fmessage_box, Fyes_or_no_p, or Fy_or_n_p.
+ [MAC_OS_X_VERSION_MAX_ALLOWED >= 1030] (menu_quit_handler):
+ Use mac_quit_char_key_p.
+
+ * macterm.c (XDrawLine): Rename from mac_draw_line_to_pixmap.
+ (XCreateGC): Change type of 2nd argument to void *.
+ (XFreeGC) [USE_CG_DRAWING && MAC_OS_X_VERSION_MAX_ALLOWED >= 1030]:
+ Fix last change.
+ (mac_to_emacs_modifiers): Change return type to int.
+ [USE_CARBON_EVENTS] (mac_event_to_emacs_modifiers): Likewise.
+ (mac_mapped_modifiers): New function.
+ (XTread_socket): Use it.
+ [USE_TSM] (mac_handle_text_input_event): Likewise.
+ (do_window_update) [USE_CG_DRAWING]: Call mac_prepare_for_quickdraw.
+ (mac_quit_char_modifiers, mac_quit_char_keycode) [MAC_OSX]:
+ Remove variables.
+ (mac_determine_quit_char_modifiers, init_quit_char_handler)
+ [MAC_OSX]: Remove functions.
+ (make_ctrl_char) [MAC_OSX]: Add extern.
+ (mac_quit_char_key_p) [MAC_OSX]: New function.
+ (mac_initialize) [MAC_OSX]: Don't call init_quit_char_handler.
+
+ * macterm.h (FONT_MAX_WIDTH): Remove unused macro.
+ (XCreateGC): Change type in extern.
+ (XDrawLine): Rename from mac_draw_line_to_pixmap.
+ (mac_quit_char_key_p) [MAC_OSX]: Add extern.
+
+2007-01-08 Jan Dj,Ad(Brv <jan.h.d@swipnet.se>
+
+ * keyboard.c (init_keyboard): Initialize interrupt_input_blocked and
+ interrupt_input_pending.
+
+ * xterm.h (x_display_info): New: net_supported_atoms,
+ nr_net_supported_atoms and net_supported_window.
+
+ * xterm.c (last_user_time): New variable.
+ (handle_one_xevent): Set last_user_time from events that have Time.
+ Set net_supported_window to 0 when reparented.
+ (wm_supports): New function.
+ (do_ewmh_fullscreen): Use wm_supports to check for _NET_WM_STATE.
+ (x_term_init): Initialize net_supported_atoms, nr_net_supported_atoms
+ and net_supported_window.
+
+2007-01-05 Kim F. Storm <storm@cua.dk>
+
+ * indent.c (Fvertical_motion): Fix it overshoot check for overlay
+ strings without embedded newlines immediately followed by newline.
+
+2007-01-05 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
+
+ * editfns.c (Fformat_time_string, Fdecode_time, Fencode_time)
+ (Fcurrent_time_string, Fcurrent_time_zone): Add BLOCK_INPUT around
+ gmtime/localtime/emacs_memftimeu/mktime.
+
+ * mac.c (Fmac_set_file_creator): Use MAC_EMACS_CREATOR_CODE
+ instead of 'EMAx'.
+ [!MAC_OSX] (sys_open, sys_creat, sys_fopen): Likewise.
+
+ * macgui.h (struct _XGC) [USE_CG_DRAWING
+ && MAC_OS_X_VERSION_MAX_ALLOWED >= 1030]: New members cg_fore_color
+ and cg_back_color.
+
+ * macmenu.c (Vshow_help_function) [TARGET_API_MAC_CARBON]: Add extern.
+ (restore_show_help_function, menu_target_item_handler)
+ [TARGET_API_MAC_CARBON]: New functions.
+ (install_menu_target_item_handler): New function.
+ (add_menu_item) [TARGET_API_MAC_CARBON]: Set help string as menu
+ item property.
+
+ * macterm.c (CG_SET_FILL_COLOR_MAYBE_WITH_CGCOLOR)
+ (CG_SET_FILL_COLOR_WITH_GC_FOREGROUND)
+ (CG_SET_FILL_COLOR_WITH_GC_BACKGROUND)
+ (CG_SET_STROKE_COLOR_MAYBE_WITH_CGCOLOR)
+ (CG_SET_STROKE_COLOR_WITH_GC_FOREGROUND): New macros.
+ (mac_cg_color_space_rgb) [USE_CG_DRAWING]: New variable.
+ (mac_cg_color_black) [USE_CG_DRAWING
+ && MAC_OS_X_VERSION_MAX_ALLOWED >= 1030]: New variable.
+ (init_cg_color) [USE_CG_DRAWING]: New function.
+ (mac_draw_line, mac_draw_rectangle) [USE_CG_DRAWING]: Use
+ CG_SET_STROKE_COLOR_WITH_GC_FOREGROUND instead of CG_SET_STROKE_COLOR.
+ (mac_erase_rectangle, mac_clear_window, mac_draw_cg_image)
+ (mac_fill_rectangle, mac_draw_image_string_cg) [USE_CG_DRAWING]:
+ Use CG_SET_FILL_COLOR_WITH_GC_FOREGROUND or
+ CG_SET_FILL_COLOR_WITH_GC_BACKGROUND instead of CG_SET_FILL_COLOR.
+ (mac_draw_string_common) [MAC_OSX && USE_ATSUI]: Likewise.
+ (XCreateGC, XFreeGC, XSetForeground, XSetBackground) [USE_CG_DRAWING
+ && MAC_OS_X_VERSION_MAX_ALLOWED >= 1030]: Use gc->cg_fore_color and/or
+ gc->cg_back_color.
+ (install_drag_handler, remove_drag_handler): Make extern.
+ (install_menu_target_item_handler): Add extern.
+ (install_window_handler): Call install_menu_target_item_handler.
+ [MAC_OS8] (main): Use MAC_EMACS_CREATOR_CODE instead of 'EMAx'.
+ (mac_initialize) [USE_CG_DRAWING]: Call init_cg_color.
+
+ * macterm.h (MAC_EMACS_CREATOR_CODE): New enumerator.
+
+2007-01-04 Juanma Barranquero <lekktu@gmail.com>
+
+ * window.c (Fwindow_end): Fix use of >= operator.
+
+2007-01-03 Richard Stallman <rms@gnu.org>
+
+ * window.c (Fwindow_end): Check BUF_OVERLAY_MODIFF like BUF_MODIFF.
+
+2007-01-02 Jan Dj,Ad(Brv <jan.h.d@swipnet.se>
+
+ * gtkutil.h (xg_menu_item_cb_data_): Remove highlight_id and
+ unhighlight_id.
+
+ * gtkutil.c (menuitem_highlight_callback): Invoked widget is the
+ parent of the menu item. Get menu item widget from event.
+ (xg_create_one_menuitem, xg_update_menu_item): highlight_id and
+ unhighlight_id has been removed.
+ (create_menus): Connect enter/leave-notify-event to the menu instead
+ of individual items.
+
2006-12-31 Jan Dj,Ad(Brv <jan.h.d@swipnet.se>
* gtkutil.c (update_frame_tool_bar): Connect create-menu-proxy with
@@ -75,8 +329,8 @@
2006-12-22 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
- * macfns.c (mac_update_title_bar) [TARGET_API_MAC_CARBON]: Call
- mac_update_proxy_icon also when buffer modification flag changed.
+ * macfns.c (mac_update_title_bar) [TARGET_API_MAC_CARBON]:
+ Call mac_update_proxy_icon also when buffer modification flag changed.
[TARGET_API_MAC_CARBON] (mac_update_proxy_icon): Don't update alias,
but compare FSRef/FSSpec of resolved alias.
@@ -169,8 +423,8 @@
(Fmac_atsu_font_face_attributes) [USE_ATSUI]: New function.
(syms_of_macfns) [USE_ATSUI]: Defsubr it.
- * macselect.c [TARGET_API_MAC_CARBON] (mac_do_receive_drag): Use
- mac_wakeup_from_rne instead of mac_post_mouse_moved_event.
+ * macselect.c [TARGET_API_MAC_CARBON] (mac_do_receive_drag):
+ Use mac_wakeup_from_rne instead of mac_post_mouse_moved_event.
* macterm.c (mac_query_char_extents) [USE_ATSUI]: Don't call
ATSUGetGlyphBounds if not necessary.
@@ -183,8 +437,8 @@
(mac_load_query_font) [USE_ATSUI]: Use atsu_find_font_from_family_name.
Don't get metrics for Latin-1 right half characters.
(mac_load_query_font): Don't load font if space width is not positive.
- [TARGET_API_MAC_CARBON] (mac_store_event_ref_as_apple_event): Use
- mac_wakeup_from_rne instead of mac_post_mouse_moved_event.
+ [TARGET_API_MAC_CARBON] (mac_store_event_ref_as_apple_event):
+ Use mac_wakeup_from_rne instead of mac_post_mouse_moved_event.
(XTread_socket): Call SelectWindow when unfocused frame is clicked.
* macterm.h (mac_wakeup_from_rne) [TARGET_API_MAC_CARBON]: Add extern.
@@ -26933,7 +27187,7 @@ See ChangeLog.9 for earlier changes.
;; End:
Copyright (C) 2001, 2002, 2003, 2004, 2005,
- 2006 Free Software Foundation, Inc.
+ 2006, 2007 Free Software Foundation, Inc.
Copying and distribution of this file, with or without modification,
are permitted provided the copyright notice and this notice are preserved.
diff --git a/src/ChangeLog.1 b/src/ChangeLog.1
index 94f1039f71e..4aaa3202dd6 100644
--- a/src/ChangeLog.1
+++ b/src/ChangeLog.1
@@ -3522,7 +3522,8 @@
* minibuf.c: Don't allow entry to minibuffer
while minibuffer is selected.
- Copyright (C) 1985, 1986 Free Software Foundation, Inc.
+ Copyright (C) 1985, 1986, 2001, 2002, 2003, 2004, 2005, 2006, 2007
+ Free Software Foundation, Inc.
Copying and distribution of this file, with or without modification,
are permitted provided the copyright notice and this notice are preserved.
diff --git a/src/ChangeLog.2 b/src/ChangeLog.2
index 430cbc0f9da..75dd37940d0 100644
--- a/src/ChangeLog.2
+++ b/src/ChangeLog.2
@@ -4771,7 +4771,8 @@
See ChangeLog.1 for earlier changes.
- Copyright (C) 1986, 1987, 1988 Free Software Foundation, Inc.
+ Copyright (C) 1986, 1987, 1988, 2001, 2002, 2003, 2004, 2005, 2006,
+ 2007 Free Software Foundation, Inc.
Copying and distribution of this file, with or without modification,
are permitted provided the copyright notice and this notice are preserved.
diff --git a/src/ChangeLog.3 b/src/ChangeLog.3
index 73f87793541..bde54ff99f9 100644
--- a/src/ChangeLog.3
+++ b/src/ChangeLog.3
@@ -16531,7 +16531,8 @@
See ChangeLog.2 for earlier changes.
- Copyright (C) 1993 Free Software Foundation, Inc.
+ Copyright (C) 1993, 2001, 2002, 2003, 2004, 2005, 2006, 2007
+ Free Software Foundation, Inc.
Copying and distribution of this file, with or without modification,
are permitted provided the copyright notice and this notice are preserved.
diff --git a/src/ChangeLog.4 b/src/ChangeLog.4
index b3d40b96b6c..04310b34cad 100644
--- a/src/ChangeLog.4
+++ b/src/ChangeLog.4
@@ -6903,7 +6903,8 @@
See ChangeLog.3 for earlier changes.
- Copyright (C) 1993, 1994 Free Software Foundation, Inc.
+ Copyright (C) 1993, 1994, 2001, 2002, 2003, 2004, 2005, 2006, 2007
+ Free Software Foundation, Inc.
Copying and distribution of this file, with or without modification,
are permitted provided the copyright notice and this notice are preserved.
diff --git a/src/ChangeLog.5 b/src/ChangeLog.5
index 5e50066bc78..893a6497996 100644
--- a/src/ChangeLog.5
+++ b/src/ChangeLog.5
@@ -7144,7 +7144,8 @@
See ChangeLog.4 for earlier changes.
- Copyright (C) 1994, 1995 Free Software Foundation, Inc.
+ Copyright (C) 1994, 1995, 2001, 2002, 2003, 2004, 2005, 2006, 2007
+ Free Software Foundation, Inc.
Copying and distribution of this file, with or without modification,
are permitted provided the copyright notice and this notice are preserved.
diff --git a/src/ChangeLog.6 b/src/ChangeLog.6
index 2da83619eb4..fb29238601a 100644
--- a/src/ChangeLog.6
+++ b/src/ChangeLog.6
@@ -5362,7 +5362,8 @@
See ChangeLog.5 for earlier changes.
- Copyright (C) 1995, 1996 Free Software Foundation, Inc.
+ Copyright (C) 1995, 1996, 2001, 2002, 2003, 2004, 2005, 2006, 2007
+ Free Software Foundation, Inc.
Copying and distribution of this file, with or without modification,
are permitted provided the copyright notice and this notice are preserved.
diff --git a/src/ChangeLog.7 b/src/ChangeLog.7
index f1a29903715..c38cb1fc9ca 100644
--- a/src/ChangeLog.7
+++ b/src/ChangeLog.7
@@ -11098,7 +11098,8 @@ Fri Sep 20 02:37:37 1996 Marcus Daniels <marcus@sayre.sysc.pdx.edu>
See ChangeLog.6 for earlier changes.
- Copyright (C) 1997, 1998 Free Software Foundation, Inc.
+ Copyright (C) 1997, 1998, 2001, 2002, 2003, 2004, 2005, 2006, 2007
+ Free Software Foundation, Inc.
Copying and distribution of this file, with or without modification,
are permitted provided the copyright notice and this notice are preserved.
diff --git a/src/ChangeLog.8 b/src/ChangeLog.8
index a9465058194..ff6b3b25461 100644
--- a/src/ChangeLog.8
+++ b/src/ChangeLog.8
@@ -13991,7 +13991,8 @@ Wed Jun 25 15:22:58 1997 Gerd Moellmann <gerd@acm.org>
See ChangeLog.7 for earlier changes.
- Copyright (C) 1999 Free Software Foundation, Inc.
+ Copyright (C) 1999, 2001, 2002, 2003, 2004, 2005, 2006, 2007
+ Free Software Foundation, Inc.
Copying and distribution of this file, with or without modification,
are permitted provided the copyright notice and this notice are preserved.
diff --git a/src/ChangeLog.9 b/src/ChangeLog.9
index 9ce75696f5a..2a644e13585 100644
--- a/src/ChangeLog.9
+++ b/src/ChangeLog.9
@@ -13294,7 +13294,8 @@ See ChangeLog.8 for earlier changes.
;; coding: iso-2022-7bit
;; End:
- Copyright (C) 2001, 2002 Free Software Foundation, Inc.
+ Copyright (C) 2001, 2002, 2003, 2004, 2005, 2006, 2007
+ Free Software Foundation, Inc.
Copying and distribution of this file, with or without modification,
are permitted provided the copyright notice and this notice are preserved.
diff --git a/src/Makefile.in b/src/Makefile.in
index 87352d74830..3e6d39246f6 100644
--- a/src/Makefile.in
+++ b/src/Makefile.in
@@ -1,6 +1,6 @@
# Makefile for GNU Emacs.
# Copyright (C) 1985, 1987, 1988, 1993, 1994, 1995, 1999, 2000, 2001, 2002,
-# 2003, 2004, 2005, 2006 Free Software Foundation, Inc.
+# 2003, 2004, 2005, 2006, 2007 Free Software Foundation, Inc.
# This file is part of GNU Emacs.
diff --git a/src/abbrev.c b/src/abbrev.c
index 2d95b881bc5..8e9bd143089 100644
--- a/src/abbrev.c
+++ b/src/abbrev.c
@@ -1,6 +1,6 @@
/* Primitives for word-abbrev mode.
Copyright (C) 1985, 1986, 1993, 1996, 1998, 2001, 2002, 2003, 2004,
- 2005, 2006 Free Software Foundation, Inc.
+ 2005, 2006, 2007 Free Software Foundation, Inc.
This file is part of GNU Emacs.
diff --git a/src/alloc.c b/src/alloc.c
index 8ebaac74c08..b6ad5545f34 100644
--- a/src/alloc.c
+++ b/src/alloc.c
@@ -1,6 +1,6 @@
/* Storage allocation and gc for GNU Emacs Lisp interpreter.
Copyright (C) 1985, 1986, 1988, 1993, 1994, 1995, 1997, 1998, 1999,
- 2000, 2001, 2002, 2003, 2004, 2005, 2006 Free Software Foundation, Inc.
+ 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007 Free Software Foundation, Inc.
This file is part of GNU Emacs.
@@ -127,21 +127,21 @@ extern __malloc_size_t __malloc_extra_blocks;
static pthread_mutex_t alloc_mutex;
-#define BLOCK_INPUT_ALLOC \
- do \
- { \
- if (pthread_self () == main_thread) \
- BLOCK_INPUT; \
- pthread_mutex_lock (&alloc_mutex); \
- } \
+#define BLOCK_INPUT_ALLOC \
+ do \
+ { \
+ if (pthread_equal (pthread_self (), main_thread)) \
+ sigblock (sigmask (SIGIO)); \
+ pthread_mutex_lock (&alloc_mutex); \
+ } \
while (0)
-#define UNBLOCK_INPUT_ALLOC \
- do \
- { \
- pthread_mutex_unlock (&alloc_mutex); \
- if (pthread_self () == main_thread) \
- UNBLOCK_INPUT; \
- } \
+#define UNBLOCK_INPUT_ALLOC \
+ do \
+ { \
+ pthread_mutex_unlock (&alloc_mutex); \
+ if (pthread_equal (pthread_self (), main_thread)) \
+ sigunblock (sigmask (SIGIO)); \
+ } \
while (0)
#else /* SYSTEM_MALLOC || not HAVE_GTK_AND_PTHREAD */
diff --git a/src/atimer.c b/src/atimer.c
index 8b092270d7b..41dd9e53a02 100644
--- a/src/atimer.c
+++ b/src/atimer.c
@@ -1,6 +1,6 @@
/* Asynchronous timers.
- Copyright (C) 2000, 2002, 2003, 2004, 2005,
- 2006 Free Software Foundation, Inc.
+ Copyright (C) 2000, 2001, 2002, 2003, 2004, 2005,
+ 2006, 2007 Free Software Foundation, Inc.
This file is part of GNU Emacs.
diff --git a/src/atimer.h b/src/atimer.h
index 84b1383ffdf..8c3b388d012 100644
--- a/src/atimer.h
+++ b/src/atimer.h
@@ -1,6 +1,6 @@
/* Asynchronous timers.
- Copyright (C) 2000, 2002, 2003, 2004, 2005,
- 2006 Free Software Foundation, Inc.
+ Copyright (C) 2000, 2001, 2002, 2003, 2004, 2005,
+ 2006, 2007 Free Software Foundation, Inc.
This file is part of GNU Emacs.
diff --git a/src/blockinput.h b/src/blockinput.h
index 78dce69fe1f..fcaa64723bc 100644
--- a/src/blockinput.h
+++ b/src/blockinput.h
@@ -1,6 +1,6 @@
/* blockinput.h - interface to blocking complicated interrupt-driven input.
- Copyright (C) 1989, 1993, 2002, 2003, 2004,
- 2005, 2006 Free Software Foundation, Inc.
+ Copyright (C) 1989, 1993, 2001, 2002, 2003, 2004,
+ 2005, 2006, 2007 Free Software Foundation, Inc.
This file is part of GNU Emacs.
diff --git a/src/buffer.c b/src/buffer.c
index 6e3b39ad2bb..2361cce3882 100644
--- a/src/buffer.c
+++ b/src/buffer.c
@@ -1,7 +1,7 @@
/* Buffer manipulation primitives for GNU Emacs.
Copyright (C) 1985, 1986, 1987, 1988, 1989, 1993, 1994,
1995, 1997, 1998, 1999, 2000, 2001, 2002,
- 2003, 2004, 2005, 2006 Free Software Foundation, Inc.
+ 2003, 2004, 2005, 2006, 2007 Free Software Foundation, Inc.
This file is part of GNU Emacs.
diff --git a/src/buffer.h b/src/buffer.h
index 96db95a57e4..7ee5d921419 100644
--- a/src/buffer.h
+++ b/src/buffer.h
@@ -1,6 +1,6 @@
/* Header file for the buffer manipulation primitives.
Copyright (C) 1985, 1986, 1993, 1994, 1995, 1997, 1998, 1999, 2000, 2001,
- 2002, 2003, 2004, 2005, 2006 Free Software Foundation, Inc.
+ 2002, 2003, 2004, 2005, 2006, 2007 Free Software Foundation, Inc.
This file is part of GNU Emacs.
diff --git a/src/bytecode.c b/src/bytecode.c
index 6476070be5d..999addc2f0a 100644
--- a/src/bytecode.c
+++ b/src/bytecode.c
@@ -1,6 +1,6 @@
/* Execution of byte code produced by bytecomp.el.
Copyright (C) 1985, 1986, 1987, 1988, 1993, 2000, 2001, 2002, 2003, 2004,
- 2005, 2006 Free Software Foundation, Inc.
+ 2005, 2006, 2007 Free Software Foundation, Inc.
This file is part of GNU Emacs.
diff --git a/src/callint.c b/src/callint.c
index 68cfdfc7aa6..39b2046e8fc 100644
--- a/src/callint.c
+++ b/src/callint.c
@@ -1,6 +1,6 @@
/* Call a Lisp function interactively.
- Copyright (C) 1985, 1986, 1993, 1994, 1995, 1997, 2000, 2002, 2003,
- 2004, 2005, 2006 Free Software Foundation, Inc.
+ Copyright (C) 1985, 1986, 1993, 1994, 1995, 1997, 2000, 2001, 2002,
+ 2003, 2004, 2005, 2006, 2007 Free Software Foundation, Inc.
This file is part of GNU Emacs.
diff --git a/src/callproc.c b/src/callproc.c
index 819e7ff4a32..6af47f0ed3e 100644
--- a/src/callproc.c
+++ b/src/callproc.c
@@ -1,6 +1,6 @@
/* Synchronous subprocess invocation for GNU Emacs.
Copyright (C) 1985, 1986, 1987, 1988, 1993, 1994, 1995, 1999, 2000, 2001,
- 2002, 2003, 2004, 2005, 2006 Free Software Foundation, Inc.
+ 2002, 2003, 2004, 2005, 2006, 2007 Free Software Foundation, Inc.
This file is part of GNU Emacs.
@@ -992,7 +992,11 @@ usage: (call-process-region START END PROGRAM &optional DELETE BUFFER DISPLAY &r
#ifdef HAVE_MKSTEMP
{
- int fd = mkstemp (tempfile);
+ int fd;
+
+ BLOCK_INPUT;
+ fd = mkstemp (tempfile);
+ UNBLOCK_INPUT;
if (fd == -1)
report_file_error ("Failed to open temporary file",
Fcons (Vtemp_file_name_pattern, Qnil));
diff --git a/src/casefiddle.c b/src/casefiddle.c
index 104f7f97a41..56b21e738ce 100644
--- a/src/casefiddle.c
+++ b/src/casefiddle.c
@@ -1,6 +1,6 @@
/* GNU Emacs case conversion functions.
Copyright (C) 1985, 1994, 1997, 1998, 1999, 2001, 2002, 2003, 2004,
- 2005, 2006 Free Software Foundation, Inc.
+ 2005, 2006, 2007 Free Software Foundation, Inc.
This file is part of GNU Emacs.
diff --git a/src/casetab.c b/src/casetab.c
index 517f24de014..2245e8e8b4a 100644
--- a/src/casetab.c
+++ b/src/casetab.c
@@ -1,6 +1,6 @@
/* GNU Emacs routines to deal with case tables.
- Copyright (C) 1993, 1994, 2002, 2003, 2004,
- 2005, 2006 Free Software Foundation, Inc.
+ Copyright (C) 1993, 1994, 2001, 2002, 2003, 2004,
+ 2005, 2006, 2007 Free Software Foundation, Inc.
This file is part of GNU Emacs.
diff --git a/src/category.c b/src/category.c
index 4d19d4a6ccd..218d5f7f783 100644
--- a/src/category.c
+++ b/src/category.c
@@ -1,7 +1,8 @@
/* GNU Emacs routines to deal with category tables.
- Copyright (C) 1998, 2001, 2004, 2005, 2006 Free Software Foundation, Inc.
+ Copyright (C) 1998, 2001, 2002, 2003, 2004, 2005, 2006, 2007
+ Free Software Foundation, Inc.
Copyright (C) 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004,
- 2005, 2006
+ 2005, 2006, 2007
National Institute of Advanced Industrial Science and Technology (AIST)
Registration Number H14PRO021
Copyright (C) 2003
diff --git a/src/category.h b/src/category.h
index 86257635226..3ce03a83de8 100644
--- a/src/category.h
+++ b/src/category.h
@@ -1,6 +1,6 @@
/* Declarations having to do with Emacs category tables.
Copyright (C) 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004,
- 2005, 2006
+ 2005, 2006, 2007
National Institute of Advanced Industrial Science and Technology (AIST)
Registration Number H14PRO021
Copyright (C) 2003
diff --git a/src/ccl.c b/src/ccl.c
index 017c9ab4feb..c13f7c863b1 100644
--- a/src/ccl.c
+++ b/src/ccl.c
@@ -1,8 +1,8 @@
/* CCL (Code Conversion Language) interpreter.
Copyright (C) 2001, 2002, 2003, 2004, 2005,
- 2006 Free Software Foundation, Inc.
+ 2006, 2007 Free Software Foundation, Inc.
Copyright (C) 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004,
- 2005, 2006
+ 2005, 2006, 2007
National Institute of Advanced Industrial Science and Technology (AIST)
Registration Number H14PRO021
Copyright (C) 2003
diff --git a/src/ccl.h b/src/ccl.h
index 01d92b621eb..e1c14e71754 100644
--- a/src/ccl.h
+++ b/src/ccl.h
@@ -1,6 +1,6 @@
/* Header for CCL (Code Conversion Language) interpreter.
Copyright (C) 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004,
- 2005, 2006
+ 2005, 2006, 2007
National Institute of Advanced Industrial Science and Technology (AIST)
Registration Number H14PRO021
Copyright (C) 2003
diff --git a/src/charset.c b/src/charset.c
index 9fb7f641705..d5b15092b7b 100644
--- a/src/charset.c
+++ b/src/charset.c
@@ -1,10 +1,11 @@
/* Basic character set support.
Copyright (C) 2001, 2002, 2003, 2004, 2005,
- 2006 Free Software Foundation, Inc.
+ 2006, 2007 Free Software Foundation, Inc.
Copyright (C) 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004,
- 2005, 2006
+ 2005, 2006, 2007
National Institute of Advanced Industrial Science and Technology (AIST)
Registration Number H14PRO021
+
Copyright (C) 2003, 2004
National Institute of Advanced Industrial Science and Technology (AIST)
Registration Number H13PRO009
diff --git a/src/charset.h b/src/charset.h
index e7aaf9d6194..8c76aa06071 100644
--- a/src/charset.h
+++ b/src/charset.h
@@ -1,10 +1,11 @@
/* Header for charset handler.
Copyright (C) 2001, 2002, 2003, 2004, 2005,
- 2006 Free Software Foundation, Inc.
+ 2006, 2007 Free Software Foundation, Inc.
Copyright (C) 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004,
- 2005, 2006
+ 2005, 2006, 2007
National Institute of Advanced Industrial Science and Technology (AIST)
Registration Number H14PRO021
+
Copyright (C) 2003
National Institute of Advanced Industrial Science and Technology (AIST)
Registration Number H13PRO009
diff --git a/src/cm.c b/src/cm.c
index dd25c112630..da984f0b82d 100644
--- a/src/cm.c
+++ b/src/cm.c
@@ -1,6 +1,6 @@
/* Cursor motion subroutines for GNU Emacs.
- Copyright (C) 1985, 1995, 2002, 2003, 2004,
- 2005, 2006 Free Software Foundation, Inc.
+ Copyright (C) 1985, 1995, 2001, 2002, 2003, 2004,
+ 2005, 2006, 2007 Free Software Foundation, Inc.
based primarily on public domain code written by Chris Torek
This file is part of GNU Emacs.
diff --git a/src/cm.h b/src/cm.h
index c94c0d43597..d77ba582f74 100644
--- a/src/cm.h
+++ b/src/cm.h
@@ -1,6 +1,6 @@
/* Cursor motion calculation definitions for GNU Emacs
- Copyright (C) 1985, 1989, 2002, 2003, 2004,
- 2005, 2006 Free Software Foundation, Inc.
+ Copyright (C) 1985, 1989, 2001, 2002, 2003, 2004,
+ 2005, 2006, 2007 Free Software Foundation, Inc.
This file is part of GNU Emacs.
diff --git a/src/cmds.c b/src/cmds.c
index 096b63dd453..e8f775d9c35 100644
--- a/src/cmds.c
+++ b/src/cmds.c
@@ -1,6 +1,6 @@
/* Simple built-in editing commands.
Copyright (C) 1985, 1993, 1994, 1995, 1996, 1997, 1998, 2001, 2002,
- 2003, 2004, 2005, 2006 Free Software Foundation, Inc.
+ 2003, 2004, 2005, 2006, 2007 Free Software Foundation, Inc.
This file is part of GNU Emacs.
diff --git a/src/coding.c b/src/coding.c
index 50c63b4beb8..aa58884fded 100644
--- a/src/coding.c
+++ b/src/coding.c
@@ -1,8 +1,8 @@
/* Coding system handler (conversion, detection, etc).
Copyright (C) 2001, 2002, 2003, 2004, 2005,
- 2006 Free Software Foundation, Inc.
+ 2006, 2007 Free Software Foundation, Inc.
Copyright (C) 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004,
- 2005, 2006
+ 2005, 2006, 2007
National Institute of Advanced Industrial Science and Technology (AIST)
Registration Number H14PRO021
Copyright (C) 2003
diff --git a/src/coding.h b/src/coding.h
index 0f8d2b0ed7b..f33e8335752 100644
--- a/src/coding.h
+++ b/src/coding.h
@@ -1,8 +1,8 @@
/* Header for coding system handler.
- Copyright (C) 2002, 2003, 2004, 2005,
- 2006 Free Software Foundation, Inc.
+ Copyright (C) 2001, 2002, 2003, 2004, 2005,
+ 2006, 2007 Free Software Foundation, Inc.
Copyright (C) 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004,
- 2005, 2006
+ 2005, 2006, 2007
National Institute of Advanced Industrial Science and Technology (AIST)
Registration Number H14PRO021
Copyright (C) 2003
diff --git a/src/commands.h b/src/commands.h
index 5c7cad37407..2d0db0ec13c 100644
--- a/src/commands.h
+++ b/src/commands.h
@@ -1,6 +1,6 @@
/* Definitions needed by most editing commands.
- Copyright (C) 1985, 1994, 2002, 2003, 2004,
- 2005, 2006 Free Software Foundation, Inc.
+ Copyright (C) 1985, 1994, 2001, 2002, 2003, 2004,
+ 2005, 2006, 2007 Free Software Foundation, Inc.
This file is part of GNU Emacs.
diff --git a/src/composite.c b/src/composite.c
index 1ccd3af2515..d44acf24722 100644
--- a/src/composite.c
+++ b/src/composite.c
@@ -1,7 +1,7 @@
/* Composite sequence support.
Copyright (C) 2001, 2002, 2003, 2004, 2005,
- 2006 Free Software Foundation, Inc.
- Copyright (C) 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006
+ 2006, 2007 Free Software Foundation, Inc.
+ Copyright (C) 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007
National Institute of Advanced Industrial Science and Technology (AIST)
Registration Number H14PRO021
Copyright (C) 2003, 2006
diff --git a/src/composite.h b/src/composite.h
index 6e600e7a29b..5106fcc990f 100644
--- a/src/composite.h
+++ b/src/composite.h
@@ -1,7 +1,7 @@
/* Header for composite sequence handler.
Copyright (C) 2001, 2002, 2003, 2004, 2005,
- 2006 Free Software Foundation, Inc.
- Copyright (C) 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006
+ 2006, 2007 Free Software Foundation, Inc.
+ Copyright (C) 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007
National Institute of Advanced Industrial Science and Technology (AIST)
Registration Number H14PRO021
Copyright (C) 2003, 2006
diff --git a/src/config.in b/src/config.in
index 8ee525a611b..7c94952463b 100644
--- a/src/config.in
+++ b/src/config.in
@@ -1,7 +1,7 @@
/* src/config.in. Generated from configure.in by autoheader. */
/* GNU Emacs site configuration template file.
- Copyright (C) 1988, 1993, 1994, 1999, 2000, 2001, 2002, 2004, 2005, 2006
+ Copyright (C) 1988, 1993, 1994, 1999, 2000, 2001, 2002, 2004, 2005, 2006, 2007
Free Software Foundation, Inc.
This file is part of GNU Emacs.
diff --git a/src/cxux-crt0.s b/src/cxux-crt0.s
index b05faf57b8e..9a359a44955 100644
--- a/src/cxux-crt0.s
+++ b/src/cxux-crt0.s
@@ -1,7 +1,7 @@
/*
* External symbol setup file for GNU Emacs on CX/UX
* Copyright (C) 1990, 2002, 2003, 2004, 2005,
- * 2006 Free Software Foundation, Inc.
+ * 2006, 2007 Free Software Foundation, Inc.
*
* This file is part of GNU Emacs.
*
diff --git a/src/data.c b/src/data.c
index 120a92d66d7..af166329f81 100644
--- a/src/data.c
+++ b/src/data.c
@@ -1,6 +1,6 @@
/* Primitive operations on Lisp data types for GNU Emacs Lisp interpreter.
Copyright (C) 1985, 1986, 1988, 1993, 1994, 1995, 1997, 1998, 1999, 2000,
- 2001, 2002, 2003, 2004, 2005, 2006 Free Software Foundation, Inc.
+ 2001, 2002, 2003, 2004, 2005, 2006, 2007 Free Software Foundation, Inc.
This file is part of GNU Emacs.
diff --git a/src/dired.c b/src/dired.c
index 3283d38eb4b..27f9f953eb6 100644
--- a/src/dired.c
+++ b/src/dired.c
@@ -1,6 +1,6 @@
/* Lisp functions for making directory listings.
Copyright (C) 1985, 1986, 1993, 1994, 1999, 2000, 2001, 2002, 2003,
- 2004, 2005, 2006 Free Software Foundation, Inc.
+ 2004, 2005, 2006, 2007 Free Software Foundation, Inc.
This file is part of GNU Emacs.
@@ -931,6 +931,7 @@ Elements of the attribute list are:
char modes[10];
Lisp_Object handler;
struct gcpro gcpro1;
+ EMACS_INT uid, gid, ino;
filename = Fexpand_file_name (filename, Qnil);
@@ -965,18 +966,26 @@ Elements of the attribute list are:
#endif
}
values[1] = make_number (s.st_nlink);
+ /* When make_fixnum_or_float is called below with types that are
+ shorter than an int (e.g., `short'), GCC whines about comparison
+ being always false due to limited range of data type. Fix by
+ copying s.st_uid and s.st_gid into int variables. */
+ uid = s.st_uid;
+ gid = s.st_gid;
if (NILP (id_format) || EQ (id_format, Qinteger))
{
- values[2] = make_number (s.st_uid);
- values[3] = make_number (s.st_gid);
+ values[2] = make_fixnum_or_float (uid);
+ values[3] = make_fixnum_or_float (gid);
}
else
{
BLOCK_INPUT;
- pw = (struct passwd *) getpwuid (s.st_uid);
- values[2] = (pw ? build_string (pw->pw_name) : make_number (s.st_uid));
- gr = (struct group *) getgrgid (s.st_gid);
- values[3] = (gr ? build_string (gr->gr_name) : make_number (s.st_gid));
+ pw = (struct passwd *) getpwuid (uid);
+ values[2] = (pw ? build_string (pw->pw_name)
+ : make_fixnum_or_float (uid));
+ gr = (struct group *) getgrgid (gid);
+ values[3] = (gr ? build_string (gr->gr_name)
+ : make_fixnum_or_float (gid));
UNBLOCK_INPUT;
}
values[4] = make_time (s.st_atime);
@@ -998,20 +1007,22 @@ Elements of the attribute list are:
if (! NILP (dirname))
encoded = ENCODE_FILE (dirname);
if (! NILP (dirname) && stat (SDATA (encoded), &sdir) == 0)
- values[9] = (sdir.st_gid != s.st_gid) ? Qt : Qnil;
+ values[9] = (sdir.st_gid != gid) ? Qt : Qnil;
else /* if we can't tell, assume worst */
values[9] = Qt;
#else /* file gid will be egid */
- values[9] = (s.st_gid != getegid ()) ? Qt : Qnil;
+ values[9] = (gid != getegid ()) ? Qt : Qnil;
#endif /* BSD4_2 (or BSD4_3) */
- if (FIXNUM_OVERFLOW_P (s.st_ino))
+ /* Shut up GCC warnings in FIXNUM_OVERFLOW_P below. */
+ ino = s.st_ino;
+ if (FIXNUM_OVERFLOW_P (ino))
/* To allow inode numbers larger than VALBITS, separate the bottom
16 bits. */
- values[10] = Fcons (make_number (s.st_ino >> 16),
- make_number (s.st_ino & 0xffff));
+ values[10] = Fcons (make_number (ino >> 16),
+ make_number (ino & 0xffff));
else
/* But keep the most common cases as integers. */
- values[10] = make_number (s.st_ino);
+ values[10] = make_number (ino);
/* Likewise for device. */
if (FIXNUM_OVERFLOW_P (s.st_dev))
diff --git a/src/dispextern.h b/src/dispextern.h
index 5eb7ee11dea..e2ad4b73e5a 100644
--- a/src/dispextern.h
+++ b/src/dispextern.h
@@ -1,6 +1,6 @@
/* Interface definitions for display code.
Copyright (C) 1985, 1993, 1994, 1997, 1998, 1999, 2000, 2001, 2002,
- 2003, 2004, 2005, 2006 Free Software Foundation, Inc.
+ 2003, 2004, 2005, 2006, 2007 Free Software Foundation, Inc.
This file is part of GNU Emacs.
diff --git a/src/dispnew.c b/src/dispnew.c
index e554eb1cd7e..ccda3eca550 100644
--- a/src/dispnew.c
+++ b/src/dispnew.c
@@ -1,7 +1,7 @@
/* Updating of data structures for redisplay.
Copyright (C) 1985, 1986, 1987, 1988, 1993, 1994, 1995,
1997, 1998, 1999, 2000, 2001, 2002, 2003,
- 2004, 2005, 2006 Free Software Foundation, Inc.
+ 2004, 2005, 2006, 2007 Free Software Foundation, Inc.
This file is part of GNU Emacs.
@@ -4391,12 +4391,12 @@ update_text_area (w, vpos)
|| desired_row->phys_height != current_row->phys_height
|| desired_row->visible_height != current_row->visible_height
|| current_row->overlapped_p
-#if 0
- /* This causes excessive flickering when mouse is moved across
- the mode line. Luckily everything seems to work just fine
- without doing this. KFS 2006-09-17. */
- || current_row->mouse_face_p
-#endif
+ /* This next line is necessary for correctly redrawing
+ mouse-face areas after scrolling and other operations.
+ However, it causes excessive flickering when mouse is moved
+ across the mode line. Luckily, turning it off for the mode
+ line doesn't seem to hurt anything. -- cyd. */
+ || (current_row->mouse_face_p && !current_row->mode_line_p)
|| current_row->x != desired_row->x)
{
rif->cursor_to (vpos, 0, desired_row->y, desired_row->x);
diff --git a/src/disptab.h b/src/disptab.h
index 0d7a03c43ba..513150902ad 100644
--- a/src/disptab.h
+++ b/src/disptab.h
@@ -1,6 +1,6 @@
/* Things for GLYPHS and glyph tables.
- Copyright (C) 1993, 2002, 2003, 2004, 2005,
- 2006 Free Software Foundation, Inc.
+ Copyright (C) 1993, 2001, 2002, 2003, 2004, 2005,
+ 2006, 2007 Free Software Foundation, Inc.
This file is part of GNU Emacs.
diff --git a/src/doc.c b/src/doc.c
index ecb0197b3ca..df3ca94af1e 100644
--- a/src/doc.c
+++ b/src/doc.c
@@ -1,6 +1,6 @@
/* Record indices of function doc strings stored in a file.
Copyright (C) 1985, 1986, 1993, 1994, 1995, 1997, 1998, 1999, 2000, 2001,
- 2002, 2003, 2004, 2005, 2006 Free Software Foundation, Inc.
+ 2002, 2003, 2004, 2005, 2006, 2007 Free Software Foundation, Inc.
This file is part of GNU Emacs.
diff --git a/src/doprnt.c b/src/doprnt.c
index 6e71e261788..d3c8557c251 100644
--- a/src/doprnt.c
+++ b/src/doprnt.c
@@ -1,8 +1,8 @@
/* Output like sprintf to a buffer of specified size.
Also takes args differently: pass one pointer to an array of strings
in addition to the format string which is separate.
- Copyright (C) 1985, 2002, 2003, 2004, 2005,
- 2006 Free Software Foundation, Inc.
+ Copyright (C) 1985, 2001, 2002, 2003, 2004, 2005,
+ 2006, 2007 Free Software Foundation, Inc.
This file is part of GNU Emacs.
diff --git a/src/dosfns.c b/src/dosfns.c
index 37085ebeb5f..801df68ae7e 100644
--- a/src/dosfns.c
+++ b/src/dosfns.c
@@ -1,7 +1,7 @@
/* MS-DOS specific Lisp utilities. Coded by Manabu Higashida, 1991.
Major changes May-July 1993 Morten Welinder (only 10% original code left)
Copyright (C) 1991, 1993, 1996, 1997, 1998, 2001, 2002, 2003, 2004,
- 2005, 2006 Free Software Foundation, Inc.
+ 2005, 2006, 2007 Free Software Foundation, Inc.
This file is part of GNU Emacs.
diff --git a/src/dosfns.h b/src/dosfns.h
index 4f1cfd83d22..622e7cb5335 100644
--- a/src/dosfns.h
+++ b/src/dosfns.h
@@ -2,8 +2,8 @@
Coded by Manabu Higashida, 1991.
Modified by Morten Welinder, 1993-1994.
- Copyright (C) 1991, 1994, 1995, 1997, 1999, 2002, 2003, 2004,
- 2005, 2006 Free Software Foundation, Inc.
+ Copyright (C) 1991, 1994, 1995, 1997, 1999, 2001, 2002, 2003, 2004,
+ 2005, 2006, 2007 Free Software Foundation, Inc.
This file is part of GNU Emacs.
diff --git a/src/ecrt0.c b/src/ecrt0.c
index a9b993d360e..7f94f07dc00 100644
--- a/src/ecrt0.c
+++ b/src/ecrt0.c
@@ -1,6 +1,6 @@
/* C code startup routine.
- Copyright (C) 1985, 1986, 1992, 2002, 2003, 2004,
- 2005, 2006 Free Software Foundation, Inc.
+ Copyright (C) 1985, 1986, 1992, 2001, 2002, 2003, 2004,
+ 2005, 2006, 2007 Free Software Foundation, Inc.
This file is part of GNU Emacs.
diff --git a/src/editfns.c b/src/editfns.c
index 79a88604d8c..3e27ca0cf43 100644
--- a/src/editfns.c
+++ b/src/editfns.c
@@ -1,7 +1,7 @@
/* Lisp functions pertaining to editing.
Copyright (C) 1985, 1986, 1987, 1989, 1993, 1994, 1995, 1996,
1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004,
- 2005, 2006 Free Software Foundation, Inc.
+ 2005, 2006, 2007 Free Software Foundation, Inc.
This file is part of GNU Emacs.
@@ -1312,7 +1312,10 @@ DEFUN ("user-uid", Fuser_uid, Suser_uid, 0, 0, 0,
Value is an integer or float, depending on the value. */)
()
{
- return make_fixnum_or_float (geteuid ());
+ /* Assignment to EMACS_INT stops GCC whining about limited range of
+ data type. */
+ EMACS_INT euid = geteuid ();
+ return make_fixnum_or_float (euid);
}
DEFUN ("user-real-uid", Fuser_real_uid, Suser_real_uid, 0, 0, 0,
@@ -1320,7 +1323,10 @@ DEFUN ("user-real-uid", Fuser_real_uid, Suser_real_uid, 0, 0, 0,
Value is an integer or float, depending on the value. */)
()
{
- return make_fixnum_or_float (getuid ());
+ /* Assignment to EMACS_INT stops GCC whining about limited range of
+ data type. */
+ EMACS_INT uid = getuid ();
+ return make_fixnum_or_float (uid);
}
DEFUN ("user-full-name", Fuser_full_name, Suser_full_name, 0, 1, 0,
@@ -1448,9 +1454,9 @@ most significant 16 bits of the seconds, while the second has the
least significant 16 bits. The third integer gives the microsecond
count.
-On systems that can't determine the run time, get-internal-run-time
-does the same thing as current-time. The microsecond count is zero on
-systems that do not provide resolution finer than a second. */)
+On systems that can't determine the run time, `get-internal-run-time'
+does the same thing as `current-time'. The microsecond count is zero
+on systems that do not provide resolution finer than a second. */)
()
{
#ifdef HAVE_GETRUSAGE
@@ -1676,7 +1682,9 @@ For example, to produce full ISO 8601 format, use "%Y-%m-%dT%T%z". */)
/* This is probably enough. */
size = SBYTES (format_string) * 6 + 50;
+ BLOCK_INPUT;
tm = ut ? gmtime (&value) : localtime (&value);
+ UNBLOCK_INPUT;
if (! tm)
error ("Specified time is not representable");
@@ -1688,18 +1696,22 @@ For example, to produce full ISO 8601 format, use "%Y-%m-%dT%T%z". */)
int result;
buf[0] = '\1';
+ BLOCK_INPUT;
result = emacs_memftimeu (buf, size, SDATA (format_string),
SBYTES (format_string),
tm, ut);
+ UNBLOCK_INPUT;
if ((result > 0 && result < size) || (result == 0 && buf[0] == '\0'))
return code_convert_string_norecord (make_unibyte_string (buf, result),
Vlocale_coding_system, 0);
/* If buffer was too small, make it bigger and try again. */
+ BLOCK_INPUT;
result = emacs_memftimeu (NULL, (size_t) -1,
SDATA (format_string),
SBYTES (format_string),
tm, ut);
+ UNBLOCK_INPUT;
size = result + 1;
}
}
@@ -1707,7 +1719,7 @@ For example, to produce full ISO 8601 format, use "%Y-%m-%dT%T%z". */)
DEFUN ("decode-time", Fdecode_time, Sdecode_time, 0, 1, 0,
doc: /* Decode a time value as (SEC MINUTE HOUR DAY MONTH YEAR DOW DST ZONE).
The optional SPECIFIED-TIME should be a list of (HIGH LOW . IGNORED),
-as from `current-time' and `file-attributes', or `nil' to use the
+as from `current-time' and `file-attributes', or nil to use the
current time. The obsolete form (HIGH . LOW) is also still accepted.
The list has the following nine members: SEC is an integer between 0
and 60; SEC is 60 for a leap second, which only some operating systems
@@ -1730,7 +1742,9 @@ DOW and ZONE.) */)
if (! lisp_time_argument (specified_time, &time_spec, NULL))
error ("Invalid time specification");
+ BLOCK_INPUT;
decoded_time = localtime (&time_spec);
+ UNBLOCK_INPUT;
if (! decoded_time)
error ("Specified time is not representable");
XSETFASTINT (list_args[0], decoded_time->tm_sec);
@@ -1746,7 +1760,9 @@ DOW and ZONE.) */)
/* Make a copy, in case gmtime modifies the struct. */
save_tm = *decoded_time;
+ BLOCK_INPUT;
decoded_time = gmtime (&time_spec);
+ UNBLOCK_INPUT;
if (decoded_time == 0)
list_args[8] = Qnil;
else
@@ -1802,7 +1818,11 @@ usage: (encode-time SECOND MINUTE HOUR DAY MONTH YEAR &optional ZONE) */)
if (CONSP (zone))
zone = Fcar (zone);
if (NILP (zone))
- time = mktime (&tm);
+ {
+ BLOCK_INPUT;
+ time = mktime (&tm);
+ UNBLOCK_INPUT;
+ }
else
{
char tzbuf[100];
@@ -1827,7 +1847,9 @@ usage: (encode-time SECOND MINUTE HOUR DAY MONTH YEAR &optional ZONE) */)
value doesn't suffice, since that would mishandle leap seconds. */
set_time_zone_rule (tzstring);
+ BLOCK_INPUT;
time = mktime (&tm);
+ UNBLOCK_INPUT;
/* Restore TZ to previous value. */
newenv = environ;
@@ -1871,7 +1893,9 @@ but this is considered obsolete. */)
/* Convert to a string, checking for out-of-range time stamps.
Don't use 'ctime', as that might dump core if VALUE is out of
range. */
+ BLOCK_INPUT;
tm = localtime (&value);
+ UNBLOCK_INPUT;
if (! (tm && TM_YEAR_IN_ASCTIME_RANGE (tm->tm_year) && (tem = asctime (tm))))
error ("Specified time is not representable");
@@ -1927,9 +1951,21 @@ the data it can't find. */)
struct tm *t;
struct tm gmt;
- if (lisp_time_argument (specified_time, &value, NULL)
- && (t = gmtime (&value)) != 0
- && (gmt = *t, t = localtime (&value)) != 0)
+ if (!lisp_time_argument (specified_time, &value, NULL))
+ t = NULL;
+ else
+ {
+ BLOCK_INPUT;
+ t = gmtime (&value);
+ if (t)
+ {
+ gmt = *t;
+ t = localtime (&value);
+ }
+ UNBLOCK_INPUT;
+ }
+
+ if (t)
{
int offset = tm_diff (t, &gmt);
char *s = 0;
@@ -2247,8 +2283,7 @@ usage: (insert-before-markers-and-inherit &rest ARGS) */)
}
DEFUN ("insert-char", Finsert_char, Sinsert_char, 2, 3, 0,
- doc: /* Insert COUNT (second arg) copies of CHARACTER (first arg).
-Both arguments are required.
+ doc: /* Insert COUNT copies of CHARACTER.
Point, and before-insertion markers, are relocated as in the function `insert'.
The optional third arg INHERIT, if non-nil, says to inherit text properties
from adjoining text, if those properties are sticky. */)
@@ -3271,7 +3306,7 @@ save_restriction_restore (data)
DEFUN ("save-restriction", Fsave_restriction, Ssave_restriction, 0, UNEVALLED, 0,
doc: /* Execute BODY, saving and restoring current buffer's restrictions.
The buffer's restrictions make parts of the beginning and end invisible.
-(They are set up with `narrow-to-region' and eliminated with `widen'.)
+\(They are set up with `narrow-to-region' and eliminated with `widen'.)
This special form, `save-restriction', saves the current buffer's restrictions
when it is entered, and restores them when it is exited.
So any `narrow-to-region' within BODY lasts only until the end of the form.
@@ -3733,7 +3768,12 @@ usage: (format STRING &rest OBJECTS) */)
if (*format != 'd' && *format != 'o' && *format != 'x'
&& *format != 'i' && *format != 'X' && *format != 'c')
error ("Invalid format operation %%%c", *format);
- args[n] = Ftruncate (args[n], Qnil);
+ /* This fails unnecessarily if args[n] is bigger than
+ most-positive-fixnum but smaller than MAXINT.
+ These cases are important because we sometimes use floats
+ to represent such integer values (typically such values
+ come from UIDs or PIDs). */
+ /* args[n] = Ftruncate (args[n], Qnil); */
}
/* Note that we're using sprintf to print floats,
@@ -3901,8 +3941,15 @@ usage: (format STRING &rest OBJECTS) */)
else
sprintf (p, this_format, XUINT (args[n]));
}
- else
+ else if (format[-1] == 'e' || format[-1] == 'f' || format[-1] == 'g')
sprintf (p, this_format, XFLOAT_DATA (args[n]));
+ else if (format[-1] == 'd')
+ /* Maybe we should use "%1.0f" instead so it also works
+ for values larger than MAXINT. */
+ sprintf (p, this_format, (EMACS_INT) XFLOAT_DATA (args[n]));
+ else
+ /* Don't sign-extend for octal or hex printing. */
+ sprintf (p, this_format, (EMACS_UINT) XFLOAT_DATA (args[n]));
if (p > buf
&& multibyte
diff --git a/src/emacs.c b/src/emacs.c
index 1db552c33e5..5219176eda9 100644
--- a/src/emacs.c
+++ b/src/emacs.c
@@ -1,6 +1,6 @@
/* Fully extensible Emacs, running on Unix, intended for GNU.
Copyright (C) 1985, 1986, 1987, 1993, 1994, 1995, 1997, 1998, 1999,
- 2001, 2002, 2003, 2004, 2005, 2006 Free Software Foundation, Inc.
+ 2001, 2002, 2003, 2004, 2005, 2006, 2007 Free Software Foundation, Inc.
This file is part of GNU Emacs.
@@ -869,7 +869,7 @@ main (argc, argv
else
{
printf ("GNU Emacs %s\n", SDATA (tem));
- printf ("Copyright (C) 2006 Free Software Foundation, Inc.\n");
+ printf ("Copyright (C) 2007 Free Software Foundation, Inc.\n");
printf ("GNU Emacs comes with ABSOLUTELY NO WARRANTY.\n");
printf ("You may redistribute copies of Emacs\n");
printf ("under the terms of the GNU General Public License.\n");
@@ -2501,7 +2501,8 @@ before you compile Emacs, to enable the code for this feature. */);
emacs_priority = 0;
DEFVAR_LISP ("path-separator", &Vpath_separator,
- doc: /* The directory separator in search paths, as a string. */);
+ doc: /* String containing the character that separates directories in
+search paths, such as PATH and other similar environment variables. */);
{
char c = SEPCHAR;
Vpath_separator = make_string (&c, 1);
diff --git a/src/epaths.in b/src/epaths.in
index d494d85139c..34d97897c7d 100644
--- a/src/epaths.in
+++ b/src/epaths.in
@@ -1,6 +1,6 @@
/* Hey Emacs, this is -*- C -*- code! */
/* Copyright (C) 1993, 1995, 1997, 1999, 2001, 2002, 2003, 2004,
- 2005, 2006 Free Software Foundation, Inc.
+ 2005, 2006, 2007 Free Software Foundation, Inc.
This file is part of GNU Emacs.
@@ -52,7 +52,7 @@ Boston, MA 02110-1301, USA. */
/* Where the configuration process believes the info tree lives. The
lisp variable configure-info-directory gets its value from this
macro, and is then used to set the Info-default-directory-list. */
-#define PATH_INFO "/usr/local/info"
+#define PATH_INFO "/usr/local/share/info"
/* Where Emacs should store game score files. */
#define PATH_GAME "/usr/local/var/games/emacs"
diff --git a/src/eval.c b/src/eval.c
index 7e9b4b55d09..6707849a840 100644
--- a/src/eval.c
+++ b/src/eval.c
@@ -1,6 +1,6 @@
/* Evaluator for GNU Emacs Lisp interpreter.
Copyright (C) 1985, 1986, 1987, 1993, 1994, 1995, 1999, 2000, 2001,
- 2002, 2003, 2004, 2005, 2006 Free Software Foundation, Inc.
+ 2002, 2003, 2004, 2005, 2006, 2007 Free Software Foundation, Inc.
This file is part of GNU Emacs.
diff --git a/src/fileio.c b/src/fileio.c
index e276426487e..c6589e989ec 100644
--- a/src/fileio.c
+++ b/src/fileio.c
@@ -1,7 +1,7 @@
/* File IO for GNU Emacs.
Copyright (C) 1985, 1986, 1987, 1988, 1993, 1994, 1995, 1996,
1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004,
- 2005, 2006 Free Software Foundation, Inc.
+ 2005, 2006, 2007 Free Software Foundation, Inc.
This file is part of GNU Emacs.
diff --git a/src/filelock.c b/src/filelock.c
index 6a3972dad42..261a644ccde 100644
--- a/src/filelock.c
+++ b/src/filelock.c
@@ -1,6 +1,6 @@
/* Lock files for editing.
Copyright (C) 1985, 1986, 1987, 1993, 1994, 1996, 1998, 1999, 2000, 2001,
- 2002, 2003, 2004, 2005, 2006 Free Software Foundation, Inc.
+ 2002, 2003, 2004, 2005, 2006, 2007 Free Software Foundation, Inc.
This file is part of GNU Emacs.
diff --git a/src/filemode.c b/src/filemode.c
index 835a8a3778e..b15f65c1647 100644
--- a/src/filemode.c
+++ b/src/filemode.c
@@ -1,6 +1,6 @@
/* filemode.c -- make a string describing file modes
- Copyright (C) 1985, 1990, 1993, 2002, 2003, 2004,
- 2005, 2006 Free Software Foundation, Inc.
+ Copyright (C) 1985, 1990, 1993, 2001, 2002, 2003, 2004,
+ 2005, 2006, 2007 Free Software Foundation, Inc.
This program is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
diff --git a/src/firstfile.c b/src/firstfile.c
index 06e7022d89a..8093f03efc3 100644
--- a/src/firstfile.c
+++ b/src/firstfile.c
@@ -1,6 +1,6 @@
/* Mark beginning of data space to dump as pure, for GNU Emacs.
- Copyright (C) 1997, 2002, 2003, 2004, 2005,
- 2006 Free Software Foundation, Inc.
+ Copyright (C) 1997, 2001, 2002, 2003, 2004, 2005,
+ 2006, 2007 Free Software Foundation, Inc.
This file is part of GNU Emacs.
diff --git a/src/floatfns.c b/src/floatfns.c
index dd879de7eb8..e0ed9b625cd 100644
--- a/src/floatfns.c
+++ b/src/floatfns.c
@@ -1,6 +1,6 @@
/* Primitive operations on floating point for GNU Emacs Lisp interpreter.
- Copyright (C) 1988, 1993, 1994, 1999, 2002, 2003, 2004,
- 2005, 2006 Free Software Foundation, Inc.
+ Copyright (C) 1988, 1993, 1994, 1999, 2001, 2002, 2003, 2004,
+ 2005, 2006, 2007 Free Software Foundation, Inc.
This file is part of GNU Emacs.
diff --git a/src/fns.c b/src/fns.c
index da2c43fd6a9..86d9407db9a 100644
--- a/src/fns.c
+++ b/src/fns.c
@@ -1,7 +1,7 @@
/* Random utility Lisp functions.
Copyright (C) 1985, 1986, 1987, 1993, 1994, 1995, 1997,
1998, 1999, 2000, 2001, 2002, 2003, 2004,
- 2005, 2006 Free Software Foundation, Inc.
+ 2005, 2006, 2007 Free Software Foundation, Inc.
This file is part of GNU Emacs.
@@ -4041,6 +4041,7 @@ maybe_resize_hash_table (h)
{
int old_size = HASH_TABLE_SIZE (h);
int i, new_size, index_size;
+ EMACS_INT nsize;
if (INTEGERP (h->rehash_size))
new_size = old_size + XFASTINT (h->rehash_size);
@@ -4050,7 +4051,10 @@ maybe_resize_hash_table (h)
index_size = next_almost_prime ((int)
(new_size
/ XFLOATINT (h->rehash_threshold)));
- if (max (index_size, 2 * new_size) > MOST_POSITIVE_FIXNUM)
+ /* Assignment to EMACS_INT stops GCC whining about limited range
+ of data type. */
+ nsize = max (index_size, 2 * new_size);
+ if (nsize > MOST_POSITIVE_FIXNUM)
error ("Hash table too large to resize");
h->key_and_value = larger_vector (h->key_and_value, 2 * new_size, Qnil);
diff --git a/src/fontset.c b/src/fontset.c
index 5a50012fef4..c92e05c3f02 100644
--- a/src/fontset.c
+++ b/src/fontset.c
@@ -1,7 +1,8 @@
/* Fontset handler.
- Copyright (C) 2002, 2003, 2004, 2005, 2006 Free Software Foundation, Inc.
+ Copyright (C) 2001, 2002, 2003, 2004, 2005, 2006, 2007
+ Free Software Foundation, Inc.
Copyright (C) 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004,
- 2005, 2006
+ 2005, 2006, 2007
National Institute of Advanced Industrial Science and Technology (AIST)
Registration Number H14PRO021
Copyright (C) 2003, 2006
diff --git a/src/fontset.h b/src/fontset.h
index b86c26784c7..506b34a4dc7 100644
--- a/src/fontset.h
+++ b/src/fontset.h
@@ -1,8 +1,8 @@
/* Header for fontset handler.
- Copyright (C) 1998, 2002, 2003, 2004, 2005,
- 2006 Free Software Foundation, Inc.
+ Copyright (C) 1998, 2001, 2002, 2003, 2004, 2005,
+ 2006, 2007 Free Software Foundation, Inc.
Copyright (C) 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004,
- 2005, 2006
+ 2005, 2006, 2007
National Institute of Advanced Industrial Science and Technology (AIST)
Registration Number H14PRO021
Copyright (C) 2003, 2006
diff --git a/src/frame.c b/src/frame.c
index 18ed9e02c10..171cdcd49f0 100644
--- a/src/frame.c
+++ b/src/frame.c
@@ -1,6 +1,6 @@
/* Generic frame functions.
- Copyright (C) 1993, 1994, 1995, 1997, 1999, 2000, 2001, 2002, 2003, 2006,
- 2004, 2005, 2006 Free Software Foundation, Inc.
+ Copyright (C) 1993, 1994, 1995, 1997, 1999, 2000, 2001, 2002, 2003,
+ 2004, 2005, 2006, 2007 Free Software Foundation, Inc.
This file is part of GNU Emacs.
diff --git a/src/frame.h b/src/frame.h
index 9c74a2d777c..db60700c5ad 100644
--- a/src/frame.h
+++ b/src/frame.h
@@ -1,6 +1,6 @@
/* Define frame-object for GNU Emacs.
Copyright (C) 1993, 1994, 1999, 2000, 2001, 2002, 2003, 2004,
- 2005, 2006 Free Software Foundation, Inc.
+ 2005, 2006, 2007 Free Software Foundation, Inc.
This file is part of GNU Emacs.
diff --git a/src/fringe.c b/src/fringe.c
index a42c2d70439..1688f68f231 100644
--- a/src/fringe.c
+++ b/src/fringe.c
@@ -1,7 +1,7 @@
/* Fringe handling (split from xdisp.c).
Copyright (C) 1985, 1986, 1987, 1988, 1993, 1994, 1995, 1997,
- 1998, 1999, 2000, 2000, 2001, 2002, 2003, 2004,
- 2005, 2006 Free Software Foundation, Inc.
+ 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005,
+ 2006, 2007 Free Software Foundation, Inc.
This file is part of GNU Emacs.
diff --git a/src/getloadavg.c b/src/getloadavg.c
index 3f616b47116..f40149a8c47 100644
--- a/src/getloadavg.c
+++ b/src/getloadavg.c
@@ -1,6 +1,7 @@
/* Get the system load averages.
Copyright (C) 1985, 1986, 1987, 1988, 1989, 1991, 1992, 1993, 1994, 1995,
- 1997, 2002, 2003, 2004, 2005, 2006 Free Software Foundation, Inc.
+ 1997, 2001, 2002, 2003, 2004, 2005, 2006, 2007
+ Free Software Foundation, Inc.
NOTE: The canonical source of this file is maintained with gnulib.
Bugs can be reported to bug-gnulib@gnu.org.
diff --git a/src/getpagesize.h b/src/getpagesize.h
index f38409da452..c4551677d16 100644
--- a/src/getpagesize.h
+++ b/src/getpagesize.h
@@ -1,6 +1,6 @@
/* Emulate getpagesize on systems that lack it.
Copyright (C) 1986, 1992, 1995, 2001, 2002, 2003, 2004,
- 2005, 2006 Free Software Foundation, Inc.
+ 2005, 2006, 2007 Free Software Foundation, Inc.
This file is part of GNU Emacs.
diff --git a/src/gmalloc.c b/src/gmalloc.c
index 646fbbc4e4c..3f32617fc64 100644
--- a/src/gmalloc.c
+++ b/src/gmalloc.c
@@ -6,7 +6,7 @@
/* Declarations for `malloc' and friends.
Copyright (C) 1990, 1991, 1992, 1993, 1995, 1996, 1999, 2002, 2003, 2004,
- 2005, 2006 Free Software Foundation, Inc.
+ 2005, 2006, 2007 Free Software Foundation, Inc.
Written May 1989 by Mike Haertel.
This library is free software; you can redistribute it and/or
diff --git a/src/gtkutil.c b/src/gtkutil.c
index 3dcdef2b0ae..dc81f016509 100644
--- a/src/gtkutil.c
+++ b/src/gtkutil.c
@@ -1,5 +1,5 @@
/* Functions for creating and updating GTK widgets.
- Copyright (C) 2003, 2004, 2005, 2006 Free Software Foundation, Inc.
+ Copyright (C) 2003, 2004, 2005, 2006, 2007 Free Software Foundation, Inc.
This file is part of GNU Emacs.
@@ -1718,9 +1718,9 @@ menuitem_destroy_callback (w, client_data)
}
/* Callback called when the pointer enters/leaves a menu item.
- W is the menu item.
+ W is the parent of the menu item.
EVENT is either an enter event or leave event.
- CLIENT_DATA points to the xg_menu_item_cb_data associated with the W.
+ CLIENT_DATA is not used.
Returns FALSE to tell GTK to keep processing this event. */
@@ -1730,15 +1730,21 @@ menuitem_highlight_callback (w, event, client_data)
GdkEventCrossing *event;
gpointer client_data;
{
- if (client_data)
- {
- xg_menu_item_cb_data *data = (xg_menu_item_cb_data*) client_data;
- gpointer call_data = event->type == GDK_LEAVE_NOTIFY ? 0 : client_data;
+ GdkEvent ev;
+ GtkWidget *subwidget;
+ xg_menu_item_cb_data *data;
+ ev.crossing = *event;
+ subwidget = gtk_get_event_widget (&ev);
+ data = (xg_menu_item_cb_data *) g_object_get_data (G_OBJECT (subwidget),
+ XG_ITEM_DATA);
+ if (data)
+ {
if (! NILP (data->help) && data->cl_data->highlight_cb)
{
+ gpointer call_data = event->type == GDK_LEAVE_NOTIFY ? 0 : data;
GtkCallback func = (GtkCallback) data->cl_data->highlight_cb;
- (*func) (w, call_data);
+ (*func) (subwidget, call_data);
}
}
@@ -2004,7 +2010,7 @@ xg_create_one_menuitem (item, f, select_cb, highlight_cb, cl_data, group)
xg_list_insert (&xg_menu_item_cb_list, &cb_data->ptrs);
- cb_data->unhighlight_id = cb_data->highlight_id = cb_data->select_id = 0;
+ cb_data->select_id = 0;
cb_data->help = item->help;
cb_data->cl_data = cl_data;
cb_data->call_data = item->call_data;
@@ -2025,22 +2031,6 @@ xg_create_one_menuitem (item, f, select_cb, highlight_cb, cl_data, group)
= g_signal_connect (G_OBJECT (w), "activate", select_cb, cb_data);
}
- if (! NILP (item->help) && highlight_cb)
- {
- /* We use enter/leave notify instead of select/deselect because
- select/deselect doesn't go well with detached menus. */
- cb_data->highlight_id
- = g_signal_connect (G_OBJECT (w),
- "enter-notify-event",
- G_CALLBACK (menuitem_highlight_callback),
- cb_data);
- cb_data->unhighlight_id
- = g_signal_connect (G_OBJECT (w),
- "leave-notify-event",
- G_CALLBACK (menuitem_highlight_callback),
- cb_data);
- }
-
return w;
}
@@ -2123,6 +2113,17 @@ create_menus (data, f, select_cb, deactivate_cb, highlight_cb,
{
wmenu = gtk_menu_new ();
xg_set_screen (wmenu, f);
+ /* Connect this to the menu instead of items so we get enter/leave for
+ disabled items also. TODO: Still does not get enter/leave for
+ disabled items in detached menus. */
+ g_signal_connect (G_OBJECT (wmenu),
+ "enter-notify-event",
+ G_CALLBACK (menuitem_highlight_callback),
+ NULL);
+ g_signal_connect (G_OBJECT (wmenu),
+ "leave-notify-event",
+ G_CALLBACK (menuitem_highlight_callback),
+ NULL);
}
else wmenu = gtk_menu_bar_new ();
@@ -2619,37 +2620,6 @@ xg_update_menu_item (val, w, select_cb, highlight_cb, cl_data)
g_signal_handler_disconnect (w, cb_data->select_id);
cb_data->select_id = 0;
}
-
- if (NILP (cb_data->help))
- {
- /* Shall not have help. Remove if any existed previously. */
- if (cb_data->highlight_id)
- {
- g_signal_handler_disconnect (G_OBJECT (w),
- cb_data->highlight_id);
- cb_data->highlight_id = 0;
- }
- if (cb_data->unhighlight_id)
- {
- g_signal_handler_disconnect (G_OBJECT (w),
- cb_data->unhighlight_id);
- cb_data->unhighlight_id = 0;
- }
- }
- else if (! cb_data->highlight_id && highlight_cb)
- {
- /* Have help now, but didn't previously. Add callback. */
- cb_data->highlight_id
- = g_signal_connect (G_OBJECT (w),
- "enter-notify-event",
- G_CALLBACK (menuitem_highlight_callback),
- cb_data);
- cb_data->unhighlight_id
- = g_signal_connect (G_OBJECT (w),
- "leave-notify-event",
- G_CALLBACK (menuitem_highlight_callback),
- cb_data);
- }
}
}
diff --git a/src/gtkutil.h b/src/gtkutil.h
index 742e3ecb1e5..f87583ea1c2 100644
--- a/src/gtkutil.h
+++ b/src/gtkutil.h
@@ -1,5 +1,5 @@
/* Definitions and headers for GTK widgets.
- Copyright (C) 2003, 2004, 2005, 2006 Free Software Foundation, Inc.
+ Copyright (C) 2003, 2004, 2005, 2006, 2007 Free Software Foundation, Inc.
This file is part of GNU Emacs.
@@ -79,8 +79,6 @@ typedef struct xg_menu_item_cb_data_
{
xg_list_node ptrs;
- gulong highlight_id;
- gulong unhighlight_id;
gulong select_id;
Lisp_Object help;
gpointer call_data;
diff --git a/src/image.c b/src/image.c
index f4616b626a6..c58e0d4695e 100644
--- a/src/image.c
+++ b/src/image.c
@@ -1,6 +1,6 @@
/* Functions for image support on window system.
Copyright (C) 1989, 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000,
- 2001, 2002, 2003, 2004, 2005, 2006 Free Software Foundation, Inc.
+ 2001, 2002, 2003, 2004, 2005, 2006, 2007 Free Software Foundation, Inc.
This file is part of GNU Emacs.
@@ -122,8 +122,6 @@ typedef struct mac_bitmap_record Bitmap_Record;
#define FRAME_X_VISUAL(f) FRAME_X_DISPLAY_INFO (f)->visual
#define x_defined_color mac_defined_color
#define DefaultDepthOfScreen(screen) (one_mac_display_info.n_planes)
-#define XDrawLine(display, w, gc, x1, y1, x2, y2) \
- mac_draw_line_to_pixmap(display, w, gc, x1, y1, x2, y2)
#endif /* MAC_OS */
@@ -5251,14 +5249,12 @@ x_disable_image (f, img)
GC gc;
#ifdef MAC_OS
-#define XCreateGC_pixmap(dpy, pixmap) XCreateGC (dpy, NULL, 0, NULL)
#define MaskForeground(f) PIX_MASK_DRAW
#else
-#define XCreateGC_pixmap(dpy, pixmap) XCreateGC (dpy, pixmap, 0, NULL)
#define MaskForeground(f) WHITE_PIX_DEFAULT (f)
#endif
- gc = XCreateGC_pixmap (dpy, img->pixmap);
+ gc = XCreateGC (dpy, img->pixmap, 0, NULL);
XSetForeground (dpy, gc, BLACK_PIX_DEFAULT (f));
XDrawLine (dpy, img->pixmap, gc, 0, 0,
img->width - 1, img->height - 1);
@@ -5268,7 +5264,7 @@ x_disable_image (f, img)
if (img->mask)
{
- gc = XCreateGC_pixmap (dpy, img->mask);
+ gc = XCreateGC (dpy, img->mask, 0, NULL);
XSetForeground (dpy, gc, MaskForeground (f));
XDrawLine (dpy, img->mask, gc, 0, 0,
img->width - 1, img->height - 1);
diff --git a/src/indent.c b/src/indent.c
index 368609bad64..429c2722a1d 100644
--- a/src/indent.c
+++ b/src/indent.c
@@ -1,6 +1,6 @@
/* Indentation functions.
Copyright (C) 1985, 1986, 1987, 1988, 1993, 1994, 1995, 1998, 2000, 2001,
- 2002, 2003, 2004, 2005, 2006 Free Software Foundation, Inc.
+ 2002, 2003, 2004, 2005, 2006, 2007 Free Software Foundation, Inc.
This file is part of GNU Emacs.
@@ -2074,7 +2074,7 @@ whether or not it is currently displayed in some window. */)
{
int it_start;
int oselective;
- int it_overshoot_expected_p;
+ int it_overshoot_expected;
SET_TEXT_POS (pt, PT, PT_BYTE);
start_display (&it, w, pt);
@@ -2100,12 +2100,16 @@ whether or not it is currently displayed in some window. */)
while (s < e && *s != '\n')
++s;
- it_overshoot_expected_p = (s == e);
+ /* If there is no newline in the string, we need to check
+ whether there is a newline immediately after the string
+ in move_it_to below. This may happen if there is an
+ overlay with an after-string just before the newline. */
+ it_overshoot_expected = (s == e) ? -1 : 0;
}
else
- it_overshoot_expected_p = (it.method == GET_FROM_IMAGE
- || it.method == GET_FROM_STRETCH
- || it.method == GET_FROM_COMPOSITION);
+ it_overshoot_expected = (it.method == GET_FROM_IMAGE
+ || it.method == GET_FROM_STRETCH
+ || it.method == GET_FROM_COMPOSITION);
reseat_at_previous_visible_line_start (&it);
it.current_x = it.hpos = 0;
@@ -2119,7 +2123,10 @@ whether or not it is currently displayed in some window. */)
truncate-lines is on and PT is beyond right margin.
Don't go back if the overshoot is expected (see above). */
if (IT_CHARPOS (it) > it_start && XINT (lines) > 0
- && !it_overshoot_expected_p)
+ && (!it_overshoot_expected
+ || (it_overshoot_expected < 0
+ && it.method == GET_FROM_BUFFER
+ && it.c == '\n')))
move_it_by_lines (&it, -1, 0);
it.vpos = 0;
diff --git a/src/indent.h b/src/indent.h
index ddfd16a16de..b9c39869e60 100644
--- a/src/indent.h
+++ b/src/indent.h
@@ -1,6 +1,6 @@
/* Definitions for interface to indent.c
- Copyright (C) 1985, 1986, 2002, 2003, 2004,
- 2005, 2006 Free Software Foundation, Inc.
+ Copyright (C) 1985, 1986, 2001, 2002, 2003, 2004,
+ 2005, 2006, 2007 Free Software Foundation, Inc.
This file is part of GNU Emacs.
diff --git a/src/insdel.c b/src/insdel.c
index 5e0eec936d4..6f8aac3d6da 100644
--- a/src/insdel.c
+++ b/src/insdel.c
@@ -1,6 +1,6 @@
/* Buffer insertion/deletion and gap motion for GNU Emacs.
Copyright (C) 1985, 1986, 1993, 1994, 1995, 1997, 1998, 1999, 2000, 2001,
- 2002, 2003, 2004, 2005, 2006 Free Software Foundation, Inc.
+ 2002, 2003, 2004, 2005, 2006, 2007 Free Software Foundation, Inc.
This file is part of GNU Emacs.
diff --git a/src/intervals.c b/src/intervals.c
index fecd1d181dc..ef97aa4973a 100644
--- a/src/intervals.c
+++ b/src/intervals.c
@@ -1,6 +1,6 @@
/* Code for doing intervals.
- Copyright (C) 1993, 1994, 1995, 1997, 1998, 2002, 2003, 2004,
- 2005, 2006 Free Software Foundation, Inc.
+ Copyright (C) 1993, 1994, 1995, 1997, 1998, 2001, 2002, 2003, 2004,
+ 2005, 2006, 2007 Free Software Foundation, Inc.
This file is part of GNU Emacs.
diff --git a/src/intervals.h b/src/intervals.h
index 5aec706afea..d42462bc7ea 100644
--- a/src/intervals.h
+++ b/src/intervals.h
@@ -1,6 +1,6 @@
/* Definitions and global variables for intervals.
- Copyright (C) 1993, 1994, 2000, 2002, 2003, 2004,
- 2005, 2006 Free Software Foundation, Inc.
+ Copyright (C) 1993, 1994, 2000, 2001, 2002, 2003, 2004,
+ 2005, 2006, 2007 Free Software Foundation, Inc.
This file is part of GNU Emacs.
diff --git a/src/keyboard.c b/src/keyboard.c
index 75b78d63d19..572b3096c06 100644
--- a/src/keyboard.c
+++ b/src/keyboard.c
@@ -1,7 +1,7 @@
/* Keyboard and mouse input; editor command loop.
Copyright (C) 1985, 1986, 1987, 1988, 1989, 1993, 1994, 1995,
1996, 1997, 1999, 2000, 2001, 2002, 2003, 2004,
- 2005, 2006 Free Software Foundation, Inc.
+ 2005, 2006, 2007 Free Software Foundation, Inc.
This file is part of GNU Emacs.
@@ -9286,7 +9286,8 @@ read_key_sequence (keybuf, bufsize, prompt, dont_downcase_last,
{
pos = POSN_BUFFER_POSN (start);
if (INTEGERP (pos)
- && XINT (pos) >= BEG && XINT (pos) <= Z)
+ && XINT (pos) >= BEGV
+ && XINT (pos) <= ZV)
{
map_here = get_local_map (XINT (pos),
current_buffer, Qlocal_map);
@@ -11019,6 +11020,8 @@ init_keyboard ()
do_mouse_tracking = Qnil;
#endif
input_pending = 0;
+ interrupt_input_blocked = 0;
+ interrupt_input_pending = 0;
/* This means that command_loop_1 won't try to select anything the first
time through. */
diff --git a/src/keyboard.h b/src/keyboard.h
index 984ecccc0a4..6fe76363064 100644
--- a/src/keyboard.h
+++ b/src/keyboard.h
@@ -1,6 +1,6 @@
/* Declarations useful when processing input.
- Copyright (C) 1985, 1986, 1987, 1993, 2002, 2003, 2004,
- 2005, 2006 Free Software Foundation, Inc.
+ Copyright (C) 1985, 1986, 1987, 1993, 2001, 2002, 2003, 2004,
+ 2005, 2006, 2007 Free Software Foundation, Inc.
This file is part of GNU Emacs.
diff --git a/src/keymap.c b/src/keymap.c
index 3fd81effb04..671801fa1ba 100644
--- a/src/keymap.c
+++ b/src/keymap.c
@@ -1,7 +1,7 @@
/* Manipulation of keymaps
Copyright (C) 1985, 1986, 1987, 1988, 1993, 1994, 1995,
1998, 1999, 2000, 2001, 2002, 2003, 2004,
- 2005, 2006 Free Software Foundation, Inc.
+ 2005, 2006, 2007 Free Software Foundation, Inc.
This file is part of GNU Emacs.
@@ -3452,9 +3452,13 @@ describe_map (map, prefix, elt_describer, partial, shadow,
tem = shadow_lookup (shadow, kludge, Qt);
if (!NILP (tem))
{
+ /* If both bindings are keymaps, this key is a prefix key,
+ so don't say it is shadowed. */
+ if (KEYMAPP (definition) && KEYMAPP (tem))
+ ;
/* Avoid generating duplicate entries if the
- shadowed binding has the same definition. */
- if (mention_shadow && !EQ (tem, definition))
+ shadowed binding has the same definition. */
+ else if (mention_shadow && !EQ (tem, definition))
this_shadowed = 1;
else
continue;
diff --git a/src/keymap.h b/src/keymap.h
index b11f630a1fb..62a97b415ce 100644
--- a/src/keymap.h
+++ b/src/keymap.h
@@ -1,6 +1,6 @@
/* Functions to manipulate keymaps.
Copyright (C) 2001, 2002, 2003, 2004, 2005,
- 2006 Free Software Foundation, Inc.
+ 2006, 2007 Free Software Foundation, Inc.
This file is part of GNU Emacs.
diff --git a/src/lastfile.c b/src/lastfile.c
index 7c5e067dd02..7a7888f4683 100644
--- a/src/lastfile.c
+++ b/src/lastfile.c
@@ -1,6 +1,6 @@
/* Mark end of data space to dump as pure, for GNU Emacs.
- Copyright (C) 1985, 2002, 2003, 2004, 2005,
- 2006 Free Software Foundation, Inc.
+ Copyright (C) 1985, 2001, 2002, 2003, 2004, 2005,
+ 2006, 2007 Free Software Foundation, Inc.
This file is part of GNU Emacs.
diff --git a/src/lisp.h b/src/lisp.h
index 787eface0ee..31c7e50718f 100644
--- a/src/lisp.h
+++ b/src/lisp.h
@@ -1,6 +1,6 @@
/* Fundamental definitions for GNU Emacs Lisp interpreter.
Copyright (C) 1985, 1986, 1987, 1993, 1994, 1995, 1997, 1998, 1999, 2000,
- 2001, 2002, 2003, 2004, 2005, 2006 Free Software Foundation, Inc.
+ 2001, 2002, 2003, 2004, 2005, 2006, 2007 Free Software Foundation, Inc.
This file is part of GNU Emacs.
diff --git a/src/lread.c b/src/lread.c
index d6fab4ffc8c..197dc8c3582 100644
--- a/src/lread.c
+++ b/src/lread.c
@@ -1,7 +1,7 @@
/* Lisp parsing and input streams.
Copyright (C) 1985, 1986, 1987, 1988, 1989, 1993, 1994, 1995,
1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004,
- 2005, 2006 Free Software Foundation, Inc.
+ 2005, 2006, 2007 Free Software Foundation, Inc.
This file is part of GNU Emacs.
diff --git a/src/m/7300.h b/src/m/7300.h
index a8751efa52a..1022e077046 100644
--- a/src/m/7300.h
+++ b/src/m/7300.h
@@ -1,6 +1,6 @@
/* machine description file for AT&T UNIX PC model 7300
- Copyright (C) 1986, 2002, 2003, 2004, 2005,
- 2006 Free Software Foundation, Inc.
+ Copyright (C) 1986, 2001, 2002, 2003, 2004, 2005,
+ 2006, 2007 Free Software Foundation, Inc.
Modified for this machine by mtxinu!rtech!gonzo!daveb
This file is part of GNU Emacs.
diff --git a/src/m/acorn.h b/src/m/acorn.h
index 326fb7760ae..dee60071e12 100644
--- a/src/m/acorn.h
+++ b/src/m/acorn.h
@@ -1,6 +1,6 @@
/* Machine description file for Acorn RISCiX machines.
- Copyright (C) 1994, 2002, 2003, 2004, 2005,
- 2006 Free Software Foundation, Inc.
+ Copyright (C) 1994, 2001, 2002, 2003, 2004, 2005,
+ 2006, 2007 Free Software Foundation, Inc.
This file is part of GNU Emacs.
diff --git a/src/m/alliant-2800.h b/src/m/alliant-2800.h
index d56624a1eac..e81fe48b9e7 100644
--- a/src/m/alliant-2800.h
+++ b/src/m/alliant-2800.h
@@ -1,6 +1,6 @@
/* alliant-2800.h - Alliant FX/2800 machine running Concentrix 2800.
- Copyright (C) 1990, 2002, 2003, 2004, 2005,
- 2006 Free Software Foundation, Inc.
+ Copyright (C) 1990, 2001, 2002, 2003, 2004, 2005,
+ 2006, 2007 Free Software Foundation, Inc.
This file is part of GNU Emacs.
diff --git a/src/m/alliant.h b/src/m/alliant.h
index 49459c0b7f7..5ddab96012f 100644
--- a/src/m/alliant.h
+++ b/src/m/alliant.h
@@ -1,6 +1,6 @@
/* alliant.h Alliant machine running system version 2 or 3.
- Copyright (C) 1985, 1986, 1987, 2002, 2003, 2004,
- 2005, 2006 Free Software Foundation, Inc.
+ Copyright (C) 1985, 1986, 1987, 2001, 2002, 2003, 2004,
+ 2005, 2006, 2007 Free Software Foundation, Inc.
Note that for version 1 of the Alliant system
you should use alliant1.h instead of this file.
Use alliant4.h for version 4.
diff --git a/src/m/alpha.h b/src/m/alpha.h
index 47003400846..cf629c20291 100644
--- a/src/m/alpha.h
+++ b/src/m/alpha.h
@@ -1,6 +1,6 @@
/* machine description file For the alpha chip.
- Copyright (C) 1994, 1997, 1999, 2002, 2003, 2004,
- 2005, 2006 Free Software Foundation, Inc.
+ Copyright (C) 1994, 1997, 1999, 2001, 2002, 2003, 2004,
+ 2005, 2006, 2007 Free Software Foundation, Inc.
This file is part of GNU Emacs.
diff --git a/src/m/altos.h b/src/m/altos.h
index 16e7fb7ce06..1a7c6d4f95a 100644
--- a/src/m/altos.h
+++ b/src/m/altos.h
@@ -1,6 +1,6 @@
/* altos machine description file Altos 3068 Unix System V Release 2
- Copyright (C) 1985, 1986, 2002, 2003, 2004,
- 2005, 2006 Free Software Foundation, Inc.
+ Copyright (C) 1985, 1986, 2001, 2002, 2003, 2004,
+ 2005, 2006, 2007 Free Software Foundation, Inc.
This file is part of GNU Emacs.
diff --git a/src/m/amdahl.h b/src/m/amdahl.h
index e418e3a43bf..c5cae1fc560 100644
--- a/src/m/amdahl.h
+++ b/src/m/amdahl.h
@@ -1,6 +1,6 @@
/* amdahl machine description file
- Copyright (C) 1987, 1999, 2002, 2003, 2004,
- 2005, 2006 Free Software Foundation, Inc.
+ Copyright (C) 1987, 1999, 2001, 2002, 2003, 2004,
+ 2005, 2006, 2007 Free Software Foundation, Inc.
This file is part of GNU Emacs.
diff --git a/src/m/amdx86-64.h b/src/m/amdx86-64.h
index 36e62ef6166..0dcf5524645 100644
--- a/src/m/amdx86-64.h
+++ b/src/m/amdx86-64.h
@@ -1,5 +1,5 @@
/* machine description file for AMD x86-64.
- Copyright (C) 2002, 2003, 2004, 2005, 2006 Free Software Foundation, Inc.
+ Copyright (C) 2002, 2003, 2004, 2005, 2006, 2007 Free Software Foundation, Inc.
This file is part of GNU Emacs.
diff --git a/src/m/apollo.h b/src/m/apollo.h
index d9b3cffdb6d..0e6e53327bc 100644
--- a/src/m/apollo.h
+++ b/src/m/apollo.h
@@ -1,6 +1,6 @@
/* machine description file for Apollo machine.
- Copyright (C) 1985, 1986, 1994, 2002, 2003, 2004,
- 2005, 2006 Free Software Foundation, Inc.
+ Copyright (C) 1985, 1986, 1994, 2001, 2002, 2003, 2004,
+ 2005, 2006, 2007 Free Software Foundation, Inc.
This file is part of GNU Emacs.
diff --git a/src/m/arm.h b/src/m/arm.h
index 0a49f0cbd4b..18675f2805c 100644
--- a/src/m/arm.h
+++ b/src/m/arm.h
@@ -1,6 +1,6 @@
/* Machine description file for ARM-based non-RISCiX machines.
- Copyright (C) 1994, 2002, 2003, 2004, 2005,
- 2006 Free Software Foundation, Inc.
+ Copyright (C) 1994, 2001, 2002, 2003, 2004, 2005,
+ 2006, 2007 Free Software Foundation, Inc.
This file is part of GNU Emacs.
diff --git a/src/m/att3b.h b/src/m/att3b.h
index 049593ebcf4..33411ff005c 100644
--- a/src/m/att3b.h
+++ b/src/m/att3b.h
@@ -1,6 +1,6 @@
/* Machine-dependent configuration for GNU Emacs for AT&T 3b machines.
- Copyright (C) 1986, 2002, 2003, 2004, 2005,
- 2006 Free Software Foundation, Inc.
+ Copyright (C) 1986, 2001, 2002, 2003, 2004, 2005,
+ 2006, 2007 Free Software Foundation, Inc.
Modified by David Robinson (daver@csvax.caltech.edu) 6/6/86
diff --git a/src/m/aviion.h b/src/m/aviion.h
index 50355b25bd6..87b7d963f5a 100644
--- a/src/m/aviion.h
+++ b/src/m/aviion.h
@@ -1,6 +1,6 @@
/* machine description file for Data General AViiON.
- Copyright (C) 1985, 1986, 1991, 2002, 2003, 2004,
- 2005, 2006 Free Software Foundation, Inc.
+ Copyright (C) 1985, 1986, 1991, 2001, 2002, 2003, 2004,
+ 2005, 2006, 2007 Free Software Foundation, Inc.
This file is part of GNU Emacs.
diff --git a/src/m/celerity.h b/src/m/celerity.h
index 10d38e14c6c..0eba349b7db 100644
--- a/src/m/celerity.h
+++ b/src/m/celerity.h
@@ -1,6 +1,6 @@
/* machine description file for Celerity.
- Copyright (C) 1985, 1986, 2002, 2003, 2004,
- 2005, 2006 Free Software Foundation, Inc.
+ Copyright (C) 1985, 1986, 2001, 2002, 2003, 2004,
+ 2005, 2006, 2007 Free Software Foundation, Inc.
This file is part of GNU Emacs.
diff --git a/src/m/clipper.h b/src/m/clipper.h
index 0dfa13382b3..6851761d53e 100644
--- a/src/m/clipper.h
+++ b/src/m/clipper.h
@@ -1,6 +1,6 @@
/* machine description file for clipper
- Copyright (C) 1985, 1986, 2002, 2003, 2004,
- 2005, 2006 Free Software Foundation, Inc.
+ Copyright (C) 1985, 1986, 2001, 2002, 2003, 2004,
+ 2005, 2006, 2007 Free Software Foundation, Inc.
This file is part of GNU Emacs.
diff --git a/src/m/cnvrgnt.h b/src/m/cnvrgnt.h
index f8df583657a..09e3365bee9 100644
--- a/src/m/cnvrgnt.h
+++ b/src/m/cnvrgnt.h
@@ -1,6 +1,6 @@
/* machine description file for convergent S series.
- Copyright (C) 1989, 2002, 2003, 2004, 2005,
- 2006 Free Software Foundation, Inc.
+ Copyright (C) 1989, 2001, 2002, 2003, 2004, 2005,
+ 2006, 2007 Free Software Foundation, Inc.
This file is part of GNU Emacs.
diff --git a/src/m/convex.h b/src/m/convex.h
index fa87d89e3d3..2904b5942f4 100644
--- a/src/m/convex.h
+++ b/src/m/convex.h
@@ -1,6 +1,6 @@
/* machine description file for Convex (all models).
- Copyright (C) 1987, 1994, 2002, 2003, 2004,
- 2005, 2006 Free Software Foundation, Inc.
+ Copyright (C) 1987, 1994, 2001, 2002, 2003, 2004,
+ 2005, 2006, 2007 Free Software Foundation, Inc.
This file is part of GNU Emacs.
diff --git a/src/m/cydra5.h b/src/m/cydra5.h
index a64f4761c25..75aca4b0e64 100644
--- a/src/m/cydra5.h
+++ b/src/m/cydra5.h
@@ -1,6 +1,6 @@
/* machine description file for Cydrome's CYDRA 5 mini super computer
- Copyright (C) 1988, 1999, 2002, 2003, 2004,
- 2005, 2006 Free Software Foundation, Inc.
+ Copyright (C) 1988, 1999, 2001, 2002, 2003, 2004,
+ 2005, 2006, 2007 Free Software Foundation, Inc.
This file is part of GNU Emacs.
diff --git a/src/m/delta88k.h b/src/m/delta88k.h
index 86e416e887d..7017e38284e 100644
--- a/src/m/delta88k.h
+++ b/src/m/delta88k.h
@@ -1,6 +1,6 @@
/* Machine description file for Motorola System V/88 machines
- Copyright (C) 1985, 2002, 2003, 2004,
- 2005, 2006 Free Software Foundation, Inc.
+ Copyright (C) 1985, 2001, 2002, 2003, 2004,
+ 2005, 2006, 2007 Free Software Foundation, Inc.
This file is part of GNU Emacs.
diff --git a/src/m/dpx2.h b/src/m/dpx2.h
index 2a90ff46284..de0b93b21ac 100644
--- a/src/m/dpx2.h
+++ b/src/m/dpx2.h
@@ -1,6 +1,6 @@
/* machine description for Bull DPX/2 range
- Copyright (C) 1985, 1986, 1999, 2002, 2003, 2004,
- 2005, 2006 Free Software Foundation, Inc.
+ Copyright (C) 1985, 1986, 1999, 2001, 2002, 2003, 2004,
+ 2005, 2006, 2007 Free Software Foundation, Inc.
This file is part of GNU Emacs.
diff --git a/src/m/dual.h b/src/m/dual.h
index d02ac5bc38e..63829b75d2e 100644
--- a/src/m/dual.h
+++ b/src/m/dual.h
@@ -1,6 +1,6 @@
/* machine description file for Dual machines using unisoft port.
- Copyright (C) 1985, 2002, 2003, 2004,
- 2005, 2006 Free Software Foundation, Inc.
+ Copyright (C) 1985, 2001, 2002, 2003, 2004,
+ 2005, 2006, 2007 Free Software Foundation, Inc.
This file is part of GNU Emacs.
diff --git a/src/m/elxsi.h b/src/m/elxsi.h
index 0cb0c5513bf..c264d57338b 100644
--- a/src/m/elxsi.h
+++ b/src/m/elxsi.h
@@ -1,6 +1,6 @@
/* machine description file for Elxsi machine (running enix).
- Copyright (C) 1986, 1992, 2002, 2003, 2004,
- 2005, 2006 Free Software Foundation, Inc.
+ Copyright (C) 1986, 1992, 2001, 2002, 2003, 2004,
+ 2005, 2006, 2007 Free Software Foundation, Inc.
Adapted by John Salmon
This file is part of GNU Emacs.
diff --git a/src/m/ews4800.h b/src/m/ews4800.h
index 9db133ba682..528ce95d685 100644
--- a/src/m/ews4800.h
+++ b/src/m/ews4800.h
@@ -1,6 +1,6 @@
/* m- file for NEC EWS4800 RISC series.
Copyright (C) 1998, 2000, 2001, 2002, 2003, 2004,
- 2005, 2006 Free Software Foundation, Inc.
+ 2005, 2006, 2007 Free Software Foundation, Inc.
This file is part of GNU Emacs.
diff --git a/src/m/gould-np1.h b/src/m/gould-np1.h
index 272a06cf305..a750c9f8f39 100644
--- a/src/m/gould-np1.h
+++ b/src/m/gould-np1.h
@@ -1,6 +1,6 @@
/* machine description file for Gould NP1 with UTX/32 3.0 (first release for NP1)
- Copyright (C) 1986, 2002, 2003, 2004, 2005,
- 2006 Free Software Foundation, Inc.
+ Copyright (C) 1986, 2001, 2002, 2003, 2004, 2005,
+ 2006, 2007 Free Software Foundation, Inc.
This file is part of GNU Emacs.
diff --git a/src/m/gould.h b/src/m/gould.h
index 3b5f1494e78..0b422f18fe2 100644
--- a/src/m/gould.h
+++ b/src/m/gould.h
@@ -6,7 +6,7 @@
* official releases of 2.1
Copyright (C) 1986, 2002, 2003, 2004, 2005,
- 2006 Free Software Foundation, Inc.
+ 2006, 2007 Free Software Foundation, Inc.
This file is part of GNU Emacs.
diff --git a/src/m/hp800.h b/src/m/hp800.h
index 1630a0bc883..f48f4c8152e 100644
--- a/src/m/hp800.h
+++ b/src/m/hp800.h
@@ -1,6 +1,6 @@
/* machine description file for hp9000 series 800 machines.
- Copyright (C) 1987, 2002, 2003, 2004, 2005,
- 2006 Free Software Foundation, Inc.
+ Copyright (C) 1987, 2001, 2002, 2003, 2004, 2005,
+ 2006, 2007 Free Software Foundation, Inc.
This file is part of GNU Emacs.
diff --git a/src/m/hp9000s300.h b/src/m/hp9000s300.h
index 9760b9bd2ed..c02a68d31cc 100644
--- a/src/m/hp9000s300.h
+++ b/src/m/hp9000s300.h
@@ -1,6 +1,6 @@
/* machine description file for hp9000 series 200 or 300 on either HPUX or BSD.
- Copyright (C) 1985, 2002, 2003, 2004, 2005,
- 2006 Free Software Foundation, Inc.
+ Copyright (C) 1985, 2001, 2002, 2003, 2004, 2005,
+ 2006, 2007 Free Software Foundation, Inc.
This file is part of GNU Emacs.
diff --git a/src/m/i860.h b/src/m/i860.h
index d74a01a889c..6af68cc2ae7 100644
--- a/src/m/i860.h
+++ b/src/m/i860.h
@@ -1,6 +1,6 @@
/* machine description file for i860.
- Copyright (C) 1985, 1986, 2002, 2003, 2004,
- 2005, 2006 Free Software Foundation, Inc.
+ Copyright (C) 1985, 1986, 2001, 2002, 2003, 2004,
+ 2005, 2006, 2007 Free Software Foundation, Inc.
This file is part of GNU Emacs.
diff --git a/src/m/ia64.h b/src/m/ia64.h
index 560cd30f599..7e88aeaedc8 100644
--- a/src/m/ia64.h
+++ b/src/m/ia64.h
@@ -1,6 +1,6 @@
/* machine description file for the IA-64 architecture.
- Copyright (C) 2000, 2002, 2003, 2004, 2005,
- 2006 Free Software Foundation, Inc.
+ Copyright (C) 2000, 2001, 2002, 2003, 2004, 2005,
+ 2006, 2007 Free Software Foundation, Inc.
Contributed by David Mosberger <davidm@hpl.hp.com>
This file is part of GNU Emacs.
diff --git a/src/m/ibm370aix.h b/src/m/ibm370aix.h
index 1a9ed6efe11..09460092b3e 100644
--- a/src/m/ibm370aix.h
+++ b/src/m/ibm370aix.h
@@ -1,6 +1,6 @@
/* m/ file for IBM 370 running AIX.
Copyright (C) 1993, 1994, 2001, 2002, 2003, 2004,
- 2005, 2006 Free Software Foundation, Inc.
+ 2005, 2006, 2007 Free Software Foundation, Inc.
This file is part of GNU Emacs.
diff --git a/src/m/ibmps2-aix.h b/src/m/ibmps2-aix.h
index ea895cd4fd8..c8449baef41 100644
--- a/src/m/ibmps2-aix.h
+++ b/src/m/ibmps2-aix.h
@@ -1,6 +1,6 @@
/* machine description file for ibm ps/2 aix386.
- Copyright (C) 1989, 2002, 2003, 2004, 2005,
- 2006 Free Software Foundation, Inc.
+ Copyright (C) 1989, 2001, 2002, 2003, 2004, 2005,
+ 2006, 2007 Free Software Foundation, Inc.
This file is part of GNU Emacs.
diff --git a/src/m/ibmrs6000.h b/src/m/ibmrs6000.h
index 10b43bf8246..6729282953e 100644
--- a/src/m/ibmrs6000.h
+++ b/src/m/ibmrs6000.h
@@ -1,6 +1,6 @@
/* R2 AIX machine/system dependent defines
- Copyright (C) 1988, 2002, 2003, 2004, 2005,
- 2006 Free Software Foundation, Inc.
+ Copyright (C) 1988, 2001, 2002, 2003, 2004, 2005,
+ 2006, 2007 Free Software Foundation, Inc.
This file is part of GNU Emacs.
diff --git a/src/m/ibmrt-aix.h b/src/m/ibmrt-aix.h
index 43e11b36428..ccee40a46a9 100644
--- a/src/m/ibmrt-aix.h
+++ b/src/m/ibmrt-aix.h
@@ -1,6 +1,6 @@
/* RTPC AIX machine/system dependent defines
- Copyright (C) 1988, 1999, 2002, 2003, 2004,
- 2005, 2006 Free Software Foundation, Inc.
+ Copyright (C) 1988, 1999, 2001, 2002, 2003, 2004,
+ 2005, 2006, 2007 Free Software Foundation, Inc.
This file is part of GNU Emacs.
diff --git a/src/m/ibmrt.h b/src/m/ibmrt.h
index e78d182940c..2cf372a278d 100644
--- a/src/m/ibmrt.h
+++ b/src/m/ibmrt.h
@@ -1,6 +1,6 @@
/* RTPC machine dependent defines
- Copyright (C) 1986, 2002, 2003, 2004, 2005,
- 2006 Free Software Foundation, Inc.
+ Copyright (C) 1986, 2001, 2002, 2003, 2004, 2005,
+ 2006, 2007 Free Software Foundation, Inc.
This file is part of GNU Emacs.
diff --git a/src/m/ibms390.h b/src/m/ibms390.h
index d60b33fdd04..e038e2e1b52 100644
--- a/src/m/ibms390.h
+++ b/src/m/ibms390.h
@@ -1,6 +1,6 @@
/* machine description file template.
Copyright (C) 1985, 1986, 2001, 2002, 2003, 2004,
- 2005, 2006 Free Software Foundation, Inc.
+ 2005, 2006, 2007 Free Software Foundation, Inc.
This file is part of GNU Emacs.
diff --git a/src/m/ibms390x.h b/src/m/ibms390x.h
index 716dd44c727..f8b21bc3df4 100644
--- a/src/m/ibms390x.h
+++ b/src/m/ibms390x.h
@@ -1,5 +1,5 @@
/* machine description file for IBM S390 in 64-bit mode
- Copyright (C) 2002, 2003, 2004, 2005, 2006 Free Software Foundation, Inc.
+ Copyright (C) 2002, 2003, 2004, 2005, 2006, 2007 Free Software Foundation, Inc.
This file is part of GNU Emacs.
diff --git a/src/m/intel386.h b/src/m/intel386.h
index 0d2aacf8d19..44ba3245b2e 100644
--- a/src/m/intel386.h
+++ b/src/m/intel386.h
@@ -1,6 +1,6 @@
/* Machine description file for intel 386.
- Copyright (C) 1987, 2002, 2003, 2004, 2005,
- 2006 Free Software Foundation, Inc.
+ Copyright (C) 1987, 2001, 2002, 2003, 2004, 2005,
+ 2006, 2007 Free Software Foundation, Inc.
This file is part of GNU Emacs.
diff --git a/src/m/iris4d.h b/src/m/iris4d.h
index bc8d1242710..4304871ca23 100644
--- a/src/m/iris4d.h
+++ b/src/m/iris4d.h
@@ -1,6 +1,6 @@
/* machine description file for Iris-4D machines. Use with s/irix*.h.
- Copyright (C) 1987, 2002, 2003, 2004, 2005,
- 2006 Free Software Foundation, Inc.
+ Copyright (C) 1987, 2001, 2002, 2003, 2004, 2005,
+ 2006, 2007 Free Software Foundation, Inc.
This file is part of GNU Emacs.
diff --git a/src/m/irist.h b/src/m/irist.h
index a366b521a9a..4ae3681bd92 100644
--- a/src/m/irist.h
+++ b/src/m/irist.h
@@ -1,7 +1,7 @@
/* machine description file for Silicon Graphics Iris 2500 Turbos;
also possibly for non-turbo Irises with system release 2.5.
- Copyright (C) 1985, 1986, 2002, 2003, 2004,
- 2005, 2006 Free Software Foundation, Inc.
+ Copyright (C) 1985, 1986, 2001, 2002, 2003, 2004,
+ 2005, 2006, 2007 Free Software Foundation, Inc.
This file is part of GNU Emacs.
diff --git a/src/m/isi-ov.h b/src/m/isi-ov.h
index 5b6c3cd0214..ed96605b5a1 100644
--- a/src/m/isi-ov.h
+++ b/src/m/isi-ov.h
@@ -1,6 +1,6 @@
/* machine description file for ISI 68000's
- Copyright (C) 1985, 1986, 2002, 2003, 2004,
- 2005, 2006 Free Software Foundation, Inc.
+ Copyright (C) 1985, 1986, 2001, 2002, 2003, 2004,
+ 2005, 2006, 2007 Free Software Foundation, Inc.
This file is part of GNU Emacs.
diff --git a/src/m/m68k.h b/src/m/m68k.h
index 31307ffa499..1071847eda9 100644
--- a/src/m/m68k.h
+++ b/src/m/m68k.h
@@ -1,6 +1,6 @@
/* Machine description file for generic Motorola 68k.
- Copyright (C) 1985, 1995, 2002, 2003, 2004,
- 2005, 2006 Free Software Foundation, Inc.
+ Copyright (C) 1985, 1995, 2001, 2002, 2003, 2004,
+ 2005, 2006, 2007 Free Software Foundation, Inc.
This file is part of GNU Emacs.
diff --git a/src/m/macppc.h b/src/m/macppc.h
index 25005888c77..eba0a401a18 100644
--- a/src/m/macppc.h
+++ b/src/m/macppc.h
@@ -1,6 +1,6 @@
/* machine description file For the powerpc Macintosh.
Copyright (C) 1994, 2001, 2002, 2003, 2004,
- 2005, 2006 Free Software Foundation, Inc.
+ 2005, 2006, 2007 Free Software Foundation, Inc.
This file is part of GNU Emacs.
diff --git a/src/m/masscomp.h b/src/m/masscomp.h
index df0d9a1aa1a..777ff797727 100644
--- a/src/m/masscomp.h
+++ b/src/m/masscomp.h
@@ -1,6 +1,6 @@
/* machine description file for Masscomp 5000 series running RTU, ucb universe.
- Copyright (C) 1986, 2002, 2003, 2004, 2005,
- 2006 Free Software Foundation, Inc.
+ Copyright (C) 1986, 2001, 2002, 2003, 2004, 2005,
+ 2006, 2007 Free Software Foundation, Inc.
This file is part of GNU Emacs.
diff --git a/src/m/mega68.h b/src/m/mega68.h
index 7db67fa0cca..54340bdb0be 100644
--- a/src/m/mega68.h
+++ b/src/m/mega68.h
@@ -1,6 +1,6 @@
/* machine description file for Megatest 68000's.
- Copyright (C) 1985, 2002, 2003, 2004, 2005,
- 2006 Free Software Foundation, Inc.
+ Copyright (C) 1985, 2001, 2002, 2003, 2004, 2005,
+ 2006, 2007 Free Software Foundation, Inc.
This file is part of GNU Emacs.
diff --git a/src/m/mg1.h b/src/m/mg1.h
index 92e358837c4..b0d6faca500 100644
--- a/src/m/mg1.h
+++ b/src/m/mg1.h
@@ -1,6 +1,6 @@
/* machine description file for Whitechapel Computer Works MG1 (ns16000 based).
- Copyright (C) 1985, 2002, 2003, 2004, 2005,
- 2006 Free Software Foundation, Inc.
+ Copyright (C) 1985, 2001, 2002, 2003, 2004, 2005,
+ 2006, 2007 Free Software Foundation, Inc.
MG-1 version by L.M.McLoughlin
This file is part of GNU Emacs.
diff --git a/src/m/mips-siemens.h b/src/m/mips-siemens.h
index 27274c8b527..376f8805788 100644
--- a/src/m/mips-siemens.h
+++ b/src/m/mips-siemens.h
@@ -1,6 +1,6 @@
/* m- file for Mips machines.
- Copyright (C) 1987, 1992, 1993, 1995, 2002, 2003, 2004,
- 2005, 2006 Free Software Foundation, Inc.
+ Copyright (C) 1987, 1992, 1993, 1995, 2001, 2002, 2003, 2004,
+ 2005, 2006, 2007 Free Software Foundation, Inc.
This file contains some changes for our SVR4 based SINIX-Mips 5.4.
I hope this is helpful to port the emacs to our RM?00 series and
diff --git a/src/m/mips.h b/src/m/mips.h
index 9ae74178143..ee8e63030c7 100644
--- a/src/m/mips.h
+++ b/src/m/mips.h
@@ -1,6 +1,6 @@
/* m- file for Mips machines.
- Copyright (C) 1987, 1992, 1999, 2002, 2003, 2004,
- 2005, 2006 Free Software Foundation, Inc.
+ Copyright (C) 1987, 1992, 1999, 2001, 2002, 2003, 2004,
+ 2005, 2006, 2007 Free Software Foundation, Inc.
This file is part of GNU Emacs.
diff --git a/src/m/news.h b/src/m/news.h
index 5ac2cd6b6dc..13a718a8612 100644
--- a/src/m/news.h
+++ b/src/m/news.h
@@ -1,6 +1,6 @@
/* machine description file for Sony's NEWS workstations, NEWS-OS 3.0.
- Copyright (C) 1985, 1986, 1989, 2002, 2003, 2004,
- 2005, 2006 Free Software Foundation, Inc.
+ Copyright (C) 1985, 1986, 1989, 2001, 2002, 2003, 2004,
+ 2005, 2006, 2007 Free Software Foundation, Inc.
This file is part of GNU Emacs.
diff --git a/src/m/next.h b/src/m/next.h
index b519e41920d..2a0f7243772 100644
--- a/src/m/next.h
+++ b/src/m/next.h
@@ -1,6 +1,6 @@
/* Configuration file for the NeXT machine.
- Copyright (C) 1990, 2002, 2003, 2004, 2005,
- 2006 Free Software Foundation, Inc.
+ Copyright (C) 1990, 2001, 2002, 2003, 2004, 2005,
+ 2006, 2007 Free Software Foundation, Inc.
This file is part of GNU Emacs.
diff --git a/src/m/nh3000.h b/src/m/nh3000.h
index ad2d8dd1340..e5cf1a61b58 100644
--- a/src/m/nh3000.h
+++ b/src/m/nh3000.h
@@ -1,8 +1,8 @@
/* machine description for Harris Night Hawk Series 1200 and Series 3000
MC68030-based systems (FPP on these is custom). These systems are
also known as "ecx" and "gcx".
- Copyright (C) 1994, 2002, 2003, 2004, 2005,
- 2006 Free Software Foundation, Inc.
+ Copyright (C) 1994, 2001, 2002, 2003, 2004, 2005,
+ 2006, 2007 Free Software Foundation, Inc.
This file is part of GNU Emacs.
diff --git a/src/m/nh4000.h b/src/m/nh4000.h
index 1c0bc51c896..ba695700d77 100644
--- a/src/m/nh4000.h
+++ b/src/m/nh4000.h
@@ -1,7 +1,7 @@
/* machine description for Harris NightHawk 88k based machines
(includes nh4000 and nh5000 machines).
- Copyright (C) 1994, 2002, 2003, 2004, 2005,
- 2006 Free Software Foundation, Inc.
+ Copyright (C) 1994, 2001, 2002, 2003, 2004, 2005,
+ 2006, 2007 Free Software Foundation, Inc.
This file is part of GNU Emacs.
diff --git a/src/m/ns16000.h b/src/m/ns16000.h
index 5e9793a44b8..707cb21abb7 100644
--- a/src/m/ns16000.h
+++ b/src/m/ns16000.h
@@ -1,6 +1,6 @@
/* machine description file for ns16000.
- Copyright (C) 1985, 2002, 2003, 2004, 2005,
- 2006 Free Software Foundation, Inc.
+ Copyright (C) 1985, 2001, 2002, 2003, 2004, 2005,
+ 2006, 2007 Free Software Foundation, Inc.
This file is part of GNU Emacs.
diff --git a/src/m/ns32000.h b/src/m/ns32000.h
index 33e48d297bc..fe1fd153b70 100644
--- a/src/m/ns32000.h
+++ b/src/m/ns32000.h
@@ -1,6 +1,6 @@
/* machine description file for National Semiconductor 32000, running Genix.
- Copyright (C) 1985, 1986, 2002, 2003, 2004,
- 2005, 2006 Free Software Foundation, Inc.
+ Copyright (C) 1985, 1986, 2001, 2002, 2003, 2004,
+ 2005, 2006, 2007 Free Software Foundation, Inc.
This file is part of GNU Emacs.
diff --git a/src/m/nu.h b/src/m/nu.h
index ec051150bdf..01fadeba18a 100644
--- a/src/m/nu.h
+++ b/src/m/nu.h
@@ -1,6 +1,6 @@
/* machine description file for TI Nu machines using system V.
- Copyright (C) 1986, 2002, 2003, 2004, 2005,
- 2006 Free Software Foundation, Inc.
+ Copyright (C) 1986, 2001, 2002, 2003, 2004, 2005,
+ 2006, 2007 Free Software Foundation, Inc.
This file is part of GNU Emacs.
diff --git a/src/m/orion.h b/src/m/orion.h
index 3db485dd3f1..472b7b4c8eb 100644
--- a/src/m/orion.h
+++ b/src/m/orion.h
@@ -1,6 +1,6 @@
/* machine description file for HLH Orion.
- Copyright (C) 1985, 2002, 2003, 2004, 2005,
- 2006 Free Software Foundation, Inc.
+ Copyright (C) 1985, 2001, 2002, 2003, 2004, 2005,
+ 2006, 2007 Free Software Foundation, Inc.
This file is part of GNU Emacs.
diff --git a/src/m/orion105.h b/src/m/orion105.h
index 66f87748099..586ddf2ea35 100644
--- a/src/m/orion105.h
+++ b/src/m/orion105.h
@@ -1,6 +1,6 @@
/* machine description file for HLH Orion 1/05 (Clipper).
- Copyright (C) 1985, 2002, 2003, 2004, 2005,
- 2006 Free Software Foundation, Inc.
+ Copyright (C) 1985, 2001, 2002, 2003, 2004, 2005,
+ 2006, 2007 Free Software Foundation, Inc.
Lee McLoughlin <lmjm%doc.imperial.ac.uk@nss.cs.ucl.ac.uk>
This file is part of GNU Emacs.
diff --git a/src/m/pfa50.h b/src/m/pfa50.h
index 0b1511fd8e7..3c13aa77872 100644
--- a/src/m/pfa50.h
+++ b/src/m/pfa50.h
@@ -1,6 +1,6 @@
/* Machine description file for PFU A-series.
- Copyright (C) 1988, 1999, 2002, 2003, 2004,
- 2005, 2006 Free Software Foundation, Inc.
+ Copyright (C) 1988, 1999, 2001, 2002, 2003, 2004,
+ 2005, 2006, 2007 Free Software Foundation, Inc.
This file is part of GNU Emacs.
diff --git a/src/m/plexus.h b/src/m/plexus.h
index 8b3e9be7849..606caeb20f4 100644
--- a/src/m/plexus.h
+++ b/src/m/plexus.h
@@ -1,6 +1,6 @@
/* machine description file for the Plexus running System V.2.
- Copyright (C) 1986, 2002, 2003, 2004, 2005,
- 2006 Free Software Foundation, Inc.
+ Copyright (C) 1986, 2001, 2002, 2003, 2004, 2005,
+ 2006, 2007 Free Software Foundation, Inc.
This file is part of GNU Emacs.
diff --git a/src/m/powermac.h b/src/m/powermac.h
index 232e424da35..419edb21b9f 100644
--- a/src/m/powermac.h
+++ b/src/m/powermac.h
@@ -1,5 +1,5 @@
/* Machine description file for Apple Power Macintosh
- Copyright (C) 2001, 2002, 2003, 2004, 2005, 2006 Free Software Foundation, Inc.
+ Copyright (C) 2001, 2002, 2003, 2004, 2005, 2006, 2007 Free Software Foundation, Inc.
This file is part of GNU Emacs.
diff --git a/src/m/powerpcle.h b/src/m/powerpcle.h
index b4681db06bd..fb70cbfcb4f 100644
--- a/src/m/powerpcle.h
+++ b/src/m/powerpcle.h
@@ -1,6 +1,6 @@
/* machine description file for PowerPC.
- Copyright (C) 1987, 2002, 2003, 2004, 2005,
- 2006 Free Software Foundation, Inc.
+ Copyright (C) 1987, 2001, 2002, 2003, 2004, 2005,
+ 2006, 2007 Free Software Foundation, Inc.
This file is part of GNU Emacs.
diff --git a/src/m/pyramid.h b/src/m/pyramid.h
index 2dbd713f881..9a07ff09f1d 100644
--- a/src/m/pyramid.h
+++ b/src/m/pyramid.h
@@ -1,6 +1,6 @@
/* machine description file for pyramid.
- Copyright (C) 1985, 1986, 2002, 2003, 2004,
- 2005, 2006 Free Software Foundation, Inc.
+ Copyright (C) 1985, 1986, 2001, 2002, 2003, 2004,
+ 2005, 2006, 2007 Free Software Foundation, Inc.
This file is part of GNU Emacs.
diff --git a/src/m/sequent-ptx.h b/src/m/sequent-ptx.h
index dbb0944a330..03a0bff3e12 100644
--- a/src/m/sequent-ptx.h
+++ b/src/m/sequent-ptx.h
@@ -1,6 +1,6 @@
/* machine description file for SEQUENT machines running DYNIX/ptx
- Copyright (C) 1985, 1986, 2002, 2003, 2004,
- 2005, 2006 Free Software Foundation, Inc.
+ Copyright (C) 1985, 1986, 2001, 2002, 2003, 2004,
+ 2005, 2006, 2007 Free Software Foundation, Inc.
This file is part of GNU Emacs.
diff --git a/src/m/sequent.h b/src/m/sequent.h
index e970275901c..d0051642826 100644
--- a/src/m/sequent.h
+++ b/src/m/sequent.h
@@ -1,6 +1,6 @@
/* machine description file for SEQUENT BALANCE machines
- Copyright (C) 1985, 1986, 2002, 2003, 2004,
- 2005, 2006 Free Software Foundation, Inc.
+ Copyright (C) 1985, 1986, 2001, 2002, 2003, 2004,
+ 2005, 2006, 2007 Free Software Foundation, Inc.
This file is part of GNU Emacs.
diff --git a/src/m/sh3el.h b/src/m/sh3el.h
index 0854ecd1b25..9c510979bdc 100644
--- a/src/m/sh3el.h
+++ b/src/m/sh3el.h
@@ -1,5 +1,5 @@
/* machine description file for sh3el
- Copyright (C) 1985, 1986 Free Software Foundation, Inc.
+ Copyright (C) 1985, 1986, 2006, 2007 Free Software Foundation, Inc.
This file is part of GNU Emacs.
diff --git a/src/m/sparc.h b/src/m/sparc.h
index c9ef035653b..3efb4c05553 100644
--- a/src/m/sparc.h
+++ b/src/m/sparc.h
@@ -1,6 +1,6 @@
/* machine description file for Sun 4 SPARC.
- Copyright (C) 1987, 2002, 2003, 2004, 2005,
- 2006 Free Software Foundation, Inc.
+ Copyright (C) 1987, 2001, 2002, 2003, 2004, 2005,
+ 2006, 2007 Free Software Foundation, Inc.
This file is part of GNU Emacs.
diff --git a/src/m/sps7.h b/src/m/sps7.h
index 52edc570f92..db6c9d3a91e 100644
--- a/src/m/sps7.h
+++ b/src/m/sps7.h
@@ -1,6 +1,6 @@
/* machine description file for Bull SPS-7.
- Copyright (C) 1986, 1999, 2002, 2003, 2004,
- 2005, 2006 Free Software Foundation, Inc.
+ Copyright (C) 1986, 1999, 2001, 2002, 2003, 2004,
+ 2005, 2006, 2007 Free Software Foundation, Inc.
This file is part of GNU Emacs.
diff --git a/src/m/sr2k.h b/src/m/sr2k.h
index 14a90c666f4..2342bf8ef20 100644
--- a/src/m/sr2k.h
+++ b/src/m/sr2k.h
@@ -1,6 +1,6 @@
/* machine description file for Hitachi SR2001/SR2201 machines.
- Copyright (C) 1996, 2002, 2003, 2004, 2005,
- 2006 Free Software Foundation, Inc.
+ Copyright (C) 1996, 2001, 2002, 2003, 2004, 2005,
+ 2006, 2007 Free Software Foundation, Inc.
This file is part of GNU Emacs.
diff --git a/src/m/stride.h b/src/m/stride.h
index 6f05b17d96e..8acc84e3cbe 100644
--- a/src/m/stride.h
+++ b/src/m/stride.h
@@ -1,6 +1,6 @@
/* Definitions file for GNU Emacs running on Stride Micro System-V.2.2
- Copyright (C) 1985, 1986, 1999, 2002, 2003, 2004,
- 2005, 2006 Free Software Foundation, Inc.
+ Copyright (C) 1985, 1986, 1999, 2001, 2002, 2003, 2004,
+ 2005, 2006, 2007 Free Software Foundation, Inc.
This file is part of GNU Emacs.
diff --git a/src/m/sun1.h b/src/m/sun1.h
index 5ded70a9e47..526056dd80f 100644
--- a/src/m/sun1.h
+++ b/src/m/sun1.h
@@ -1,6 +1,6 @@
/* machine description file for Sun 68000's
- Copyright (C) 1985, 1986, 2002, 2003, 2004,
- 2005, 2006 Free Software Foundation, Inc.
+ Copyright (C) 1985, 1986, 2001, 2002, 2003, 2004,
+ 2005, 2006, 2007 Free Software Foundation, Inc.
This file is part of GNU Emacs.
diff --git a/src/m/sun2.h b/src/m/sun2.h
index 1afa4a2fa63..cee54da79b7 100644
--- a/src/m/sun2.h
+++ b/src/m/sun2.h
@@ -1,8 +1,8 @@
/* machine description file for Sun 68000's OPERATING SYSTEM version 2.
Note that "sun2.h" refers to the operating system version, not the
CPU model number. See the MACHINES file for details.
- Copyright (C) 1985, 1986, 2002, 2003, 2004,
- 2005, 2006 Free Software Foundation, Inc.
+ Copyright (C) 1985, 1986, 2001, 2002, 2003, 2004,
+ 2005, 2006, 2007 Free Software Foundation, Inc.
This file is part of GNU Emacs.
diff --git a/src/m/sun386.h b/src/m/sun386.h
index 435c1ded6d2..21a07a69423 100644
--- a/src/m/sun386.h
+++ b/src/m/sun386.h
@@ -2,8 +2,8 @@
"sun2.h", but since that file is heavily cpu-specific, it was easier
not to include it.
- Copyright (C) 1988, 2002, 2003, 2004, 2005,
- 2006 Free Software Foundation, Inc.
+ Copyright (C) 1988, 2001, 2002, 2003, 2004, 2005,
+ 2006, 2007 Free Software Foundation, Inc.
This file is part of GNU Emacs.
diff --git a/src/m/symmetry.h b/src/m/symmetry.h
index 91209d0eb67..39dde99f13c 100644
--- a/src/m/symmetry.h
+++ b/src/m/symmetry.h
@@ -1,6 +1,6 @@
/* machine description file for SEQUENT SYMMETRY machines
- Copyright (C) 1985, 1986, 2002, 2003, 2004,
- 2005, 2006 Free Software Foundation, Inc.
+ Copyright (C) 1985, 1986, 2001, 2002, 2003, 2004,
+ 2005, 2006, 2007 Free Software Foundation, Inc.
This file is part of GNU Emacs.
diff --git a/src/m/tad68k.h b/src/m/tad68k.h
index fce223da826..357bbe80982 100644
--- a/src/m/tad68k.h
+++ b/src/m/tad68k.h
@@ -1,6 +1,6 @@
/* Machine-dependent configuration for GNU Emacs for Tadpole 68k machines
- Copyright (C) 1986, 2002, 2003, 2004, 2005,
- 2006 Free Software Foundation, Inc.
+ Copyright (C) 1986, 2001, 2002, 2003, 2004, 2005,
+ 2006, 2007 Free Software Foundation, Inc.
This file is part of GNU Emacs.
diff --git a/src/m/tahoe.h b/src/m/tahoe.h
index 07ec23c7bb6..c28018a149d 100644
--- a/src/m/tahoe.h
+++ b/src/m/tahoe.h
@@ -1,6 +1,6 @@
/* machine description file for tahoe.
- Copyright (C) 1985, 2002, 2003, 2004, 2005,
- 2006 Free Software Foundation, Inc.
+ Copyright (C) 1985, 2001, 2002, 2003, 2004, 2005,
+ 2006, 2007 Free Software Foundation, Inc.
This file is part of GNU Emacs.
diff --git a/src/m/targon31.h b/src/m/targon31.h
index 7100e0e8705..34e3ae40c9e 100644
--- a/src/m/targon31.h
+++ b/src/m/targon31.h
@@ -1,6 +1,6 @@
/* targon31 machine description file
- Copyright (C) 1985, 1986, 2002, 2003, 2004,
- 2005, 2006 Free Software Foundation, Inc.
+ Copyright (C) 1985, 1986, 2001, 2002, 2003, 2004,
+ 2005, 2006, 2007 Free Software Foundation, Inc.
This file is part of GNU Emacs.
diff --git a/src/m/tek4300.h b/src/m/tek4300.h
index 3ff3ca4a6a0..30e40a0e09f 100644
--- a/src/m/tek4300.h
+++ b/src/m/tek4300.h
@@ -1,6 +1,6 @@
/* machine description file for tek4300.
- Copyright (C) 1988, 2002, 2003, 2004, 2005,
- 2006 Free Software Foundation, Inc.
+ Copyright (C) 1988, 2001, 2002, 2003, 2004, 2005,
+ 2006, 2007 Free Software Foundation, Inc.
This file is part of GNU Emacs.
diff --git a/src/m/tekxd88.h b/src/m/tekxd88.h
index 24c10330363..3b858310af3 100644
--- a/src/m/tekxd88.h
+++ b/src/m/tekxd88.h
@@ -1,8 +1,8 @@
/* Configuration file for the Tektronix XD88 running UTekV 3.2e,
contributed by Kaveh Ghazi (ghazi@caip.rutgers.edu) 1/15/93.
You probably need to use gnu make (version 3.63 or higher.)
- Copyright (C) 1993, 2002, 2003, 2004, 2005,
- 2006 Free Software Foundation, Inc.
+ Copyright (C) 1993, 2001, 2002, 2003, 2004, 2005,
+ 2006, 2007 Free Software Foundation, Inc.
This file is part of GNU Emacs.
diff --git a/src/m/template.h b/src/m/template.h
index 2b39964018a..79d2d40ab70 100644
--- a/src/m/template.h
+++ b/src/m/template.h
@@ -1,6 +1,6 @@
/* machine description file template.
- Copyright (C) 1985, 1986, 2002, 2003, 2004,
- 2005, 2006 Free Software Foundation, Inc.
+ Copyright (C) 1985, 1986, 2001, 2002, 2003, 2004,
+ 2005, 2006, 2007 Free Software Foundation, Inc.
This file is part of GNU Emacs.
diff --git a/src/m/tower32.h b/src/m/tower32.h
index 06ed7efe5d7..cdb6884d5fc 100644
--- a/src/m/tower32.h
+++ b/src/m/tower32.h
@@ -1,6 +1,6 @@
/* machine description file for the NCR Tower 32 running System V.2.
- Copyright (C) 1986, 2002, 2003, 2004, 2005,
- 2006 Free Software Foundation, Inc.
+ Copyright (C) 1986, 2001, 2002, 2003, 2004, 2005,
+ 2006, 2007 Free Software Foundation, Inc.
This file is part of GNU Emacs.
diff --git a/src/m/tower32v3.h b/src/m/tower32v3.h
index 8f5c60cd7c8..19e7d3ba7ea 100644
--- a/src/m/tower32v3.h
+++ b/src/m/tower32v3.h
@@ -1,6 +1,6 @@
/* machine description file for the NCR Tower 32 running System V.3.
- Copyright (C) 1986, 2002, 2003, 2004, 2005,
- 2006 Free Software Foundation, Inc.
+ Copyright (C) 1986, 2001, 2002, 2003, 2004, 2005,
+ 2006, 2007 Free Software Foundation, Inc.
This file is part of GNU Emacs.
diff --git a/src/m/ustation.h b/src/m/ustation.h
index 0a70df92233..b662cca208e 100644
--- a/src/m/ustation.h
+++ b/src/m/ustation.h
@@ -1,6 +1,6 @@
/* machine description file for U-station (Nihon Unisys, SS5E; Sumitomo Denkoh, U-Station E30).
- Copyright (C) 1986, 1999, 2002, 2003, 2004,
- 2005, 2006 Free Software Foundation, Inc.
+ Copyright (C) 1986, 1999, 2001, 2002, 2003, 2004,
+ 2005, 2006, 2007 Free Software Foundation, Inc.
This file is part of GNU Emacs.
diff --git a/src/m/vax.h b/src/m/vax.h
index 9332b8f494d..fae30d37f73 100644
--- a/src/m/vax.h
+++ b/src/m/vax.h
@@ -1,6 +1,6 @@
/* machine description file for vax.
- Copyright (C) 1985, 1986, 2002, 2003, 2004,
- 2005, 2006 Free Software Foundation, Inc.
+ Copyright (C) 1985, 1986, 2001, 2002, 2003, 2004,
+ 2005, 2006, 2007 Free Software Foundation, Inc.
This file is part of GNU Emacs.
diff --git a/src/m/wicat.h b/src/m/wicat.h
index 24bb2acd210..6ab0a498104 100644
--- a/src/m/wicat.h
+++ b/src/m/wicat.h
@@ -1,6 +1,6 @@
/* machine description file for WICAT machines.
- Copyright (C) 1986, 2002, 2003, 2004, 2005,
- 2006 Free Software Foundation, Inc.
+ Copyright (C) 1986, 2001, 2002, 2003, 2004, 2005,
+ 2006, 2007 Free Software Foundation, Inc.
This file is part of GNU Emacs.
diff --git a/src/m/windowsnt.h b/src/m/windowsnt.h
index 4351f14144f..223958375ca 100644
--- a/src/m/windowsnt.h
+++ b/src/m/windowsnt.h
@@ -1,7 +1,7 @@
/* Machine description file for Windows NT.
- Copyright (C) 1993, 1994, 2002, 2003, 2004,
- 2005, 2006 Free Software Foundation, Inc.
+ Copyright (C) 1993, 1994, 2001, 2002, 2003, 2004,
+ 2005, 2006, 2007 Free Software Foundation, Inc.
This file is part of GNU Emacs.
diff --git a/src/m/xps100.h b/src/m/xps100.h
index a9ac9bc5e36..89300211eec 100644
--- a/src/m/xps100.h
+++ b/src/m/xps100.h
@@ -1,8 +1,8 @@
/* xps100.h for the Honeywell XPS100 running UNIX System V.2
Mark J. Hewitt (mjh@uk.co.kernel)
- Copyright (C) 1985, 1986, 2002, 2003, 2004,
- 2005, 2006 Free Software Foundation, Inc.
+ Copyright (C) 1985, 1986, 2001, 2002, 2003, 2004,
+ 2005, 2006, 2007 Free Software Foundation, Inc.
This file is part of GNU Emacs.
diff --git a/src/mac.c b/src/mac.c
index 7a08d828725..5084a02b27d 100644
--- a/src/mac.c
+++ b/src/mac.c
@@ -1,6 +1,6 @@
/* Unix emulation routines for GNU Emacs on the Mac OS.
Copyright (C) 2000, 2001, 2002, 2003, 2004,
- 2005, 2006 Free Software Foundation, Inc.
+ 2005, 2006, 2007 Free Software Foundation, Inc.
This file is part of GNU Emacs.
@@ -2261,7 +2261,7 @@ sys_open (const char *path, int oflag)
int res = open (mac_pathname, oflag);
/* if (oflag == O_WRONLY || oflag == O_RDWR) */
if (oflag & O_CREAT)
- fsetfileinfo (mac_pathname, 'EMAx', 'TEXT');
+ fsetfileinfo (mac_pathname, MAC_EMACS_CREATOR_CODE, 'TEXT');
return res;
#else /* not __MRC__ */
return open (mac_pathname, oflag);
@@ -2287,7 +2287,7 @@ sys_creat (const char *path, mode_t mode)
{
#ifdef __MRC__
int result = creat (mac_pathname);
- fsetfileinfo (mac_pathname, 'EMAx', 'TEXT');
+ fsetfileinfo (mac_pathname, MAC_EMACS_CREATOR_CODE, 'TEXT');
return result;
#else /* not __MRC__ */
return creat (mac_pathname, mode);
@@ -2415,7 +2415,7 @@ sys_fopen (const char *name, const char *mode)
{
#ifdef __MRC__
if (mode[0] == 'w' || mode[0] == 'a')
- fsetfileinfo (mac_pathname, 'EMAx', 'TEXT');
+ fsetfileinfo (mac_pathname, MAC_EMACS_CREATOR_CODE, 'TEXT');
#endif /* not __MRC__ */
return fopen (mac_pathname, mode);
}
@@ -4316,7 +4316,7 @@ assumed. Return non-nil if successful. */)
OSType cCode;
CHECK_STRING (filename);
- cCode = mac_get_code_from_arg(code, 'EMAx');
+ cCode = mac_get_code_from_arg(code, MAC_EMACS_CREATOR_CODE);
if (NILP(Ffile_exists_p(filename)) || !NILP(Ffile_directory_p(filename))) {
return Qnil;
diff --git a/src/macfns.c b/src/macfns.c
index 962f837c152..fb7e661f5fa 100644
--- a/src/macfns.c
+++ b/src/macfns.c
@@ -1,6 +1,6 @@
/* Graphical user interface functions for Mac OS.
Copyright (C) 2000, 2001, 2002, 2003, 2004,
- 2005, 2006 Free Software Foundation, Inc.
+ 2005, 2006, 2007 Free Software Foundation, Inc.
This file is part of GNU Emacs.
diff --git a/src/macgui.h b/src/macgui.h
index 01f5317aad6..3c37b86e22a 100644
--- a/src/macgui.h
+++ b/src/macgui.h
@@ -1,6 +1,6 @@
/* Definitions and headers for communication on the Mac OS.
Copyright (C) 2000, 2001, 2002, 2003, 2004,
- 2005, 2006 Free Software Foundation, Inc.
+ 2005, 2006, 2007 Free Software Foundation, Inc.
This file is part of GNU Emacs.
@@ -24,7 +24,7 @@ Boston, MA 02110-1301, USA. */
#ifndef EMACS_MACGUI_H
#define EMACS_MACGUI_H
-typedef int Display; /* fix later */
+typedef struct _XDisplay Display; /* opaque */
typedef Lisp_Object XrmDatabase;
@@ -246,6 +246,14 @@ typedef struct _XGC
/* QuickDraw background color. */
RGBColor back_color;
+#if USE_CG_DRAWING && MAC_OS_X_VERSION_MAX_ALLOWED >= 1030
+ /* Quartz 2D foreground color. */
+ CGColorRef cg_fore_color;
+
+ /* Quartz 2D background color. */
+ CGColorRef cg_back_color;
+#endif
+
#define MAX_CLIP_RECTS 2
/* Number of clipping rectangles. */
int n_clip_rects;
diff --git a/src/macmenu.c b/src/macmenu.c
index 14bfe92cb25..3ea09412650 100644
--- a/src/macmenu.c
+++ b/src/macmenu.c
@@ -1,6 +1,6 @@
/* Menu support for GNU Emacs on Mac OS.
Copyright (C) 2000, 2001, 2002, 2003, 2004,
- 2005, 2006 Free Software Foundation, Inc.
+ 2005, 2006, 2007 Free Software Foundation, Inc.
This file is part of GNU Emacs.
@@ -77,10 +77,11 @@ static const int min_menu_id[] = {0, 1, 234, 235, 236, 256, 16384, 32768};
#define DIALOG_WINDOW_RESOURCE 130
+#if TARGET_API_MAC_CARBON
#define HAVE_DIALOGS 1
+#endif
#undef HAVE_MULTILINGUAL_MENU
-#undef HAVE_DIALOGS /* TODO: Implement native dialogs. */
/******************************************************************/
/* Definitions copied from lwlib.h */
@@ -876,6 +877,32 @@ no quit occurs and `x-popup-menu' returns nil. */)
#ifdef HAVE_MENUS
+/* Regard ESC and C-g as Cancel even without the Cancel button. */
+
+#ifdef MAC_OSX
+static Boolean
+mac_dialog_modal_filter (dialog, event, item_hit)
+ DialogRef dialog;
+ EventRecord *event;
+ DialogItemIndex *item_hit;
+{
+ Boolean result;
+
+ result = StdFilterProc (dialog, event, item_hit);
+ if (result == false
+ && (event->what == keyDown || event->what == autoKey)
+ && ((event->message & charCodeMask) == kEscapeCharCode
+ || mac_quit_char_key_p (event->modifiers,
+ (event->message & keyCodeMask) >> 8)))
+ {
+ *item_hit = kStdCancelItemIndex;
+ return true;
+ }
+
+ return result;
+}
+#endif
+
DEFUN ("x-popup-dialog", Fx_popup_dialog, Sx_popup_dialog, 2, 3, 0,
doc: /* Pop up a dialog box and return user's selection.
POSITION specifies which frame to use.
@@ -961,6 +988,96 @@ for instance using the window manager, then this produces a quit and
but I don't want to make one now. */
CHECK_WINDOW (window);
+#ifdef MAC_OSX
+ /* Special treatment for Fmessage_box, Fyes_or_no_p, and Fy_or_n_p. */
+ if (EQ (position, Qt)
+ && STRINGP (Fcar (contents))
+ && ((!NILP (Fequal (XCDR (contents),
+ Fcons (Fcons (build_string ("OK"), Qt), Qnil)))
+ && EQ (header, Qt))
+ || (!NILP (Fequal (XCDR (contents),
+ Fcons (Fcons (build_string ("Yes"), Qt),
+ Fcons (Fcons (build_string ("No"), Qnil),
+ Qnil))))
+ && NILP (header))))
+ {
+ OSStatus err = noErr;
+ AlertStdCFStringAlertParamRec param;
+ CFStringRef error_string, explanation_string;
+ DialogRef alert;
+ DialogItemIndex item_hit;
+ Lisp_Object tem;
+
+ tem = Fstring_match (concat3 (build_string ("\\("),
+ call0 (intern ("sentence-end")),
+ build_string ("\\)\n")),
+ XCAR (contents), Qnil);
+ BLOCK_INPUT;
+ if (NILP (tem))
+ {
+ error_string = cfstring_create_with_string (XCAR (contents));
+ if (error_string == NULL)
+ err = memFullErr;
+ explanation_string = NULL;
+ }
+ else
+ {
+ tem = Fmatch_end (make_number (1));
+ error_string =
+ cfstring_create_with_string (Fsubstring (XCAR (contents),
+ make_number (0), tem));
+ if (error_string == NULL)
+ err = memFullErr;
+ else
+ {
+ XSETINT (tem, XINT (tem) + 1);
+ explanation_string =
+ cfstring_create_with_string (Fsubstring (XCAR (contents),
+ tem, Qnil));
+ if (explanation_string == NULL)
+ {
+ CFRelease (error_string);
+ err = memFullErr;
+ }
+ }
+ }
+ if (err == noErr)
+ err = GetStandardAlertDefaultParams (&param,
+ kStdCFStringAlertVersionOne);
+ if (err == noErr)
+ {
+ param.movable = true;
+ param.position = kWindowAlertPositionParentWindow;
+ if (NILP (header))
+ {
+ param.defaultText = CFSTR ("Yes");
+ param.otherText = CFSTR ("No");
+#if 0
+ param.cancelText = CFSTR ("Cancel");
+ param.cancelButton = kAlertStdAlertCancelButton;
+#endif
+ }
+ err = CreateStandardAlert (kAlertNoteAlert, error_string,
+ explanation_string, &param, &alert);
+ CFRelease (error_string);
+ if (explanation_string)
+ CFRelease (explanation_string);
+ }
+ if (err == noErr)
+ err = RunStandardAlert (alert, mac_dialog_modal_filter, &item_hit);
+ UNBLOCK_INPUT;
+
+ if (err == noErr)
+ {
+ if (item_hit == kStdCancelItemIndex)
+ Fsignal (Qquit, Qnil);
+ else if (item_hit == kStdOkItemIndex)
+ return Qt;
+ else
+ return Qnil;
+ }
+ }
+#endif
#ifndef HAVE_DIALOGS
/* Display a menu with these alternatives
in the middle of frame F. */
@@ -1450,6 +1567,80 @@ update_submenu_strings (first_wv)
}
+#if TARGET_API_MAC_CARBON
+extern Lisp_Object Vshow_help_function;
+
+static Lisp_Object
+restore_show_help_function (old_show_help_function)
+ Lisp_Object old_show_help_function;
+{
+ Vshow_help_function = old_show_help_function;
+
+ return Qnil;
+}
+
+static pascal OSStatus
+menu_target_item_handler (next_handler, event, data)
+ EventHandlerCallRef next_handler;
+ EventRef event;
+ void *data;
+{
+ OSStatus err, result;
+ MenuRef menu;
+ MenuItemIndex menu_item;
+ Lisp_Object help;
+ GrafPtr port;
+ int specpdl_count = SPECPDL_INDEX ();
+
+ result = CallNextEventHandler (next_handler, event);
+
+ err = GetEventParameter (event, kEventParamDirectObject, typeMenuRef,
+ NULL, sizeof (MenuRef), NULL, &menu);
+ if (err == noErr)
+ err = GetEventParameter (event, kEventParamMenuItemIndex,
+ typeMenuItemIndex, NULL,
+ sizeof (MenuItemIndex), NULL, &menu_item);
+ if (err == noErr)
+ err = GetMenuItemProperty (menu, menu_item,
+ MAC_EMACS_CREATOR_CODE, 'help',
+ sizeof (Lisp_Object), NULL, &help);
+ if (err != noErr)
+ help = Qnil;
+
+ /* Temporarily bind Vshow_help_function to Qnil because we don't
+ want tooltips during menu tracking. */
+ record_unwind_protect (restore_show_help_function, Vshow_help_function);
+ Vshow_help_function = Qnil;
+ GetPort (&port);
+ show_help_echo (help, Qnil, Qnil, Qnil, 1);
+ SetPort (port);
+ unbind_to (specpdl_count, Qnil);
+
+ return err == noErr ? noErr : result;
+}
+#endif
+
+OSStatus
+install_menu_target_item_handler (window)
+ WindowPtr window;
+{
+ OSStatus err = noErr;
+#if TARGET_API_MAC_CARBON
+ static const EventTypeSpec specs[] =
+ {{kEventClassMenu, kEventMenuTargetItem}};
+ static EventHandlerUPP menu_target_item_handlerUPP = NULL;
+
+ if (menu_target_item_handlerUPP == NULL)
+ menu_target_item_handlerUPP =
+ NewEventHandlerUPP (menu_target_item_handler);
+
+ err = InstallWindowEventHandler (window, menu_target_item_handlerUPP,
+ GetEventTypeCount (specs), specs,
+ NULL, NULL);
+#endif
+ return err;
+}
+
/* Event handler function that pops down a menu on C-g. We can only pop
down menus if CancelMenuTracking is present (OSX 10.3 or later). */
@@ -1463,8 +1654,6 @@ menu_quit_handler (nextHandler, theEvent, userData)
OSStatus err;
UInt32 keyCode;
UInt32 keyModifiers;
- extern int mac_quit_char_modifiers;
- extern int mac_quit_char_keycode;
err = GetEventParameter (theEvent, kEventParamKeyCode,
typeUInt32, NULL, sizeof(UInt32), NULL, &keyCode);
@@ -1474,8 +1663,7 @@ menu_quit_handler (nextHandler, theEvent, userData)
typeUInt32, NULL, sizeof(UInt32),
NULL, &keyModifiers);
- if (err == noErr && keyCode == mac_quit_char_keycode
- && keyModifiers == mac_quit_char_modifiers)
+ if (err == noErr && mac_quit_char_key_p (keyModifiers, keyCode))
{
MenuRef menu = userData != 0
? (MenuRef)userData : AcquireRootMenu ();
@@ -2132,8 +2320,390 @@ mac_menu_show (f, x, y, for_click, keymaps, title, error)
#ifdef HAVE_DIALOGS
-/* Construct native Mac OS menubar based on widget_value tree. */
+/* Construct native Mac OS dialog based on widget_value tree. */
+
+#if TARGET_API_MAC_CARBON
+
+static pascal OSStatus
+mac_handle_dialog_event (next_handler, event, data)
+ EventHandlerCallRef next_handler;
+ EventRef event;
+ void *data;
+{
+ OSStatus err;
+ WindowRef window = (WindowRef) data;
+
+ switch (GetEventClass (event))
+ {
+ case kEventClassCommand:
+ {
+ HICommand command;
+
+ err = GetEventParameter (event, kEventParamDirectObject,
+ typeHICommand, NULL, sizeof (HICommand),
+ NULL, &command);
+ if (err == noErr)
+ if ((command.commandID & ~0xffff) == 'Bt\0\0')
+ {
+ SetWRefCon (window, command.commandID);
+ err = QuitAppModalLoopForWindow (window);
+
+ return err == noErr ? noErr : eventNotHandledErr;
+ }
+
+ return CallNextEventHandler (next_handler, event);
+ }
+ break;
+
+ case kEventClassKeyboard:
+ {
+ OSStatus result;
+ char char_code;
+
+ result = CallNextEventHandler (next_handler, event);
+ if (result == noErr)
+ return noErr;
+
+ err = GetEventParameter (event, kEventParamKeyMacCharCodes,
+ typeChar, NULL, sizeof (char),
+ NULL, &char_code);
+ if (err == noErr)
+ switch (char_code)
+ {
+ case kEscapeCharCode:
+ err = QuitAppModalLoopForWindow (window);
+ break;
+
+ default:
+ {
+ UInt32 modifiers, key_code;
+
+ err = GetEventParameter (event, kEventParamKeyModifiers,
+ typeUInt32, NULL, sizeof (UInt32),
+ NULL, &modifiers);
+ if (err == noErr)
+ err = GetEventParameter (event, kEventParamKeyCode,
+ typeUInt32, NULL, sizeof (UInt32),
+ NULL, &key_code);
+ if (err == noErr)
+ if (mac_quit_char_key_p (modifiers, key_code))
+ err = QuitAppModalLoopForWindow (window);
+ else
+ err = eventNotHandledErr;
+ }
+ break;
+ }
+
+ return err == noErr ? noErr : result;
+ }
+ break;
+
+ default:
+ abort ();
+ }
+}
+
+static OSStatus
+install_dialog_event_handler (window)
+ WindowRef window;
+{
+ static const EventTypeSpec specs[] =
+ {{kEventClassCommand, kEventCommandProcess},
+ {kEventClassKeyboard, kEventRawKeyDown}};
+ static EventHandlerUPP handle_dialog_eventUPP = NULL;
+
+ if (handle_dialog_eventUPP == NULL)
+ handle_dialog_eventUPP = NewEventHandlerUPP (mac_handle_dialog_event);
+ return InstallWindowEventHandler (window, handle_dialog_eventUPP,
+ GetEventTypeCount (specs), specs,
+ window, NULL);
+}
+
+#define DIALOG_LEFT_MARGIN (112)
+#define DIALOG_TOP_MARGIN (24)
+#define DIALOG_RIGHT_MARGIN (24)
+#define DIALOG_BOTTOM_MARGIN (20)
+#define DIALOG_MIN_INNER_WIDTH (338)
+#define DIALOG_MAX_INNER_WIDTH (564)
+#define DIALOG_BUTTON_BUTTON_HORIZONTAL_SPACE (12)
+#define DIALOG_BUTTON_BUTTON_VERTICAL_SPACE (12)
+#define DIALOG_BUTTON_MIN_WIDTH (68)
+#define DIALOG_TEXT_MIN_HEIGHT (50)
+#define DIALOG_TEXT_BUTTONS_VERTICAL_SPACE (10)
+#define DIALOG_ICON_WIDTH (64)
+#define DIALOG_ICON_HEIGHT (64)
+#define DIALOG_ICON_LEFT_MARGIN (24)
+#define DIALOG_ICON_TOP_MARGIN (15)
+
+static int
+create_and_show_dialog (f, first_wv)
+ FRAME_PTR f;
+ widget_value *first_wv;
+{
+ OSStatus err;
+ char *dialog_name, *message;
+ int nb_buttons, first_group_count, i, result = 0;
+ widget_value *wv;
+ short buttons_height, text_height, inner_width, inner_height;
+ Rect empty_rect, *rects;
+ WindowRef window = NULL;
+ ControlRef *buttons, default_button = NULL, text;
+
+ dialog_name = first_wv->name;
+ nb_buttons = dialog_name[1] - '0';
+ first_group_count = nb_buttons - (dialog_name[4] - '0');
+
+ wv = first_wv->contents;
+ message = wv->value;
+ wv = wv->next;
+ SetRect (&empty_rect, 0, 0, 0, 0);
+
+ /* Create dialog window. */
+ err = CreateNewWindow (kMovableModalWindowClass,
+ kWindowStandardHandlerAttribute,
+ &empty_rect, &window);
+ if (err == noErr)
+ err = SetThemeWindowBackground (window, kThemeBrushMovableModalBackground,
+ true);
+ if (err == noErr)
+ err = SetWindowTitleWithCFString (window, (dialog_name[0] == 'Q'
+ ? CFSTR ("Question")
+ : CFSTR ("Information")));
+
+ /* Create button controls and measure their optimal bounds. */
+ if (err == noErr)
+ {
+ buttons = alloca (sizeof (ControlRef) * nb_buttons);
+ rects = alloca (sizeof (Rect) * nb_buttons);
+ for (i = 0; i < nb_buttons; i++)
+ {
+ CFStringRef label = cfstring_create_with_utf8_cstring (wv->value);
+
+ if (label == NULL)
+ err = memFullErr;
+ else
+ {
+ err = CreatePushButtonControl (window, &empty_rect,
+ label, &buttons[i]);
+ CFRelease (label);
+ }
+ if (err == noErr)
+ {
+ if (!wv->enabled)
+ {
+#ifdef MAC_OSX
+ err = DisableControl (buttons[i]);
+#else
+ err = DeactivateControl (buttons[i]);
+#endif
+ }
+ else if (default_button == NULL)
+ default_button = buttons[i];
+ }
+ if (err == noErr)
+ {
+ SInt16 unused;
+
+ rects[i] = empty_rect;
+ err = GetBestControlRect (buttons[i], &rects[i], &unused);
+ }
+ if (err == noErr)
+ {
+ OffsetRect (&rects[i], -rects[i].left, -rects[i].top);
+ if (rects[i].right < DIALOG_BUTTON_MIN_WIDTH)
+ rects[i].right = DIALOG_BUTTON_MIN_WIDTH;
+ else if (rects[i].right > DIALOG_MAX_INNER_WIDTH)
+ rects[i].right = DIALOG_MAX_INNER_WIDTH;
+
+ err = SetControlCommandID (buttons[i],
+ 'Bt\0\0' + (int) wv->call_data);
+ }
+ if (err != noErr)
+ break;
+ wv = wv->next;
+ }
+ }
+
+ /* Layout buttons. rects[i] is set relative to the bottom-right
+ corner of the inner box. */
+ if (err == noErr)
+ {
+ short bottom, right, max_height, left_align_shift;
+
+ inner_width = DIALOG_MIN_INNER_WIDTH;
+ bottom = right = max_height = 0;
+ for (i = 0; i < nb_buttons; i++)
+ {
+ if (right - rects[i].right < - inner_width)
+ {
+ if (i != first_group_count
+ && right - rects[i].right >= - DIALOG_MAX_INNER_WIDTH)
+ inner_width = - (right - rects[i].right);
+ else
+ {
+ bottom -= max_height + DIALOG_BUTTON_BUTTON_VERTICAL_SPACE;
+ right = max_height = 0;
+ }
+ }
+ if (max_height < rects[i].bottom)
+ max_height = rects[i].bottom;
+ OffsetRect (&rects[i], right - rects[i].right,
+ bottom - rects[i].bottom);
+ right = rects[i].left - DIALOG_BUTTON_BUTTON_HORIZONTAL_SPACE;
+ if (i == first_group_count - 1)
+ right -= DIALOG_BUTTON_BUTTON_HORIZONTAL_SPACE;
+ }
+ buttons_height = - (bottom - max_height);
+
+ left_align_shift = - (inner_width + rects[nb_buttons - 1].left);
+ for (i = nb_buttons - 1; i >= first_group_count; i--)
+ {
+ if (bottom != rects[i].bottom)
+ {
+ left_align_shift = - (inner_width + rects[i].left);
+ bottom = rects[i].bottom;
+ }
+ OffsetRect (&rects[i], left_align_shift, 0);
+ }
+ }
+
+ /* Create a static text control and measure its bounds. */
+ if (err == noErr)
+ {
+ CFStringRef message_string;
+ Rect bounds;
+
+ message_string = cfstring_create_with_utf8_cstring (message);
+ if (message_string == NULL)
+ err = memFullErr;
+ else
+ {
+ ControlFontStyleRec text_style;
+
+ text_style.flags = 0;
+ SetRect (&bounds, 0, 0, inner_width, 0);
+ err = CreateStaticTextControl (window, &bounds, message_string,
+ &text_style, &text);
+ CFRelease (message_string);
+ }
+ if (err == noErr)
+ {
+ SInt16 unused;
+
+ bounds = empty_rect;
+ err = GetBestControlRect (text, &bounds, &unused);
+ }
+ if (err == noErr)
+ {
+ text_height = bounds.bottom - bounds.top;
+ if (text_height < DIALOG_TEXT_MIN_HEIGHT)
+ text_height = DIALOG_TEXT_MIN_HEIGHT;
+ }
+ }
+
+ /* Place buttons. */
+ if (err == noErr)
+ {
+ inner_height = (text_height + DIALOG_TEXT_BUTTONS_VERTICAL_SPACE
+ + buttons_height);
+
+ for (i = 0; i < nb_buttons; i++)
+ {
+ OffsetRect (&rects[i], DIALOG_LEFT_MARGIN + inner_width,
+ DIALOG_TOP_MARGIN + inner_height);
+ SetControlBounds (buttons[i], &rects[i]);
+ }
+ }
+
+ /* Place text. */
+ if (err == noErr)
+ {
+ Rect bounds;
+
+ SetRect (&bounds, DIALOG_LEFT_MARGIN, DIALOG_TOP_MARGIN,
+ DIALOG_LEFT_MARGIN + inner_width,
+ DIALOG_TOP_MARGIN + text_height);
+ SetControlBounds (text, &bounds);
+ }
+
+ /* Create the application icon at the upper-left corner. */
+ if (err == noErr)
+ {
+ ControlButtonContentInfo content;
+ ControlRef icon;
+ static const ProcessSerialNumber psn = {0, kCurrentProcess};
+#ifdef MAC_OSX
+ FSRef app_location;
+#else
+ ProcessInfoRec pinfo;
+ FSSpec app_spec;
+#endif
+ SInt16 unused;
+
+ content.contentType = kControlContentIconRef;
+#ifdef MAC_OSX
+ err = GetProcessBundleLocation (&psn, &app_location);
+ if (err == noErr)
+ err = GetIconRefFromFileInfo (&app_location, 0, NULL, 0, NULL,
+ kIconServicesNormalUsageFlag,
+ &content.u.iconRef, &unused);
+#else
+ bzero (&pinfo, sizeof (ProcessInfoRec));
+ pinfo.processInfoLength = sizeof (ProcessInfoRec);
+ pinfo.processAppSpec = &app_spec;
+ err = GetProcessInformation (&psn, &pinfo);
+ if (err == noErr)
+ err = GetIconRefFromFile (&app_spec, &content.u.iconRef, &unused);
+#endif
+ if (err == noErr)
+ {
+ Rect bounds;
+
+ SetRect (&bounds, DIALOG_ICON_LEFT_MARGIN, DIALOG_ICON_TOP_MARGIN,
+ DIALOG_ICON_LEFT_MARGIN + DIALOG_ICON_WIDTH,
+ DIALOG_ICON_TOP_MARGIN + DIALOG_ICON_HEIGHT);
+ err = CreateIconControl (window, &bounds, &content, true, &icon);
+ ReleaseIconRef (content.u.iconRef);
+ }
+ }
+
+ /* Show the dialog window and run event loop. */
+ if (err == noErr)
+ if (default_button)
+ err = SetWindowDefaultButton (window, default_button);
+ if (err == noErr)
+ err = install_dialog_event_handler (window);
+ if (err == noErr)
+ {
+ SizeWindow (window,
+ DIALOG_LEFT_MARGIN + inner_width + DIALOG_RIGHT_MARGIN,
+ DIALOG_TOP_MARGIN + inner_height + DIALOG_BOTTOM_MARGIN,
+ true);
+ err = RepositionWindow (window, FRAME_MAC_WINDOW (f),
+ kWindowAlertPositionOnParentWindow);
+ }
+ if (err == noErr)
+ {
+ SetWRefCon (window, 0);
+ ShowWindow (window);
+ BringToFront (window);
+ err = RunAppModalLoopForWindow (window);
+ }
+ if (err == noErr)
+ {
+ UInt32 command_id = GetWRefCon (window);
+
+ if ((command_id & ~0xffff) == 'Bt\0\0')
+ result = command_id - 'Bt\0\0';
+ }
+
+ if (window)
+ DisposeWindow (window);
+
+ return result;
+}
+#else /* not TARGET_API_MAC_CARBON */
static int
mac_dialog (widget_value *wv)
{
@@ -2238,6 +2808,7 @@ mac_dialog (widget_value *wv)
return i;
}
+#endif /* not TARGET_API_MAC_CARBON */
static char * button_names [] = {
"button1", "button2", "button3", "button4", "button5",
@@ -2370,10 +2941,10 @@ mac_dialog_show (f, keymaps, title, header, error_name)
}
/* Actually create the dialog. */
-#ifdef HAVE_DIALOGS
- menu_item_selection = mac_dialog (first_wv);
+#if TARGET_API_MAC_CARBON
+ menu_item_selection = create_and_show_dialog (f, first_wv);
#else
- menu_item_selection = 0;
+ menu_item_selection = mac_dialog (first_wv);
#endif
/* Free the widget_value objects we used to specify the contents. */
@@ -2485,6 +3056,10 @@ add_menu_item (menu, pos, wv)
EnableMenuItem (menu, pos);
else
DisableMenuItem (menu, pos);
+
+ if (STRINGP (wv->help))
+ SetMenuItemProperty (menu, pos, MAC_EMACS_CREATOR_CODE, 'help',
+ sizeof (Lisp_Object), &wv->help);
#else /* ! TARGET_API_MAC_CARBON */
item_name[sizeof (item_name) - 1] = '\0';
strncpy (item_name, wv->name, sizeof (item_name) - 1);
diff --git a/src/macros.c b/src/macros.c
index fb452e4e318..40fb429d41d 100644
--- a/src/macros.c
+++ b/src/macros.c
@@ -1,6 +1,6 @@
/* Keyboard macros.
Copyright (C) 1985, 1986, 1993, 2000, 2001, 2002, 2003, 2004,
- 2005, 2006 Free Software Foundation, Inc.
+ 2005, 2006, 2007 Free Software Foundation, Inc.
This file is part of GNU Emacs.
diff --git a/src/macros.h b/src/macros.h
index bdd510456b0..2fb01667918 100644
--- a/src/macros.h
+++ b/src/macros.h
@@ -1,6 +1,6 @@
/* Definitions for keyboard macro interpretation in GNU Emacs.
- Copyright (C) 1985, 2002, 2003, 2004, 2005,
- 2006 Free Software Foundation, Inc.
+ Copyright (C) 1985, 2001, 2002, 2003, 2004, 2005,
+ 2006, 2007 Free Software Foundation, Inc.
This file is part of GNU Emacs.
diff --git a/src/macselect.c b/src/macselect.c
index 8d15db24144..8e86c7651e2 100644
--- a/src/macselect.c
+++ b/src/macselect.c
@@ -1,5 +1,5 @@
/* Selection processing for Emacs on Mac OS.
- Copyright (C) 2005, 2006 Free Software Foundation, Inc.
+ Copyright (C) 2005, 2006, 2007 Free Software Foundation, Inc.
This file is part of GNU Emacs.
@@ -1390,7 +1390,7 @@ nil, which means the event is already resumed or expired. */)
ae = *p;
*p = (*p)->next;
if (INTEGERP (error_code)
- && ae->apple_event.descriptorType != typeNull)
+ && ae->reply.descriptorType != typeNull)
{
SInt32 errn = XINT (error_code);
@@ -1562,10 +1562,17 @@ mac_do_receive_drag (window, refcon, drag)
GlobalToLocal (&mouse_pos);
err = GetDragModifiers (drag, NULL, NULL, &modifiers);
}
+ if (err == noErr)
+ {
+ UInt32 key_modifiers = modifiers;
+
+ err = AEPutParamPtr (&apple_event, kEventParamKeyModifiers,
+ typeUInt32, &key_modifiers, sizeof (UInt32));
+ }
if (err == noErr)
{
- mac_store_drag_event (window, mouse_pos, modifiers, &apple_event);
+ mac_store_drag_event (window, mouse_pos, 0, &apple_event);
AEDisposeDesc (&apple_event);
mac_wakeup_from_rne ();
return noErr;
diff --git a/src/macterm.c b/src/macterm.c
index cb0e024b8eb..fa2e5da8560 100644
--- a/src/macterm.c
+++ b/src/macterm.c
@@ -1,6 +1,6 @@
/* Implementation of GUI terminal on the Mac OS.
Copyright (C) 2000, 2001, 2002, 2003, 2004,
- 2005, 2006 Free Software Foundation, Inc.
+ 2005, 2006, 2007 Free Software Foundation, Inc.
This file is part of GNU Emacs.
@@ -272,16 +272,63 @@ static void XSetFont P_ ((Display *, GC, XFontStruct *));
#define GC_BACK_COLOR(gc) (&(gc)->back_color)
#define GC_FONT(gc) ((gc)->xgcv.font)
#define FRAME_NORMAL_GC(f) ((f)->output_data.mac->normal_gc)
-#define CG_SET_FILL_COLOR(context, color) \
+
+#define CG_SET_FILL_COLOR(context, color) \
CGContextSetRGBFillColor (context, \
RED_FROM_ULONG (color) / 255.0f, \
GREEN_FROM_ULONG (color) / 255.0f, \
BLUE_FROM_ULONG (color) / 255.0f, 1.0f)
-#define CG_SET_STROKE_COLOR(context, color) \
+#if USE_CG_DRAWING && MAC_OS_X_VERSION_MAX_ALLOWED >= 1030
+#if MAC_OS_X_VERSION_MIN_REQUIRED == 1020
+#define CG_SET_FILL_COLOR_MAYBE_WITH_CGCOLOR(context, color, cg_color) \
+ do { \
+ if (CGColorGetTypeID != NULL) \
+ CGContextSetFillColorWithColor (context, cg_color); \
+ else \
+ CG_SET_FILL_COLOR (context, color); \
+ } while (0)
+#else
+#define CG_SET_FILL_COLOR_MAYBE_WITH_CGCOLOR(context, color, cg_color) \
+ CGContextSetFillColorWithColor (context, cg_color)
+#endif
+#else
+#define CG_SET_FILL_COLOR_MAYBE_WITH_CGCOLOR(context, color, cg_color) \
+ CG_SET_FILL_COLOR (context, color)
+#endif
+#define CG_SET_FILL_COLOR_WITH_GC_FOREGROUND(context, gc) \
+ CG_SET_FILL_COLOR_MAYBE_WITH_CGCOLOR (context, (gc)->xgcv.foreground, \
+ (gc)->cg_fore_color)
+#define CG_SET_FILL_COLOR_WITH_GC_BACKGROUND(context, gc) \
+ CG_SET_FILL_COLOR_MAYBE_WITH_CGCOLOR (context, (gc)->xgcv.background, \
+ (gc)->cg_back_color)
+
+
+#define CG_SET_STROKE_COLOR(context, color) \
CGContextSetRGBStrokeColor (context, \
RED_FROM_ULONG (color) / 255.0f, \
GREEN_FROM_ULONG (color) / 255.0f, \
BLUE_FROM_ULONG (color) / 255.0f, 1.0f)
+#if USE_CG_DRAWING && MAC_OS_X_VERSION_MAX_ALLOWED >= 1030
+#if MAC_OS_X_VERSION_MIN_REQUIRED == 1020
+#define CG_SET_STROKE_COLOR_MAYBE_WITH_CGCOLOR(context, color, cg_color) \
+ do { \
+ if (CGColorGetTypeID != NULL) \
+ CGContextSetStrokeColorWithColor (context, cg_color); \
+ else \
+ CG_SET_STROKE_COLOR (context, color); \
+ } while (0)
+#else
+#define CG_SET_STROKE_COLOR_MAYBE_WITH_CGCOLOR(context, color, cg_color) \
+ CGContextSetStrokeColorWithColor (context, cg_color)
+#endif
+#else
+#define CG_SET_STROKE_COLOR_MAYBE_WITH_CGCOLOR(context, color, cg_color) \
+ CG_SET_STROKE_COLOR (context, color)
+#endif
+#define CG_SET_STROKE_COLOR_WITH_GC_FOREGROUND(context, gc) \
+ CG_SET_STROKE_COLOR_MAYBE_WITH_CGCOLOR (context, (gc)->xgcv.foreground, \
+ (gc)->cg_fore_color)
+
#if USE_CG_DRAWING
#define FRAME_CG_CONTEXT(f) ((f)->output_data.mac->cg_context)
@@ -290,6 +337,29 @@ static void XSetFont P_ ((Display *, GC, XFontStruct *));
static int max_fringe_bmp = 0;
static CGImageRef *fringe_bmp = 0;
+static CGColorSpaceRef mac_cg_color_space_rgb;
+#if MAC_OS_X_VERSION_MAX_ALLOWED >= 1030
+static CGColorRef mac_cg_color_black;
+#endif
+
+static void
+init_cg_color ()
+{
+ mac_cg_color_space_rgb = CGColorSpaceCreateDeviceRGB ();
+#if MAC_OS_X_VERSION_MAX_ALLOWED >= 1030
+#if MAC_OS_X_VERSION_MIN_REQUIRED == 1020
+ /* Don't check the availability of CGColorCreate; this symbol is
+ defined even in Mac OS X 10.1. */
+ if (CGColorGetTypeID != NULL)
+#endif
+ {
+ float rgba[] = {0.0f, 0.0f, 0.0f, 1.0f};
+
+ mac_cg_color_black = CGColorCreate (mac_cg_color_space_rgb, rgba);
+ }
+#endif
+}
+
static CGContextRef
mac_begin_cg_clip (f, gc)
struct frame *f;
@@ -403,7 +473,7 @@ mac_draw_line (f, gc, x1, y1, x2, y2)
gy1 += 0.5f, gy2 += 0.5f;
context = mac_begin_cg_clip (f, gc);
- CG_SET_STROKE_COLOR (context, gc->xgcv.foreground);
+ CG_SET_STROKE_COLOR_WITH_GC_FOREGROUND (context, gc);
CGContextBeginPath (context);
CGContextMoveToPoint (context, gx1, gy1);
CGContextAddLineToPoint (context, gx2, gy2);
@@ -437,8 +507,10 @@ mac_draw_line (f, gc, x1, y1, x2, y2)
#endif
}
+/* Mac version of XDrawLine (to Pixmap). */
+
void
-mac_draw_line_to_pixmap (display, p, gc, x1, y1, x2, y2)
+XDrawLine (display, p, gc, x1, y1, x2, y2)
Display *display;
Pixmap p;
GC gc;
@@ -487,7 +559,7 @@ mac_erase_rectangle (f, gc, x, y, width, height)
CGContextRef context;
context = mac_begin_cg_clip (f, gc);
- CG_SET_FILL_COLOR (context, gc->xgcv.background);
+ CG_SET_FILL_COLOR_WITH_GC_BACKGROUND (context, gc);
CGContextFillRect (context, CGRectMake (x, y, width, height));
mac_end_cg_clip (f);
#else
@@ -529,7 +601,7 @@ mac_clear_window (f)
GC gc = FRAME_NORMAL_GC (f);
context = mac_begin_cg_clip (f, NULL);
- CG_SET_FILL_COLOR (context, gc->xgcv.background);
+ CG_SET_FILL_COLOR_WITH_GC_BACKGROUND (context, gc);
CGContextFillRect (context, CGRectMake (0, 0, FRAME_PIXEL_WIDTH (f),
FRAME_PIXEL_HEIGHT (f)));
mac_end_cg_clip (f);
@@ -572,14 +644,14 @@ mac_draw_cg_image (image, f, gc, src_x, src_y, width, height,
context = mac_begin_cg_clip (f, gc);
if (!overlay_p)
{
- CG_SET_FILL_COLOR (context, gc->xgcv.background);
+ CG_SET_FILL_COLOR_WITH_GC_BACKGROUND (context, gc);
CGContextFillRect (context, dest_rect);
}
CGContextClipToRect (context, dest_rect);
CGContextScaleCTM (context, 1, -1);
CGContextTranslateCTM (context, 0, -port_height);
if (CGImageIsMask (image))
- CG_SET_FILL_COLOR (context, gc->xgcv.foreground);
+ CG_SET_FILL_COLOR_WITH_GC_FOREGROUND (context, gc);
CGContextDrawImage (context,
CGRectMake (dest_x - src_x,
port_height - (dest_y - src_y
@@ -766,7 +838,7 @@ mac_fill_rectangle (f, gc, x, y, width, height)
CGContextRef context;
context = mac_begin_cg_clip (f, gc);
- CG_SET_FILL_COLOR (context, gc->xgcv.foreground);
+ CG_SET_FILL_COLOR_WITH_GC_FOREGROUND (context, gc);
CGContextFillRect (context, CGRectMake (x, y, width, height));
mac_end_cg_clip (f);
#else
@@ -797,7 +869,7 @@ mac_draw_rectangle (f, gc, x, y, width, height)
CGContextRef context;
context = mac_begin_cg_clip (f, gc);
- CG_SET_STROKE_COLOR (context, gc->xgcv.foreground);
+ CG_SET_STROKE_COLOR_WITH_GC_FOREGROUND (context, gc);
CGContextStrokeRect (context,
CGRectMake (x + 0.5f, y + 0.5f, width, height));
mac_end_cg_clip (f);
@@ -984,7 +1056,7 @@ mac_draw_string_common (f, gc, x, y, buf, nchars, bg_width,
#endif
if (bg_width)
{
- CG_SET_FILL_COLOR (context, gc->xgcv.background);
+ CG_SET_FILL_COLOR_WITH_GC_BACKGROUND (context, gc);
CGContextFillRect
(context,
CGRectMake (x, y - FONT_BASE (GC_FONT (gc)),
@@ -995,7 +1067,7 @@ mac_draw_string_common (f, gc, x, y, buf, nchars, bg_width,
#if !USE_CG_DRAWING
}
#endif
- CG_SET_FILL_COLOR (context, gc->xgcv.foreground);
+ CG_SET_FILL_COLOR_WITH_GC_FOREGROUND (context, gc);
err = ATSUSetLayoutControls (text_layout,
sizeof (tags) / sizeof (tags[0]),
tags, sizes, values);
@@ -1346,7 +1418,7 @@ mac_draw_image_string_cg (f, gc, x, y, buf, nchars, bg_width, overstrike_p)
#endif
if (bg_width)
{
- CG_SET_FILL_COLOR (context, gc->xgcv.background);
+ CG_SET_FILL_COLOR_WITH_GC_BACKGROUND (context, gc);
CGContextFillRect
(context,
CGRectMake (gx, y - FONT_BASE (GC_FONT (gc)),
@@ -1357,7 +1429,7 @@ mac_draw_image_string_cg (f, gc, x, y, buf, nchars, bg_width, overstrike_p)
#if !USE_CG_DRAWING
}
#endif
- CG_SET_FILL_COLOR (context, gc->xgcv.foreground);
+ CG_SET_FILL_COLOR_WITH_GC_FOREGROUND (context, gc);
CGContextSetFont (context, GC_FONT (gc)->cg_font);
CGContextSetFontSize (context, GC_FONT (gc)->mac_fontsize);
if (GC_FONT (gc)->mac_fontsize <= cg_text_anti_aliasing_threshold)
@@ -1560,15 +1632,25 @@ XChangeGC (display, gc, mask, xgcv)
/* Mac replacement for XCreateGC. */
GC
-XCreateGC (display, window, mask, xgcv)
+XCreateGC (display, d, mask, xgcv)
Display *display;
- Window window;
+ void *d;
unsigned long mask;
XGCValues *xgcv;
{
GC gc = xmalloc (sizeof (*gc));
bzero (gc, sizeof (*gc));
+#if USE_CG_DRAWING && MAC_OS_X_VERSION_MAX_ALLOWED >= 1030
+#if MAC_OS_X_VERSION_MIN_REQUIRED == 1020
+ if (CGColorGetTypeID != NULL)
+#endif
+ {
+ gc->cg_fore_color = gc->cg_back_color = mac_cg_color_black;
+ CGColorRetain (gc->cg_fore_color);
+ CGColorRetain (gc->cg_back_color);
+ }
+#endif
XChangeGC (display, gc, mask, xgcv);
return gc;
@@ -1584,6 +1666,15 @@ XFreeGC (display, gc)
{
if (gc->clip_region)
DisposeRgn (gc->clip_region);
+#if USE_CG_DRAWING && MAC_OS_X_VERSION_MAX_ALLOWED >= 1030
+#if MAC_OS_X_VERSION_MIN_REQUIRED == 1020
+ if (CGColorGetTypeID != NULL)
+#endif
+ {
+ CGColorRelease (gc->cg_fore_color);
+ CGColorRelease (gc->cg_back_color);
+ }
+#endif
xfree (gc);
}
@@ -1620,6 +1711,29 @@ XSetForeground (display, gc, color)
gc->fore_color.red = RED16_FROM_ULONG (color);
gc->fore_color.green = GREEN16_FROM_ULONG (color);
gc->fore_color.blue = BLUE16_FROM_ULONG (color);
+#if USE_CG_DRAWING && MAC_OS_X_VERSION_MAX_ALLOWED >= 1030
+#if MAC_OS_X_VERSION_MIN_REQUIRED == 1020
+ if (CGColorGetTypeID != NULL)
+#endif
+ {
+ CGColorRelease (gc->cg_fore_color);
+ if (color == 0)
+ {
+ gc->cg_fore_color = mac_cg_color_black;
+ CGColorRetain (gc->cg_fore_color);
+ }
+ else
+ {
+ float rgba[4];
+
+ rgba[0] = gc->fore_color.red / 65535.0f;
+ rgba[1] = gc->fore_color.green / 65535.0f;
+ rgba[2] = gc->fore_color.blue / 65535.0f;
+ rgba[3] = 1.0f;
+ gc->cg_fore_color = CGColorCreate (mac_cg_color_space_rgb, rgba);
+ }
+ }
+#endif
}
}
@@ -1638,6 +1752,29 @@ XSetBackground (display, gc, color)
gc->back_color.red = RED16_FROM_ULONG (color);
gc->back_color.green = GREEN16_FROM_ULONG (color);
gc->back_color.blue = BLUE16_FROM_ULONG (color);
+#if USE_CG_DRAWING && MAC_OS_X_VERSION_MAX_ALLOWED >= 1030
+#if MAC_OS_X_VERSION_MIN_REQUIRED == 1020
+ if (CGColorGetTypeID != NULL)
+#endif
+ {
+ CGColorRelease (gc->cg_back_color);
+ if (color == 0)
+ {
+ gc->cg_back_color = mac_cg_color_black;
+ CGColorRetain (gc->cg_back_color);
+ }
+ else
+ {
+ float rgba[4];
+
+ rgba[0] = gc->back_color.red / 65535.0f;
+ rgba[1] = gc->back_color.green / 65535.0f;
+ rgba[2] = gc->back_color.blue / 65535.0f;
+ rgba[3] = 1.0f;
+ gc->cg_back_color = CGColorCreate (mac_cg_color_space_rgb, rgba);
+ }
+ }
+#endif
}
}
@@ -6454,6 +6591,9 @@ x_free_frame_resources (f)
if (wp != tip_window)
remove_window_handler (wp);
+#if USE_CG_DRAWING
+ mac_prepare_for_quickdraw (f);
+#endif
DisposeWindow (wp);
if (wp == tip_window)
/* Neither WaitNextEvent nor ReceiveNextEvent receives `window
@@ -8759,14 +8899,18 @@ extern void mac_find_apple_event_spec P_ ((AEEventClass, AEEventID,
extern OSErr init_coercion_handler P_ ((void));
/* Drag and Drop */
-OSErr install_drag_handler P_ ((WindowRef));
-void remove_drag_handler P_ ((WindowRef));
+extern OSErr install_drag_handler P_ ((WindowRef));
+extern void remove_drag_handler P_ ((WindowRef));
+
+/* Showing help echo string during menu tracking */
+extern OSStatus install_menu_target_item_handler P_ ((WindowPtr));
#if USE_CARBON_EVENTS
#ifdef MAC_OSX
extern void init_service_handler ();
static Lisp_Object Qservice, Qpaste, Qperform;
#endif
+
/* Window Event Handler */
static pascal OSStatus mac_handle_window_event (EventHandlerCallRef,
EventRef, void *);
@@ -8854,7 +8998,7 @@ static const unsigned char fn_keycode_to_keycode_table[] = {
};
#endif /* MAC_OSX */
-static unsigned int
+static int
#if USE_CARBON_EVENTS
mac_to_emacs_modifiers (UInt32 mods)
#else
@@ -8901,6 +9045,23 @@ mac_to_emacs_modifiers (EventModifiers mods)
return result;
}
+static UInt32
+mac_mapped_modifiers (modifiers)
+ UInt32 modifiers;
+{
+ UInt32 mapped_modifiers_all =
+ (NILP (Vmac_control_modifier) ? 0 : controlKey)
+ | (NILP (Vmac_option_modifier) ? 0 : optionKey)
+ | (NILP (Vmac_command_modifier) ? 0 : cmdKey);
+
+#ifdef MAC_OSX
+ mapped_modifiers_all |=
+ (NILP (Vmac_function_modifier) ? 0 : kEventKeyModifierFnMask);
+#endif
+
+ return mapped_modifiers_all & modifiers;
+}
+
static int
mac_get_emulated_btn ( UInt32 modifiers )
{
@@ -8915,10 +9076,42 @@ mac_get_emulated_btn ( UInt32 modifiers )
return result;
}
+#if TARGET_API_MAC_CARBON
+/***** Code to handle C-g testing *****/
+extern int quit_char;
+extern int make_ctrl_char P_ ((int));
+
+int
+mac_quit_char_key_p (modifiers, key_code)
+ UInt32 modifiers, key_code;
+{
+ UInt32 char_code;
+ unsigned long some_state = 0;
+ Ptr kchr_ptr = (Ptr) GetScriptManagerVariable (smKCHRCache);
+ int c, emacs_modifiers;
+
+ /* Mask off modifier keys that are mapped to some Emacs modifiers. */
+ key_code |= (modifiers & ~(mac_mapped_modifiers (modifiers)));
+ char_code = KeyTranslate (kchr_ptr, key_code, &some_state);
+ if (char_code & ~0xff)
+ return 0;
+
+ emacs_modifiers = mac_to_emacs_modifiers (modifiers);
+ if (emacs_modifiers & ctrl_modifier)
+ c = make_ctrl_char (char_code);
+
+ c |= (emacs_modifiers
+ & (meta_modifier | alt_modifier
+ | hyper_modifier | super_modifier));
+
+ return c == quit_char;
+}
+#endif
+
#if USE_CARBON_EVENTS
/* Obtains the event modifiers from the event ref and then calls
mac_to_emacs_modifiers. */
-static UInt32
+static int
mac_event_to_emacs_modifiers (EventRef eventRef)
{
UInt32 mods = 0;
@@ -9143,6 +9336,9 @@ do_window_update (WindowPtr win)
GetPortVisibleRegion (GetWindowPort (win), region);
GetRegionBounds (region, &r);
expose_frame (f, r.left, r.top, r.right - r.left, r.bottom - r.top);
+#if USE_CG_DRAWING
+ mac_prepare_for_quickdraw (f);
+#endif
UpdateControls (win, region);
DisposeRgn (region);
#else
@@ -9954,21 +10150,10 @@ mac_handle_text_input_event (next_handler, event, data)
err = GetEventParameter (kbd_event, kEventParamKeyModifiers,
typeUInt32, NULL,
sizeof (UInt32), NULL, &modifiers);
- if (err == noErr)
- {
- mapped_modifiers =
- (NILP (Vmac_control_modifier) ? 0 : controlKey)
- | (NILP (Vmac_option_modifier) ? 0 : optionKey)
- | (NILP (Vmac_command_modifier) ? 0 : cmdKey);
-#ifdef MAC_OSX
- mapped_modifiers |=
- (NILP (Vmac_function_modifier) ? 0 : kEventKeyModifierFnMask);
-#endif
- if (modifiers & mapped_modifiers)
- /* There're mapped modifier keys. Process it in
- XTread_socket. */
- return eventNotHandledErr;
- }
+ if (err == noErr && mac_mapped_modifiers (modifiers))
+ /* There're mapped modifier keys. Process it in
+ XTread_socket. */
+ return eventNotHandledErr;
if (err == noErr)
err = GetEventParameter (kbd_event, kEventParamKeyUnicodes,
typeUnicodeText, NULL, 0, &actual_size,
@@ -10189,6 +10374,8 @@ install_window_handler (window)
#endif
if (err == noErr)
err = install_drag_handler (window);
+ if (err == noErr)
+ err = install_menu_target_item_handler (window);
return err;
}
@@ -10236,7 +10423,7 @@ main (void)
#if __MWERKS__
/* set creator and type for files created by MSL */
- _fcreator = 'EMAx';
+ _fcreator = MAC_EMACS_CREATOR_CODE;
_ftype = 'TEXT';
#endif
@@ -10893,20 +11080,12 @@ XTread_socket (sd, expected, hold_quit)
SInt16 current_key_script;
UInt32 modifiers = er.modifiers, mapped_modifiers;
- mapped_modifiers =
- (NILP (Vmac_control_modifier) ? 0 : controlKey)
- | (NILP (Vmac_option_modifier) ? 0 : optionKey)
- | (NILP (Vmac_command_modifier) ? 0 : cmdKey);
-
#if USE_CARBON_EVENTS && defined (MAC_OSX)
- mapped_modifiers |=
- (NILP (Vmac_function_modifier) ? 0 : kEventKeyModifierFnMask);
-
GetEventParameter (eventRef, kEventParamKeyModifiers,
typeUInt32, NULL,
sizeof (UInt32), NULL, &modifiers);
#endif
- mapped_modifiers &= modifiers;
+ mapped_modifiers = mac_mapped_modifiers (modifiers);
#if USE_CARBON_EVENTS && (defined (MAC_OSX) || USE_MAC_TSM)
/* When using Carbon Events, we need to pass raw keyboard
@@ -11460,35 +11639,6 @@ x_delete_display (dpyinfo)
#ifdef MAC_OSX
void
-mac_check_bundle()
-{
- extern int inhibit_window_system;
- extern int noninteractive;
- CFBundleRef appsBundle;
-
- /* No need to test if already -nw*/
- if (inhibit_window_system || noninteractive)
- return;
-
- appsBundle = CFBundleGetMainBundle();
- if (appsBundle != NULL)
- {
- CFStringRef cfBI = CFSTR("CFBundleIdentifier");
- CFTypeRef res = CFBundleGetValueForInfoDictionaryKey(appsBundle, cfBI);
- /* We found the bundle identifier, now we know we are valid. */
- if (res != NULL)
- {
- CFRelease(res);
- return;
- }
- }
- /* MAC_TODO: Have this start the bundled executable */
-
- /* For now, prevent the fatal error by bringing it up in the terminal */
- inhibit_window_system = 1;
-}
-
-void
MakeMeTheFrontProcess ()
{
ProcessSerialNumber psn;
@@ -11498,37 +11648,6 @@ MakeMeTheFrontProcess ()
if (err == noErr)
(void) SetFrontProcess (&psn);
}
-
-/***** Code to handle C-g testing *****/
-
-/* Contains the Mac modifier formed from quit_char */
-int mac_quit_char_modifiers = 0;
-int mac_quit_char_keycode;
-extern int quit_char;
-
-static void
-mac_determine_quit_char_modifiers()
-{
- /* Todo: Determine modifiers from quit_char. */
- UInt32 qc_modifiers = ctrl_modifier;
-
- /* Map modifiers */
- mac_quit_char_modifiers = 0;
- if (qc_modifiers & ctrl_modifier) mac_quit_char_modifiers |= controlKey;
- if (qc_modifiers & shift_modifier) mac_quit_char_modifiers |= shiftKey;
- if (qc_modifiers & alt_modifier) mac_quit_char_modifiers |= optionKey;
-}
-
-static void
-init_quit_char_handler ()
-{
- /* TODO: Let this support keys other the 'g' */
- mac_quit_char_keycode = 5;
- /* Look at <architecture/adb_kb_map.h> for details */
- /* http://gemma.apple.com/techpubs/mac/Toolbox/Toolbox-40.html#MARKER-9-184*/
-
- mac_determine_quit_char_modifiers();
-}
#endif /* MAC_OSX */
static void
@@ -11664,8 +11783,6 @@ mac_initialize ()
#if USE_CARBON_EVENTS
#ifdef MAC_OSX
init_service_handler ();
-
- init_quit_char_handler ();
#endif /* MAC_OSX */
init_command_handler ();
@@ -11688,6 +11805,8 @@ mac_initialize ()
#endif
#if USE_CG_DRAWING
+ init_cg_color ();
+
mac_init_fringe ();
#endif
diff --git a/src/macterm.h b/src/macterm.h
index 856d349f6f7..0447b41d908 100644
--- a/src/macterm.h
+++ b/src/macterm.h
@@ -1,6 +1,6 @@
/* Display module for Mac OS.
Copyright (C) 2000, 2001, 2002, 2003, 2004,
- 2005, 2006 Free Software Foundation, Inc.
+ 2005, 2006, 2007 Free Software Foundation, Inc.
This file is part of GNU Emacs.
@@ -44,8 +44,6 @@ Boston, MA 02110-1301, USA. */
#define FONT_BASE(f) ((f)->ascent)
#define FONT_DESCENT(f) ((f)->descent)
-#define FONT_MAX_WIDTH(f) FONT_WIDTH(f) /* fix later */
-
/* Structure recording bitmaps and reference count.
If REFCOUNT is 0 then this record is free to be reused. */
@@ -527,10 +525,15 @@ struct scroll_bar {
#define MAC_AQUA_SMALL_VERTICAL_SCROLL_BAR_WIDTH (11)
/* Size of hourglass controls */
-#define HOURGLASS_WIDTH 16
-#define HOURGLASS_HEIGHT 16
+#define HOURGLASS_WIDTH (16)
+#define HOURGLASS_HEIGHT (16)
/* Some constants that are used locally. */
+/* Creator code for Emacs on Mac OS. */
+enum {
+ MAC_EMACS_CREATOR_CODE = 'EMAx'
+};
+
/* Apple event descriptor types */
enum {
TYPE_FILE_NAME = 'fNam'
@@ -612,13 +615,12 @@ extern Pixmap XCreatePixmapFromBitmapData P_ ((Display *, WindowPtr, char *,
unsigned long, unsigned long,
unsigned int));
extern void XFreePixmap P_ ((Display *, Pixmap));
-extern GC XCreateGC P_ ((Display *, Window, unsigned long, XGCValues *));
+extern GC XCreateGC P_ ((Display *, void *, unsigned long, XGCValues *));
extern void XFreeGC P_ ((Display *, GC));
extern void XSetForeground P_ ((Display *, GC, unsigned long));
extern void XSetBackground P_ ((Display *, GC, unsigned long));
extern void XSetWindowBackground P_ ((Display *, WindowPtr, unsigned long));
-extern void mac_draw_line_to_pixmap P_ ((Display *, Pixmap, GC, int, int,
- int, int));
+extern void XDrawLine P_ ((Display *, Pixmap, GC, int, int, int, int));
extern void mac_clear_area P_ ((struct frame *, int, int,
unsigned int, unsigned int));
extern void mac_unload_font P_ ((struct mac_display_info *, XFontStruct *));
@@ -634,6 +636,7 @@ extern void do_apple_menu P_ ((SInt16));
#if USE_CG_DRAWING
extern void mac_prepare_for_quickdraw P_ ((struct frame *));
#endif
+extern int mac_quit_char_key_p P_ ((UInt32, UInt32));
#define FONT_TYPE_FOR_UNIBYTE(font, ch) 0
#define FONT_TYPE_FOR_MULTIBYTE(font, ch) 0
diff --git a/src/makefile.w32-in b/src/makefile.w32-in
index e9aac2fb5a6..b3e752ee8e3 100644
--- a/src/makefile.w32-in
+++ b/src/makefile.w32-in
@@ -1,6 +1,6 @@
# -*- Makefile -*- for GNU Emacs on the Microsoft W32 API.
# Copyright (C) 2000, 2001, 2002, 2003, 2004,
-# 2005, 2006 Free Software Foundation, Inc.
+# 2005, 2006, 2007 Free Software Foundation, Inc.
#
# This file is part of GNU Emacs.
#
diff --git a/src/marker.c b/src/marker.c
index bac8e46fc3f..b26aa404986 100644
--- a/src/marker.c
+++ b/src/marker.c
@@ -1,6 +1,6 @@
/* Markers: examining, setting and deleting.
- Copyright (C) 1985, 1997, 1998, 2002, 2003, 2004,
- 2005, 2006 Free Software Foundation, Inc.
+ Copyright (C) 1985, 1997, 1998, 2001, 2002, 2003, 2004,
+ 2005, 2006, 2007 Free Software Foundation, Inc.
This file is part of GNU Emacs.
diff --git a/src/md5.c b/src/md5.c
index 0daf2c3ef7c..4d8c6d890fe 100644
--- a/src/md5.c
+++ b/src/md5.c
@@ -1,7 +1,7 @@
/* Functions to compute MD5 message digest of files or memory blocks.
according to the definition of MD5 in RFC 1321 from April 1992.
- Copyright (C) 1995, 1996, 1997, 1999, 2000, 2002, 2003, 2004,
- 2005, 2006 Free Software Foundation, Inc.
+ Copyright (C) 1995, 1996, 1997, 1999, 2000, 2001, 2002, 2003, 2004,
+ 2005, 2006, 2007 Free Software Foundation, Inc.
This file is part of the GNU Emacs.
The GNU C Library is free software; you can redistribute it and/or
diff --git a/src/md5.h b/src/md5.h
index 202b2749504..a23dbd089ba 100644
--- a/src/md5.h
+++ b/src/md5.h
@@ -1,7 +1,7 @@
/* Declaration of functions and data types used for MD5 sum computing
library functions.
- Copyright (C) 1995, 1996, 1997, 1999, 2000, 2002, 2003, 2004,
- 2005, 2006 Free Software Foundation, Inc.
+ Copyright (C) 1995, 1996, 1997, 1999, 2000, 2001, 2002, 2003, 2004,
+ 2005, 2006, 2007 Free Software Foundation, Inc.
This file is part of GNU Emacs.
The GNU C Library is free software; you can redistribute it and/or
diff --git a/src/mem-limits.h b/src/mem-limits.h
index 45dabca3ac5..30d57d8b51c 100644
--- a/src/mem-limits.h
+++ b/src/mem-limits.h
@@ -1,6 +1,6 @@
/* Includes for memory limit warnings.
- Copyright (C) 1990, 1993, 1994, 1995, 1996, 2002, 2003, 2004,
- 2005, 2006 Free Software Foundation, Inc.
+ Copyright (C) 1990, 1993, 1994, 1995, 1996, 2001, 2002, 2003, 2004,
+ 2005, 2006, 2007 Free Software Foundation, Inc.
This file is part of GNU Emacs.
diff --git a/src/minibuf.c b/src/minibuf.c
index 85a0169e10a..58bcf1ef1a4 100644
--- a/src/minibuf.c
+++ b/src/minibuf.c
@@ -1,7 +1,7 @@
/* Minibuffer input and completion.
Copyright (C) 1985, 1986, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000,
2001, 2002, 2003, 2004, 2005,
- 2006 Free Software Foundation, Inc.
+ 2006, 2007 Free Software Foundation, Inc.
This file is part of GNU Emacs.
@@ -983,7 +983,7 @@ POSITION in the minibuffer. Any integer value less than or equal to
one puts point at the beginning of the string. *Note* that this
behavior differs from the way such arguments are used in `completing-read'
and some related functions, which use zero-indexing for POSITION. */)
-(prompt, initial_contents, keymap, read, hist, default_value, inherit_input_method)
+ (prompt, initial_contents, keymap, read, hist, default_value, inherit_input_method)
Lisp_Object prompt, initial_contents, keymap, read, hist, default_value;
Lisp_Object inherit_input_method;
{
diff --git a/src/mktime.c b/src/mktime.c
index a85ebeb3783..20c1092a62a 100644
--- a/src/mktime.c
+++ b/src/mktime.c
@@ -1,6 +1,6 @@
/* Convert a `struct tm' to a time_t value.
- Copyright (C) 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2002, 2003, 2004,
- 2005, 2006 Free Software Foundation, Inc.
+ Copyright (C) 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2001, 2002, 2003,
+ 2004, 2005, 2006, 2007 Free Software Foundation, Inc.
Contributed by Paul Eggert (eggert@twinsun.com).
NOTE: The canonical source of this file is maintained with the GNU C Library.
diff --git a/src/msdos.c b/src/msdos.c
index 4e989402a80..d40aafdcb34 100644
--- a/src/msdos.c
+++ b/src/msdos.c
@@ -1,6 +1,6 @@
/* MS-DOS specific C utilities. -*- coding: raw-text -*-
Copyright (C) 1993, 1994, 1995, 1996, 1997, 1999, 2000, 2001, 2002,
- 2003, 2004, 2005, 2006 Free Software Foundation, Inc.
+ 2003, 2004, 2005, 2006, 2007 Free Software Foundation, Inc.
This file is part of GNU Emacs.
diff --git a/src/msdos.h b/src/msdos.h
index cbe65818867..7a6d2e64ca0 100644
--- a/src/msdos.h
+++ b/src/msdos.h
@@ -1,6 +1,6 @@
/* MS-DOS specific C utilities, interface.
Copyright (C) 1993, 2001, 2002, 2003, 2004,
- 2005, 2006 Free Software Foundation, Inc.
+ 2005, 2006, 2007 Free Software Foundation, Inc.
This file is part of GNU Emacs.
diff --git a/src/prefix-args.c b/src/prefix-args.c
index 5580d176bcf..50ab81c10c9 100644
--- a/src/prefix-args.c
+++ b/src/prefix-args.c
@@ -1,6 +1,6 @@
/* prefix-args.c - echo each argument, prefixed by a string.
- Copyright (C) 1992, 2002, 2003, 2004, 2005,
- 2006 Free Software Foundation, Inc.
+ Copyright (C) 1992, 2001, 2002, 2003, 2004, 2005,
+ 2006, 2007 Free Software Foundation, Inc.
This file is part of GNU Emacs.
diff --git a/src/print.c b/src/print.c
index f6b64e32e30..0fef9cb9880 100644
--- a/src/print.c
+++ b/src/print.c
@@ -1,7 +1,7 @@
/* Lisp object printing and output streams.
Copyright (C) 1985, 1986, 1988, 1993, 1994, 1995, 1997,
1998, 1999, 2000, 2001, 2002, 2003, 2004,
- 2005, 2006 Free Software Foundation, Inc.
+ 2005, 2006, 2007 Free Software Foundation, Inc.
This file is part of GNU Emacs.
diff --git a/src/process.c b/src/process.c
index 6dc5a88944c..4611ce2c05c 100644
--- a/src/process.c
+++ b/src/process.c
@@ -1,7 +1,7 @@
/* Asynchronous subprocess control for GNU Emacs.
Copyright (C) 1985, 1986, 1987, 1988, 1993, 1994, 1995,
1996, 1998, 1999, 2001, 2002, 2003, 2004,
- 2005, 2006 Free Software Foundation, Inc.
+ 2005, 2006, 2007 Free Software Foundation, Inc.
This file is part of GNU Emacs.
@@ -814,9 +814,12 @@ nil, indicating the current buffer's process. */)
{
#ifdef SIGCHLD
Lisp_Object symbol;
+ /* Assignment to EMACS_INT stops GCC whining about limited range
+ of data type. */
+ EMACS_INT pid = p->pid;;
/* No problem storing the pid here, as it is still in Vprocess_alist. */
- deleted_pid_list = Fcons (make_fixnum_or_float (p->pid),
+ deleted_pid_list = Fcons (make_fixnum_or_float (pid),
/* GC treated elements set to nil. */
Fdelq (Qnil, deleted_pid_list));
/* If the process has already signaled, remove it from the list. */
@@ -826,7 +829,7 @@ nil, indicating the current buffer's process. */)
if (CONSP (p->status))
symbol = XCAR (p->status);
if (EQ (symbol, Qsignal) || EQ (symbol, Qexit))
- Fdelete (make_fixnum_or_float (p->pid), deleted_pid_list);
+ Fdelete (make_fixnum_or_float (pid), deleted_pid_list);
else
#endif
{
@@ -911,10 +914,13 @@ For a network connection, this value is nil. */)
(process)
register Lisp_Object process;
{
+ /* Assignment to EMACS_INT stops GCC whining about limited range of
+ data type. */
+ EMACS_INT pid;
+
CHECK_PROCESS (process);
- return (XPROCESS (process)->pid
- ? make_fixnum_or_float (XPROCESS (process)->pid)
- : Qnil);
+ pid = XPROCESS (process)->pid;
+ return (pid ? make_fixnum_or_float (pid) : Qnil);
}
DEFUN ("process-name", Fprocess_name, Sprocess_name, 1, 1, 0,
@@ -6386,7 +6392,7 @@ sigchld_handler (signo)
while (1)
{
- register int pid;
+ register EMACS_INT pid;
WAITTYPE w;
Lisp_Object tail;
diff --git a/src/process.h b/src/process.h
index fcf8d9b6c1f..718d2a70ea8 100644
--- a/src/process.h
+++ b/src/process.h
@@ -1,6 +1,6 @@
/* Definitions for asynchronous process control in GNU Emacs.
- Copyright (C) 1985, 1994, 2002, 2003, 2004,
- 2005, 2006 Free Software Foundation, Inc.
+ Copyright (C) 1985, 1994, 2001, 2002, 2003, 2004,
+ 2005, 2006, 2007 Free Software Foundation, Inc.
This file is part of GNU Emacs.
diff --git a/src/puresize.h b/src/puresize.h
index 5dd374af207..95f6ef6b620 100644
--- a/src/puresize.h
+++ b/src/puresize.h
@@ -1,6 +1,6 @@
/* How much read-only Lisp storage a dumped Emacs needs.
- Copyright (C) 1993, 2002, 2003, 2004, 2005,
- 2006 Free Software Foundation, Inc.
+ Copyright (C) 1993, 2001, 2002, 2003, 2004, 2005,
+ 2006, 2007 Free Software Foundation, Inc.
This file is part of GNU Emacs.
diff --git a/src/ralloc.c b/src/ralloc.c
index 83a26dd35d6..7b319556117 100644
--- a/src/ralloc.c
+++ b/src/ralloc.c
@@ -1,6 +1,6 @@
/* Block-relocating memory allocator.
- Copyright (C) 1993, 1995, 2000, 2002, 2003, 2004,
- 2005, 2006 Free Software Foundation, Inc.
+ Copyright (C) 1993, 1995, 2000, 2001, 2002, 2003, 2004,
+ 2005, 2006, 2007 Free Software Foundation, Inc.
This file is part of GNU Emacs.
diff --git a/src/regex.c b/src/regex.c
index 396e55c6404..177908cb751 100644
--- a/src/regex.c
+++ b/src/regex.c
@@ -3,7 +3,7 @@
internationalization features.)
Copyright (C) 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001,
- 2002, 2003, 2004, 2005, 2006 Free Software Foundation, Inc.
+ 2002, 2003, 2004, 2005, 2006, 2007 Free Software Foundation, Inc.
This program is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
diff --git a/src/regex.h b/src/regex.h
index e065c597d49..3f3d313397b 100644
--- a/src/regex.h
+++ b/src/regex.h
@@ -1,8 +1,9 @@
/* Definitions for data structures and routines for the regular
expression library, version 0.12.
- Copyright (C) 1985, 1989, 1990, 1991, 1992, 1993, 1995, 2000, 2002,
- 2003, 2004, 2005, 2006 Free Software Foundation, Inc.
+ Copyright (C) 1985, 1989, 1990, 1991, 1992, 1993, 1995, 2000, 2001,
+ 2002, 2003, 2004, 2005, 2006, 2007
+ Free Software Foundation, Inc.
This program is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
diff --git a/src/region-cache.c b/src/region-cache.c
index cedb0017da0..f30e00470f7 100644
--- a/src/region-cache.c
+++ b/src/region-cache.c
@@ -1,6 +1,6 @@
/* Caching facts about regions of the buffer, for optimization.
- Copyright (C) 1985, 1986, 1987, 1988, 1989, 1993, 1995, 2002, 2003, 2004,
- 2005, 2006 Free Software Foundation, Inc.
+ Copyright (C) 1985, 1986, 1987, 1988, 1989, 1993, 1995, 2001, 2002, 2003,
+ 2004, 2005, 2006, 2007 Free Software Foundation, Inc.
This file is part of GNU Emacs.
diff --git a/src/region-cache.h b/src/region-cache.h
index 40e68084cce..27176d80dbc 100644
--- a/src/region-cache.h
+++ b/src/region-cache.h
@@ -1,6 +1,6 @@
/* Header file: Caching facts about regions of the buffer, for optimization.
- Copyright (C) 1985, 1986, 1993, 1995, 2002, 2003, 2004,
- 2005, 2006 Free Software Foundation, Inc.
+ Copyright (C) 1985, 1986, 1993, 1995, 2001, 2002, 2003, 2004,
+ 2005, 2006, 2007 Free Software Foundation, Inc.
This file is part of GNU Emacs.
diff --git a/src/s/aix3-1.h b/src/s/aix3-1.h
index f77a209f0d2..204baa40f07 100644
--- a/src/s/aix3-1.h
+++ b/src/s/aix3-1.h
@@ -1,6 +1,6 @@
/* Definitions file for GNU Emacs running on IBM AIX version 3.1
- Copyright (C) 1985, 1986, 1990, 1999, 2002, 2003, 2004,
- 2005, 2006 Free Software Foundation, Inc.
+ Copyright (C) 1985, 1986, 1990, 1999, 2001, 2002, 2003, 2004,
+ 2005, 2006, 2007 Free Software Foundation, Inc.
This file is part of GNU Emacs.
diff --git a/src/s/bsd4-1.h b/src/s/bsd4-1.h
index 3e6a44f1fab..2b11ba2302f 100644
--- a/src/s/bsd4-1.h
+++ b/src/s/bsd4-1.h
@@ -1,6 +1,6 @@
/* Definitions file for GNU Emacs running on bsd 4.1.
- Copyright (C) 1985, 1986, 1999, 2002, 2003, 2004,
- 2005, 2006 Free Software Foundation, Inc.
+ Copyright (C) 1985, 1986, 1999, 2001, 2002, 2003, 2004,
+ 2005, 2006, 2007 Free Software Foundation, Inc.
This file is part of GNU Emacs.
diff --git a/src/s/bsd4-2.h b/src/s/bsd4-2.h
index ace519c0d74..40c655bea87 100644
--- a/src/s/bsd4-2.h
+++ b/src/s/bsd4-2.h
@@ -1,6 +1,6 @@
/* Definitions file for GNU Emacs running on bsd 4.2
- Copyright (C) 1985, 1986, 1994, 2002, 2003, 2004,
- 2005, 2006 Free Software Foundation, Inc.
+ Copyright (C) 1985, 1986, 1994, 2001, 2002, 2003, 2004,
+ 2005, 2006, 2007 Free Software Foundation, Inc.
This file is part of GNU Emacs.
diff --git a/src/s/bsd4-3.h b/src/s/bsd4-3.h
index 483effe71c1..249cf34f41b 100644
--- a/src/s/bsd4-3.h
+++ b/src/s/bsd4-3.h
@@ -1,6 +1,6 @@
/* Definitions file for GNU Emacs running on bsd 4.3
- Copyright (C) 1985, 1986, 2002, 2003, 2004,
- 2005, 2006 Free Software Foundation, Inc.
+ Copyright (C) 1985, 1986, 2001, 2002, 2003, 2004,
+ 2005, 2006, 2007 Free Software Foundation, Inc.
This file is part of GNU Emacs.
diff --git a/src/s/cxux.h b/src/s/cxux.h
index 3c4ffcd24a2..daed2fc85d8 100644
--- a/src/s/cxux.h
+++ b/src/s/cxux.h
@@ -1,6 +1,6 @@
/* Header file for Harris CXUX.
- Copyright (C) 1994, 2002, 2003, 2004, 2005,
- 2006 Free Software Foundation, Inc.
+ Copyright (C) 1994, 2001, 2002, 2003, 2004, 2005,
+ 2006, 2007 Free Software Foundation, Inc.
This file is part of GNU Emacs.
diff --git a/src/s/cygwin.h b/src/s/cygwin.h
index 749d1a38e3e..eff48e339cb 100644
--- a/src/s/cygwin.h
+++ b/src/s/cygwin.h
@@ -2,7 +2,7 @@
This file describes the parameters that system description files
should define or not.
Copyright (C) 1985, 1986, 1992, 1999, 2002, 2003, 2004,
- 2005, 2006 Free Software Foundation, Inc.
+ 2005, 2006, 2007 Free Software Foundation, Inc.
This file is part of GNU Emacs.
diff --git a/src/s/darwin.h b/src/s/darwin.h
index 91975cd441b..7175ea5457c 100644
--- a/src/s/darwin.h
+++ b/src/s/darwin.h
@@ -1,6 +1,6 @@
/* System description header file for Darwin (Mac OS X).
Copyright (C) 2001, 2002, 2003, 2004, 2005,
- 2006 Free Software Foundation, Inc.
+ 2006, 2007 Free Software Foundation, Inc.
This file is part of GNU Emacs.
diff --git a/src/s/dgux.h b/src/s/dgux.h
index d48d95709c8..62194a2fc6e 100644
--- a/src/s/dgux.h
+++ b/src/s/dgux.h
@@ -1,7 +1,7 @@
/* Definitions file for GNU Emacs running on Data General's DG/UX
version 4.32 upto and including 5.4.1.
- Copyright (C) 1994, 1999, 2002, 2003, 2004,
- 2005, 2006 Free Software Foundation, Inc.
+ Copyright (C) 1994, 1999, 2001, 2002, 2003, 2004,
+ 2005, 2006, 2007 Free Software Foundation, Inc.
This file is part of GNU Emacs.
diff --git a/src/s/dgux4.h b/src/s/dgux4.h
index ee24cd65b50..01d75650e6f 100644
--- a/src/s/dgux4.h
+++ b/src/s/dgux4.h
@@ -1,7 +1,7 @@
/* Definitions file for GNU Emacs running on Data General's DG/UX
Release 4.10 and above.
- Copyright (C) 1996, 2002, 2003, 2004, 2005,
- 2006 Free Software Foundation, Inc.
+ Copyright (C) 1996, 2001, 2002, 2003, 2004, 2005,
+ 2006, 2007 Free Software Foundation, Inc.
This file is part of GNU Emacs.
diff --git a/src/s/dgux5-4-3.h b/src/s/dgux5-4-3.h
index d0f6d4f43e8..c9f471af05a 100644
--- a/src/s/dgux5-4-3.h
+++ b/src/s/dgux5-4-3.h
@@ -1,7 +1,7 @@
/* Definitions file for GNU Emacs running on Data General's DG/UX
version 5.4 Release 3.00 and above.
- Copyright (C) 1994, 2002, 2003, 2004, 2005,
- 2006 Free Software Foundation, Inc.
+ Copyright (C) 1994, 2001, 2002, 2003, 2004, 2005,
+ 2006, 2007 Free Software Foundation, Inc.
This file is part of GNU Emacs.
diff --git a/src/s/dgux5-4r2.h b/src/s/dgux5-4r2.h
index be0ba73b4e0..fef2da7d29d 100644
--- a/src/s/dgux5-4r2.h
+++ b/src/s/dgux5-4r2.h
@@ -1,7 +1,7 @@
/* Definitions file for GNU Emacs running on Data General's DG/UX
5.4 Release 2.xx systems.
- Copyright (C) 1994, 2002, 2003, 2004, 2005,
- 2006 Free Software Foundation, Inc.
+ Copyright (C) 1994, 2001, 2002, 2003, 2004, 2005,
+ 2006, 2007 Free Software Foundation, Inc.
This file is part of GNU Emacs.
diff --git a/src/s/freebsd.h b/src/s/freebsd.h
index 78f314700b3..3adca71bebc 100644
--- a/src/s/freebsd.h
+++ b/src/s/freebsd.h
@@ -2,7 +2,7 @@
This file describes the parameters that system description files
should define or not.
Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
- 2003, 2004, 2005, 2006 Free Software Foundation, Inc.
+ 2003, 2004, 2005, 2006, 2007 Free Software Foundation, Inc.
This file is part of GNU Emacs.
diff --git a/src/s/gnu-linux.h b/src/s/gnu-linux.h
index 7116d24c718..24a37f964db 100644
--- a/src/s/gnu-linux.h
+++ b/src/s/gnu-linux.h
@@ -1,6 +1,6 @@
/* This file is the configuration file for Linux-based GNU systems
- Copyright (C) 1985, 1986, 1992, 1994, 1996, 1999, 2002, 2003, 2004,
- 2005, 2006 Free Software Foundation, Inc.
+ Copyright (C) 1985, 1986, 1992, 1994, 1996, 1999, 2001, 2002, 2003, 2004,
+ 2005, 2006, 2007 Free Software Foundation, Inc.
This file is part of GNU Emacs.
diff --git a/src/s/gnu.h b/src/s/gnu.h
index 71f1dd34a5e..c4f1a798d9e 100644
--- a/src/s/gnu.h
+++ b/src/s/gnu.h
@@ -1,6 +1,6 @@
/* Definitions file for GNU Emacs running on the GNU Hurd.
- Copyright (C) 1994, 1995, 1996, 2002, 2003, 2004,
- 2005, 2006 Free Software Foundation, Inc.
+ Copyright (C) 1994, 1995, 1996, 2001, 2002, 2003, 2004,
+ 2005, 2006, 2007 Free Software Foundation, Inc.
This file is part of GNU Emacs.
diff --git a/src/s/hpux.h b/src/s/hpux.h
index b8f9c62a893..c0419fbad46 100644
--- a/src/s/hpux.h
+++ b/src/s/hpux.h
@@ -1,7 +1,7 @@
/* Definitions file for GNU Emacs running on HPUX release 7.0.
Based on AT&T System V.2.
- Copyright (C) 1985, 1986, 1999, 2002, 2003, 2004,
- 2005, 2006 Free Software Foundation, Inc.
+ Copyright (C) 1985, 1986, 1999, 2001, 2002, 2003, 2004,
+ 2005, 2006, 2007 Free Software Foundation, Inc.
This file is part of GNU Emacs.
diff --git a/src/s/iris3-5.h b/src/s/iris3-5.h
index 6b0009c1c38..abbd945ab2f 100644
--- a/src/s/iris3-5.h
+++ b/src/s/iris3-5.h
@@ -1,6 +1,6 @@
/* Definitions file for GNU Emacs running on Silicon Graphics 3.5
- Copyright (C) 1987, 1999, 2002, 2003, 2004,
- 2005, 2006 Free Software Foundation, Inc.
+ Copyright (C) 1987, 1999, 2001, 2002, 2003, 2004,
+ 2005, 2006, 2007 Free Software Foundation, Inc.
This file is part of GNU Emacs.
diff --git a/src/s/iris3-6.h b/src/s/iris3-6.h
index d0c68bd89cb..192118eeca7 100644
--- a/src/s/iris3-6.h
+++ b/src/s/iris3-6.h
@@ -1,6 +1,6 @@
/* Definitions file for GNU Emacs running on Silicon Graphics system 3.6.
- Copyright (C) 1987, 1999, 2002, 2003, 2004,
- 2005, 2006 Free Software Foundation, Inc.
+ Copyright (C) 1987, 1999, 2001, 2002, 2003, 2004,
+ 2005, 2006, 2007 Free Software Foundation, Inc.
This file is part of GNU Emacs.
diff --git a/src/s/irix3-3.h b/src/s/irix3-3.h
index a65242179a9..1512077fe49 100644
--- a/src/s/irix3-3.h
+++ b/src/s/irix3-3.h
@@ -1,6 +1,6 @@
/* Definitions file for GNU Emacs running on Silicon Graphics Irix system 3.3.
- Copyright (C) 1987, 1990, 1999, 2002, 2003, 2004,
- 2005, 2006 Free Software Foundation, Inc.
+ Copyright (C) 1987, 1990, 1999, 2001, 2002, 2003, 2004,
+ 2005, 2006, 2007 Free Software Foundation, Inc.
This file is part of GNU Emacs.
diff --git a/src/s/lynxos.h b/src/s/lynxos.h
index b822bad3691..faa036037f5 100644
--- a/src/s/lynxos.h
+++ b/src/s/lynxos.h
@@ -1,6 +1,6 @@
/* Definitions file for GNU Emacs running on LynxOS-3.0.1
Copyright (C) 2000, 2001, 2002, 2003, 2004,
- 2005, 2006 Free Software Foundation, Inc.
+ 2005, 2006, 2007 Free Software Foundation, Inc.
This file is part of GNU Emacs.
diff --git a/src/s/ms-w32.h b/src/s/ms-w32.h
index 06b1f8960f0..ad699dff035 100644
--- a/src/s/ms-w32.h
+++ b/src/s/ms-w32.h
@@ -1,6 +1,6 @@
/* System description file for Windows NT.
- Copyright (C) 1993, 1994, 1995, 2002, 2003, 2004,
- 2005, 2006 Free Software Foundation, Inc.
+ Copyright (C) 1993, 1994, 1995, 2001, 2002, 2003, 2004,
+ 2005, 2006, 2007 Free Software Foundation, Inc.
This file is part of GNU Emacs.
diff --git a/src/s/msdos.h b/src/s/msdos.h
index 966384ee352..0bb5a678ae3 100644
--- a/src/s/msdos.h
+++ b/src/s/msdos.h
@@ -1,7 +1,7 @@
/* System description file for MS-DOS
Copyright (C) 1993, 1996, 1997, 2001, 2002, 2003, 2004,
- 2005, 2006 Free Software Foundation, Inc.
+ 2005, 2006, 2007 Free Software Foundation, Inc.
This file is part of GNU Emacs.
diff --git a/src/s/newsos5.h b/src/s/newsos5.h
index 0b441d74e24..b548a47ffbe 100644
--- a/src/s/newsos5.h
+++ b/src/s/newsos5.h
@@ -1,6 +1,6 @@
/* Definitions file for GNU Emacs running on Sony's NEWS-OS 5.0.2
- Copyright (C) 1992, 1994, 2002, 2003, 2004,
- 2005, 2006 Free Software Foundation, Inc.
+ Copyright (C) 1992, 1994, 2001, 2002, 2003, 2004,
+ 2005, 2006, 2007 Free Software Foundation, Inc.
This file is part of GNU Emacs.
diff --git a/src/s/nextstep.h b/src/s/nextstep.h
index 8ea45e16e6e..2923712d929 100644
--- a/src/s/nextstep.h
+++ b/src/s/nextstep.h
@@ -1,6 +1,6 @@
/* Configuration file for the NeXTstep system.
- Copyright (C) 1990, 1995, 2002, 2003, 2004,
- 2005, 2006 Free Software Foundation, Inc.
+ Copyright (C) 1990, 1995, 2001, 2002, 2003, 2004,
+ 2005, 2006, 2007 Free Software Foundation, Inc.
This file is part of GNU Emacs.
diff --git a/src/s/ptx.h b/src/s/ptx.h
index 319bbc049f2..edbbe5b2ac4 100644
--- a/src/s/ptx.h
+++ b/src/s/ptx.h
@@ -1,6 +1,6 @@
/* Definitions file for GNU Emacs running on Sequent DYNIX/ptx 1.x/2.x
- Copyright (C) 1987, 1990, 1999, 2002, 2003, 2004,
- 2005, 2006 Free Software Foundation, Inc.
+ Copyright (C) 1987, 1990, 1999, 2001, 2002, 2003, 2004,
+ 2005, 2006, 2007 Free Software Foundation, Inc.
This file is part of GNU Emacs.
diff --git a/src/s/riscix1-1.h b/src/s/riscix1-1.h
index d6281d256b6..682ba06720a 100644
--- a/src/s/riscix1-1.h
+++ b/src/s/riscix1-1.h
@@ -1,6 +1,6 @@
/* Definitions file for GNU Emacs running on RISCiX 1.1 (bsd 4.3)
- Copyright (C) 1994, 2002, 2003, 2004, 2005,
- 2006 Free Software Foundation, Inc.
+ Copyright (C) 1994, 2001, 2002, 2003, 2004, 2005,
+ 2006, 2007 Free Software Foundation, Inc.
This file is part of GNU Emacs.
diff --git a/src/s/riscix12.h b/src/s/riscix12.h
index a4811877070..d082e442810 100644
--- a/src/s/riscix12.h
+++ b/src/s/riscix12.h
@@ -1,6 +1,6 @@
/* Definitions file for GNU Emacs running on RISCiX 1.2 (bsd 4.3)
- Copyright (C) 1994, 2002, 2003, 2004, 2005,
- 2006 Free Software Foundation, Inc.
+ Copyright (C) 1994, 2001, 2002, 2003, 2004, 2005,
+ 2006, 2007 Free Software Foundation, Inc.
This file is part of GNU Emacs.
diff --git a/src/s/rtu.h b/src/s/rtu.h
index 2a9df14a14c..1517165877b 100644
--- a/src/s/rtu.h
+++ b/src/s/rtu.h
@@ -1,6 +1,6 @@
/* Definitions file for GNU Emacs running on RTU 3.0, ucb universe.
- Copyright (C) 1986, 1999, 2002, 2003, 2004,
- 2005, 2006 Free Software Foundation, Inc.
+ Copyright (C) 1986, 1999, 2001, 2002, 2003, 2004,
+ 2005, 2006, 2007 Free Software Foundation, Inc.
This file is part of GNU Emacs.
diff --git a/src/s/sco4.h b/src/s/sco4.h
index 0eda0a3f728..96e812ce0e4 100644
--- a/src/s/sco4.h
+++ b/src/s/sco4.h
@@ -1,6 +1,6 @@
/* System description file for SCO 3.2v4.
- Copyright (C) 1993, 1994, 2002, 2003, 2004,
- 2005, 2006 Free Software Foundation, Inc.
+ Copyright (C) 1993, 1994, 2001, 2002, 2003, 2004,
+ 2005, 2006, 2007 Free Software Foundation, Inc.
This file is part of GNU Emacs.
diff --git a/src/s/sco5.h b/src/s/sco5.h
index 06166f32fd9..6ab7b60e466 100644
--- a/src/s/sco5.h
+++ b/src/s/sco5.h
@@ -1,5 +1,6 @@
/* System description file for SCO 3.2v5.
- Copyright (C) 1996, 2002, 2003, 2004, 2005, 2006 Free Software Foundation, Inc.
+ Copyright (C) 1996, 2001, 2002, 2003, 2004, 2005, 2006,
+ 2007 Free Software Foundation, Inc.
This file is part of GNU Emacs.
diff --git a/src/s/template.h b/src/s/template.h
index 94b3787811f..c16b12971ad 100644
--- a/src/s/template.h
+++ b/src/s/template.h
@@ -1,8 +1,8 @@
/* Template for system description header files.
This file describes the parameters that system description files
should define or not.
- Copyright (C) 1985, 1986, 1992, 1999, 2002, 2003, 2004,
- 2005, 2006 Free Software Foundation, Inc.
+ Copyright (C) 1985, 1986, 1992, 1999, 2001, 2002, 2003, 2004,
+ 2005, 2006, 2007 Free Software Foundation, Inc.
This file is part of GNU Emacs.
diff --git a/src/s/umax.h b/src/s/umax.h
index ae3b98cfcad..5d379ea398a 100644
--- a/src/s/umax.h
+++ b/src/s/umax.h
@@ -1,6 +1,6 @@
/* Definitions file for GNU Emacs running on UMAX 4.2
- Copyright (C) 1985, 1986, 2002, 2003, 2004,
- 2005, 2006 Free Software Foundation, Inc.
+ Copyright (C) 1985, 1986, 2001, 2002, 2003, 2004,
+ 2005, 2006, 2007 Free Software Foundation, Inc.
This file is part of GNU Emacs.
diff --git a/src/s/unipl5-2.h b/src/s/unipl5-2.h
index 096096f9f7a..0d4aba8ea2b 100644
--- a/src/s/unipl5-2.h
+++ b/src/s/unipl5-2.h
@@ -1,6 +1,6 @@
/* Definitions file for GNU Emacs running on UniSoft's UniPlus 5.2
- Copyright (C) 1985, 1986, 1999, 2002, 2003, 2004,
- 2005, 2006 Free Software Foundation, Inc.
+ Copyright (C) 1985, 1986, 1999, 2001, 2002, 2003, 2004,
+ 2005, 2006, 2007 Free Software Foundation, Inc.
This file is part of GNU Emacs.
diff --git a/src/s/usg5-0.h b/src/s/usg5-0.h
index 94389290726..101e75726ef 100644
--- a/src/s/usg5-0.h
+++ b/src/s/usg5-0.h
@@ -1,6 +1,6 @@
/* Definitions file for GNU Emacs running on AT&T's System V.0
- Copyright (C) 1985, 1986, 1999, 2002, 2003, 2004,
- 2005, 2006 Free Software Foundation, Inc.
+ Copyright (C) 1985, 1986, 1999, 2001, 2002, 2003, 2004,
+ 2005, 2006, 2007 Free Software Foundation, Inc.
This file is part of GNU Emacs.
diff --git a/src/s/usg5-2-2.h b/src/s/usg5-2-2.h
index a60a985856d..b2c89a1abdc 100644
--- a/src/s/usg5-2-2.h
+++ b/src/s/usg5-2-2.h
@@ -1,6 +1,6 @@
/* Definitions file for GNU Emacs running on AT&T's System V Release 2.2
- Copyright (C) 1985, 1986, 1999, 2002, 2003, 2004,
- 2005, 2006 Free Software Foundation, Inc.
+ Copyright (C) 1985, 1986, 1999, 2001, 2002, 2003, 2004,
+ 2005, 2006, 2007 Free Software Foundation, Inc.
This file is part of GNU Emacs.
diff --git a/src/s/usg5-2.h b/src/s/usg5-2.h
index 7f1fcb92ec5..13a9885fb53 100644
--- a/src/s/usg5-2.h
+++ b/src/s/usg5-2.h
@@ -1,6 +1,6 @@
/* Definitions file for GNU Emacs running on AT&T's System V Release 2.0
- Copyright (C) 1985, 1986, 1999, 2002, 2003, 2004,
- 2005, 2006 Free Software Foundation, Inc.
+ Copyright (C) 1985, 1986, 1999, 2001, 2002, 2003, 2004,
+ 2005, 2006, 2007 Free Software Foundation, Inc.
This file is part of GNU Emacs.
diff --git a/src/s/usg5-3.h b/src/s/usg5-3.h
index 56a448e9dba..0e0a1c84829 100644
--- a/src/s/usg5-3.h
+++ b/src/s/usg5-3.h
@@ -1,6 +1,6 @@
/* Definitions file for GNU Emacs running on AT&T's System V Release 3
- Copyright (C) 1987, 1999, 2002, 2003, 2004,
- 2005, 2006 Free Software Foundation, Inc.
+ Copyright (C) 1987, 1999, 2001, 2002, 2003, 2004,
+ 2005, 2006, 2007 Free Software Foundation, Inc.
This file is part of GNU Emacs.
diff --git a/src/s/usg5-4.h b/src/s/usg5-4.h
index 5e202e3edad..4ca5b6fcabc 100644
--- a/src/s/usg5-4.h
+++ b/src/s/usg5-4.h
@@ -1,6 +1,6 @@
/* Definitions file for GNU Emacs running on AT&T's System V Release 4
- Copyright (C) 1987, 1990, 1999, 2000, 2002, 2003, 2004,
- 2005, 2006 Free Software Foundation, Inc.
+ Copyright (C) 1987, 1990, 1999, 2000, 2001, 2002, 2003, 2004,
+ 2005, 2006, 2007 Free Software Foundation, Inc.
This file is part of GNU Emacs.
diff --git a/src/s/vms.h b/src/s/vms.h
index 51f3ca1a531..4d9bbaebb07 100644
--- a/src/s/vms.h
+++ b/src/s/vms.h
@@ -1,6 +1,6 @@
/* system description header for VMS
- Copyright (C) 1986, 2002, 2003, 2004, 2005,
- 2006 Free Software Foundation, Inc.
+ Copyright (C) 1986, 2001, 2002, 2003, 2004, 2005,
+ 2006, 2007 Free Software Foundation, Inc.
This file is part of GNU Emacs.
diff --git a/src/s/xenix.h b/src/s/xenix.h
index 09a7b61fcd1..6d77ef50acc 100644
--- a/src/s/xenix.h
+++ b/src/s/xenix.h
@@ -1,6 +1,6 @@
/* Definitions file for GNU Emacs running SCO Xenix 386 Release 2.2
- Copyright (C) 1988, 1999, 2002, 2003, 2004,
- 2005, 2006 Free Software Foundation, Inc.
+ Copyright (C) 1988, 1999, 2001, 2002, 2003, 2004,
+ 2005, 2006, 2007 Free Software Foundation, Inc.
This file is part of GNU Emacs.
diff --git a/src/scroll.c b/src/scroll.c
index e8981fcfb5f..3afc927c77f 100644
--- a/src/scroll.c
+++ b/src/scroll.c
@@ -1,6 +1,6 @@
/* Calculate what line insertion or deletion to do, and do it,
- Copyright (C) 1985, 1986, 1990, 1993, 1994, 2002, 2003, 2004,
- 2005, 2006 Free Software Foundation, Inc.
+ Copyright (C) 1985, 1986, 1990, 1993, 1994, 2001, 2002, 2003, 2004,
+ 2005, 2006, 2007 Free Software Foundation, Inc.
This file is part of GNU Emacs.
diff --git a/src/search.c b/src/search.c
index 4c4fa7931a1..2e4ddc3256d 100644
--- a/src/search.c
+++ b/src/search.c
@@ -1,6 +1,6 @@
/* String search routines for GNU Emacs.
- Copyright (C) 1985, 1986, 1987, 1993, 1994, 1997, 1998, 1999, 2002, 2003,
- 2004, 2005, 2006 Free Software Foundation, Inc.
+ Copyright (C) 1985, 1986, 1987, 1993, 1994, 1997, 1998, 1999, 2001, 2002,
+ 2003, 2004, 2005, 2006, 2007 Free Software Foundation, Inc.
This file is part of GNU Emacs.
diff --git a/src/sheap.c b/src/sheap.c
index 03da2afa813..510a75d4743 100644
--- a/src/sheap.c
+++ b/src/sheap.c
@@ -1,7 +1,7 @@
/* simulate `sbrk' with an array in .bss, for `unexec' support for Cygwin;
complete rewrite of xemacs Cygwin `unexec' code
- Copyright (C) 2004, 2005, 2006 Free Software Foundation, Inc.
+ Copyright (C) 2004, 2005, 2006, 2007 Free Software Foundation, Inc.
This file is part of GNU Emacs.
diff --git a/src/sound.c b/src/sound.c
index b6f5ff513ee..7fb79e64048 100644
--- a/src/sound.c
+++ b/src/sound.c
@@ -1,6 +1,6 @@
/* sound.c -- sound support.
Copyright (C) 1998, 1999, 2001, 2002, 2003, 2004,
- 2005, 2006 Free Software Foundation, Inc.
+ 2005, 2006, 2007 Free Software Foundation, Inc.
This file is part of GNU Emacs.
diff --git a/src/strftime.c b/src/strftime.c
index 88800c0d408..7a9506e55d3 100644
--- a/src/strftime.c
+++ b/src/strftime.c
@@ -1,5 +1,6 @@
/* Copyright (C) 1991, 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000,
- 2002, 2003, 2004, 2005, 2006 Free Software Foundation, Inc.
+ 2001, 2002, 2003, 2004, 2005, 2006, 2007
+ Free Software Foundation, Inc.
NOTE: The canonical source of this file is maintained with gnulib.
Bugs can be reported to bug-gnulib@gnu.org.
diff --git a/src/sunfns.c b/src/sunfns.c
index 336f02221cf..c532ae7f849 100644
--- a/src/sunfns.c
+++ b/src/sunfns.c
@@ -1,6 +1,6 @@
/* Functions for Sun Windows menus and selection buffer.
Copyright (C) 1987, 1999, 2001, 2002, 2003, 2004,
- 2005, 2006 Free Software Foundation, Inc.
+ 2005, 2006, 2007 Free Software Foundation, Inc.
This file is probably totally obsolete. In any case, the FSF is
unwilling to support it. We agreed to include it in our distribution
diff --git a/src/syntax.c b/src/syntax.c
index d1ae3f6bd8c..65140623032 100644
--- a/src/syntax.c
+++ b/src/syntax.c
@@ -1,6 +1,7 @@
/* GNU Emacs routines to deal with syntax tables; also word and list parsing.
- Copyright (C) 1985, 1987, 1993, 1994, 1995, 1997, 1998, 1999, 2002,
- 2003, 2004, 2005, 2006 Free Software Foundation, Inc.
+ Copyright (C) 1985, 1987, 1993, 1994, 1995, 1997, 1998, 1999, 2001,
+ 2002, 2003, 2004, 2005, 2006, 2007
+ Free Software Foundation, Inc.
This file is part of GNU Emacs.
diff --git a/src/syntax.h b/src/syntax.h
index c7e67ebf355..2ff63678bd2 100644
--- a/src/syntax.h
+++ b/src/syntax.h
@@ -1,6 +1,6 @@
/* Declarations having to do with GNU Emacs syntax tables.
- Copyright (C) 1985, 1993, 1994, 1997, 1998, 2002, 2003, 2004,
- 2005, 2006 Free Software Foundation, Inc.
+ Copyright (C) 1985, 1993, 1994, 1997, 1998, 2001, 2002, 2003, 2004,
+ 2005, 2006, 2007 Free Software Foundation, Inc.
This file is part of GNU Emacs.
diff --git a/src/sysdep.c b/src/sysdep.c
index 625b5d619ab..20d60400dcb 100644
--- a/src/sysdep.c
+++ b/src/sysdep.c
@@ -1,6 +1,6 @@
/* Interfaces to system-dependent kernel and library entries.
Copyright (C) 1985, 1986, 1987, 1988, 1993, 1994, 1995, 1999, 2000, 2001,
- 2002, 2003, 2004, 2005, 2006 Free Software Foundation, Inc.
+ 2002, 2003, 2004, 2005, 2006, 2007 Free Software Foundation, Inc.
This file is part of GNU Emacs.
diff --git a/src/sysselect.h b/src/sysselect.h
index ba204dafe3f..d72ff90ac0b 100644
--- a/src/sysselect.h
+++ b/src/sysselect.h
@@ -1,6 +1,6 @@
/* sysselect.h - System-dependent definitions for the select function.
- Copyright (C) 1995, 2002, 2003, 2004, 2005,
- 2006 Free Software Foundation, Inc.
+ Copyright (C) 1995, 2001, 2002, 2003, 2004, 2005,
+ 2006, 2007 Free Software Foundation, Inc.
This file is part of GNU Emacs.
diff --git a/src/syssignal.h b/src/syssignal.h
index cc2212d5e19..a4e3fcb3e1b 100644
--- a/src/syssignal.h
+++ b/src/syssignal.h
@@ -1,6 +1,6 @@
/* syssignal.h - System-dependent definitions for signals.
- Copyright (C) 1993, 1999, 2002, 2003, 2004,
- 2005, 2006 Free Software Foundation, Inc.
+ Copyright (C) 1993, 1999, 2001, 2002, 2003, 2004,
+ 2005, 2006, 2007 Free Software Foundation, Inc.
This file is part of GNU Emacs.
diff --git a/src/systime.h b/src/systime.h
index e7ff2b2a3b7..ac28d883d64 100644
--- a/src/systime.h
+++ b/src/systime.h
@@ -1,6 +1,6 @@
/* systime.h - System-dependent definitions for time manipulations.
Copyright (C) 1993, 1994, 2002, 2003, 2004,
- 2005, 2006 Free Software Foundation, Inc.
+ 2005, 2006, 2007 Free Software Foundation, Inc.
This file is part of GNU Emacs.
diff --git a/src/systty.h b/src/systty.h
index 6d6a6f01ea9..d1eb3b84597 100644
--- a/src/systty.h
+++ b/src/systty.h
@@ -1,6 +1,6 @@
/* systty.h - System-dependent definitions for terminals.
- Copyright (C) 1993, 1994, 2002, 2003, 2004,
- 2005, 2006 Free Software Foundation, Inc.
+ Copyright (C) 1993, 1994, 2001, 2002, 2003, 2004,
+ 2005, 2006, 2007 Free Software Foundation, Inc.
This file is part of GNU Emacs.
diff --git a/src/syswait.h b/src/syswait.h
index bb4937f353e..e70e992d545 100644
--- a/src/syswait.h
+++ b/src/syswait.h
@@ -1,6 +1,6 @@
/* Define wait system call interface for Emacs.
- Copyright (C) 1993, 1994, 1995, 2000, 2002, 2003, 2004,
- 2005, 2006 Free Software Foundation, Inc.
+ Copyright (C) 1993, 1994, 1995, 2000, 2001, 2002, 2003, 2004,
+ 2005, 2006, 2007 Free Software Foundation, Inc.
This file is part of GNU Emacs.
diff --git a/src/term.c b/src/term.c
index 7f25eb36328..1ec904e79f3 100644
--- a/src/term.c
+++ b/src/term.c
@@ -1,6 +1,6 @@
/* Terminal control module for terminals described by TERMCAP
Copyright (C) 1985, 1986, 1987, 1993, 1994, 1995, 1998, 2000, 2001,
- 2002, 2003, 2004, 2005, 2006 Free Software Foundation, Inc.
+ 2002, 2003, 2004, 2005, 2006, 2007 Free Software Foundation, Inc.
This file is part of GNU Emacs.
diff --git a/src/termcap.c b/src/termcap.c
index dee5465ebf9..111565131b5 100644
--- a/src/termcap.c
+++ b/src/termcap.c
@@ -1,6 +1,6 @@
/* Work-alike for termcap, plus extra features.
Copyright (C) 1985, 1986, 1993, 1994, 1995, 2000, 2001, 2002, 2003,
- 2004, 2005, 2006 Free Software Foundation, Inc.
+ 2004, 2005, 2006, 2007 Free Software Foundation, Inc.
This program is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
diff --git a/src/termchar.h b/src/termchar.h
index 3787e338d40..d5843bcf659 100644
--- a/src/termchar.h
+++ b/src/termchar.h
@@ -1,6 +1,6 @@
/* Flags and parameters describing terminal's characteristics.
- Copyright (C) 1985, 1986, 2002, 2003, 2004,
- 2005, 2006 Free Software Foundation, Inc.
+ Copyright (C) 1985, 1986, 2001, 2002, 2003, 2004,
+ 2005, 2006, 2007 Free Software Foundation, Inc.
This file is part of GNU Emacs.
diff --git a/src/termhooks.h b/src/termhooks.h
index 2b9e947996e..8aef23bc2a7 100644
--- a/src/termhooks.h
+++ b/src/termhooks.h
@@ -1,7 +1,7 @@
/* Hooks by which low level terminal operations
can be made to call other routines.
- Copyright (C) 1985, 1986, 1993, 1994, 2002, 2003, 2004,
- 2005, 2006 Free Software Foundation, Inc.
+ Copyright (C) 1985, 1986, 1993, 1994, 2001, 2002, 2003, 2004,
+ 2005, 2006, 2007 Free Software Foundation, Inc.
This file is part of GNU Emacs.
diff --git a/src/terminfo.c b/src/terminfo.c
index 7fccfaf1700..99f8b9a1e4e 100644
--- a/src/terminfo.c
+++ b/src/terminfo.c
@@ -1,6 +1,6 @@
/* Interface from Emacs to terminfo.
- Copyright (C) 1985, 1986, 2002, 2003, 2004,
- 2005, 2006 Free Software Foundation, Inc.
+ Copyright (C) 1985, 1986, 2001, 2002, 2003, 2004,
+ 2005, 2006, 2007 Free Software Foundation, Inc.
This file is part of GNU Emacs.
diff --git a/src/termopts.h b/src/termopts.h
index 5d4059babb0..dff634b5192 100644
--- a/src/termopts.h
+++ b/src/termopts.h
@@ -1,6 +1,6 @@
/* Flags and parameters describing user options for handling the terminal.
- Copyright (C) 1985, 1986, 1990, 2002, 2003, 2004,
- 2005, 2006 Free Software Foundation, Inc.
+ Copyright (C) 1985, 1986, 1990, 2001, 2002, 2003, 2004,
+ 2005, 2006, 2007 Free Software Foundation, Inc.
This file is part of GNU Emacs.
diff --git a/src/textprop.c b/src/textprop.c
index a039c17ae64..b98acaeccd8 100644
--- a/src/textprop.c
+++ b/src/textprop.c
@@ -1,6 +1,6 @@
/* Interface code for dealing with text properties.
Copyright (C) 1993, 1994, 1995, 1997, 1999, 2000, 2001, 2002, 2003,
- 2004, 2005, 2006 Free Software Foundation, Inc.
+ 2004, 2005, 2006, 2007 Free Software Foundation, Inc.
This file is part of GNU Emacs.
diff --git a/src/tparam.c b/src/tparam.c
index ea04f7eaea1..dea57ff7461 100644
--- a/src/tparam.c
+++ b/src/tparam.c
@@ -1,6 +1,6 @@
/* Merge parameters into a termcap entry string.
- Copyright (C) 1985, 1987, 1993, 1995, 2000, 2002, 2003, 2004,
- 2005, 2006 Free Software Foundation, Inc.
+ Copyright (C) 1985, 1987, 1993, 1995, 2000, 2001, 2002, 2003, 2004,
+ 2005, 2006, 2007 Free Software Foundation, Inc.
This program is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
diff --git a/src/uaf.h b/src/uaf.h
index 05a8651b6c2..c00fc7732fe 100644
--- a/src/uaf.h
+++ b/src/uaf.h
@@ -1,6 +1,6 @@
/* GNU Emacs VMS UAF definition file.
- Copyright (C) 1986, 2002, 2003, 2004, 2005,
- 2006 Free Software Foundation, Inc.
+ Copyright (C) 1986, 2001, 2002, 2003, 2004, 2005,
+ 2006, 2007 Free Software Foundation, Inc.
This file is part of GNU Emacs.
diff --git a/src/undo.c b/src/undo.c
index 3313c8e306c..0eca97df566 100644
--- a/src/undo.c
+++ b/src/undo.c
@@ -1,6 +1,6 @@
/* undo handling for GNU Emacs.
- Copyright (C) 1990, 1993, 1994, 2000, 2002, 2003, 2004,
- 2005, 2006 Free Software Foundation, Inc.
+ Copyright (C) 1990, 1993, 1994, 2000, 2001, 2002, 2003, 2004,
+ 2005, 2006, 2007 Free Software Foundation, Inc.
This file is part of GNU Emacs.
diff --git a/src/unexaix.c b/src/unexaix.c
index 4785aa1dcb3..41324ac0fd8 100644
--- a/src/unexaix.c
+++ b/src/unexaix.c
@@ -1,6 +1,6 @@
/* Dump an executable image.
- Copyright (C) 1985, 1986, 1987, 1988, 1999, 2002, 2003, 2004,
- 2005, 2006 Free Software Foundation, Inc.
+ Copyright (C) 1985, 1986, 1987, 1988, 1999, 2001, 2002, 2003, 2004,
+ 2005, 2006, 2007 Free Software Foundation, Inc.
This file is part of GNU Emacs.
diff --git a/src/unexalpha.c b/src/unexalpha.c
index ead259437f6..cbd44616bd4 100644
--- a/src/unexalpha.c
+++ b/src/unexalpha.c
@@ -1,7 +1,7 @@
/* Unexec for DEC alpha. schoepf@sc.ZIB-Berlin.DE (Rainer Schoepf).
- Copyright (C) 1994, 2000, 2002, 2003, 2004,
- 2005, 2006 Free Software Foundation, Inc.
+ Copyright (C) 1994, 2000, 2001, 2002, 2003, 2004,
+ 2005, 2006, 2007 Free Software Foundation, Inc.
This file is part of GNU Emacs.
diff --git a/src/unexapollo.c b/src/unexapollo.c
index ace28dfa38d..27cf968c5fe 100644
--- a/src/unexapollo.c
+++ b/src/unexapollo.c
@@ -1,6 +1,6 @@
/* unexapollo.c -- COFF File UNEXEC for GNU Emacs on Apollo SR10.x
- Copyright (C) 1988, 1994, 2002, 2003, 2004,
- 2005, 2006 Free Software Foundation, Inc.
+ Copyright (C) 1988, 1994, 2001, 2002, 2003, 2004,
+ 2005, 2006, 2007 Free Software Foundation, Inc.
This file is part of GNU Emacs.
diff --git a/src/unexconvex.c b/src/unexconvex.c
index 8409463b783..598b1b3428b 100644
--- a/src/unexconvex.c
+++ b/src/unexconvex.c
@@ -7,8 +7,8 @@
think about it, or about whether other Emacs maintenance might
break it.
- Copyright (C) 1985, 1986, 1988, 2002, 2003, 2004,
- 2005, 2006 Free Software Foundation, Inc.
+ Copyright (C) 1985, 1986, 1988, 2001, 2002, 2003, 2004,
+ 2005, 2006, 2007 Free Software Foundation, Inc.
This file is part of GNU Emacs.
diff --git a/src/unexcw.c b/src/unexcw.c
index 92e313c05d6..f1023d4b239 100644
--- a/src/unexcw.c
+++ b/src/unexcw.c
@@ -1,7 +1,7 @@
/* unexec() support for Cygwin;
complete rewrite of xemacs Cygwin unexec() code
- Copyright (C) 2004, 2005, 2006 Free Software Foundation, Inc.
+ Copyright (C) 2004, 2005, 2006, 2007 Free Software Foundation, Inc.
This file is part of GNU Emacs.
diff --git a/src/unexec.c b/src/unexec.c
index 7fe7e26568c..16f9c96faa7 100644
--- a/src/unexec.c
+++ b/src/unexec.c
@@ -1,5 +1,5 @@
-/* Copyright (C) 1985, 1986, 1987, 1988, 1992, 1993, 1994, 2002, 2003, 2004,
- 2005, 2006 Free Software Foundation, Inc.
+/* Copyright (C) 1985, 1986, 1987, 1988, 1992, 1993, 1994, 2001, 2002, 2003,
+ 2004, 2005, 2006, 2007 Free Software Foundation, Inc.
This file is part of GNU Emacs.
diff --git a/src/unexelf.c b/src/unexelf.c
index a236b98eab1..7b2c72f0fa9 100644
--- a/src/unexelf.c
+++ b/src/unexelf.c
@@ -1,5 +1,5 @@
/* Copyright (C) 1985, 1986, 1987, 1988, 1990, 1992, 1999, 2000, 2001,
- 2002, 2003, 2004, 2005, 2006 Free Software Foundation, Inc.
+ 2002, 2003, 2004, 2005, 2006, 2007 Free Software Foundation, Inc.
This file is part of GNU Emacs.
diff --git a/src/unexenix.c b/src/unexenix.c
index c1ad8bbf7eb..4d4bec11eb6 100644
--- a/src/unexenix.c
+++ b/src/unexenix.c
@@ -6,8 +6,8 @@
we don't plan to think about it, or about whether other Emacs
maintenance might break it.
- Copyright (C) 1988, 1994, 2002, 2003, 2004,
- 2005, 2006 Free Software Foundation, Inc.
+ Copyright (C) 1988, 1994, 2001, 2002, 2003, 2004,
+ 2005, 2006, 2007 Free Software Foundation, Inc.
This file is part of GNU Emacs.
diff --git a/src/unexmacosx.c b/src/unexmacosx.c
index e95aa2f2efc..d38053c3155 100644
--- a/src/unexmacosx.c
+++ b/src/unexmacosx.c
@@ -1,6 +1,6 @@
/* Dump Emacs in Mach-O format for use on Mac OS X.
Copyright (C) 2001, 2002, 2003, 2004, 2005,
- 2006 Free Software Foundation, Inc.
+ 2006, 2007 Free Software Foundation, Inc.
This file is part of GNU Emacs.
diff --git a/src/unexmips.c b/src/unexmips.c
index 86129e052cf..d80bc62277e 100644
--- a/src/unexmips.c
+++ b/src/unexmips.c
@@ -6,8 +6,8 @@
we don't plan to think about it, or about whether other Emacs
maintenance might break it.
- Copyright (C) 1988, 1994, 2002, 2003, 2004,
- 2005, 2006 Free Software Foundation, Inc.
+ Copyright (C) 1988, 1994, 2001, 2002, 2003, 2004,
+ 2005, 2006, 2007 Free Software Foundation, Inc.
This file is part of GNU Emacs.
diff --git a/src/unexnext.c b/src/unexnext.c
index b453da3b023..937e5d2b80b 100644
--- a/src/unexnext.c
+++ b/src/unexnext.c
@@ -1,6 +1,6 @@
/* Dump Emacs in macho format.
- Copyright (C) 1990, 1993, 2002, 2003, 2004,
- 2005, 2006 Free Software Foundation, Inc.
+ Copyright (C) 1990, 1993, 2001, 2002, 2003, 2004,
+ 2005, 2006, 2007 Free Software Foundation, Inc.
Written by Bradley Taylor (btaylor@next.com).
This file is part of GNU Emacs.
diff --git a/src/unexsni.c b/src/unexsni.c
index 8d72acf1a18..def59c6ea84 100644
--- a/src/unexsni.c
+++ b/src/unexsni.c
@@ -1,6 +1,7 @@
/* Unexec for Siemens machines running Sinix (modified SVR4).
- Copyright (C) 1985, 1986, 1987, 1988, 1990, 1992, 1993, 1994, 1995, 2002,
- 2003, 2004, 2005, 2006 Free Software Foundation, Inc.
+ Copyright (C) 1985, 1986, 1987, 1988, 1990, 1992, 1993, 1994, 1995, 2001,
+ 2002, 2003, 2004, 2005, 2006, 2007
+ Free Software Foundation, Inc.
This file is part of GNU Emacs.
diff --git a/src/unexsunos4.c b/src/unexsunos4.c
index 19d982f6140..e8051fc7e88 100644
--- a/src/unexsunos4.c
+++ b/src/unexsunos4.c
@@ -1,6 +1,6 @@
/* Unexec for Sunos 4 using shared libraries.
- Copyright (C) 1990, 1994, 1999, 2002, 2003, 2004,
- 2005, 2006 Free Software Foundation, Inc.
+ Copyright (C) 1990, 1994, 1999, 2001, 2002, 2003, 2004,
+ 2005, 2006, 2007 Free Software Foundation, Inc.
This file is part of GNU Emacs.
diff --git a/src/unexw32.c b/src/unexw32.c
index 6256062aa3f..ae2fe942c73 100644
--- a/src/unexw32.c
+++ b/src/unexw32.c
@@ -1,6 +1,6 @@
/* unexec for GNU Emacs on Windows NT.
- Copyright (C) 1994, 2002, 2003, 2004, 2005,
- 2006 Free Software Foundation, Inc.
+ Copyright (C) 1994, 2001, 2002, 2003, 2004, 2005,
+ 2006, 2007 Free Software Foundation, Inc.
This file is part of GNU Emacs.
diff --git a/src/vm-limit.c b/src/vm-limit.c
index cadfb4cc95a..192775df81c 100644
--- a/src/vm-limit.c
+++ b/src/vm-limit.c
@@ -1,6 +1,6 @@
/* Functions for memory limit warnings.
- Copyright (C) 1990, 1992, 2002, 2003, 2004,
- 2005, 2006 Free Software Foundation, Inc.
+ Copyright (C) 1990, 1992, 2001, 2002, 2003, 2004,
+ 2005, 2006, 2007 Free Software Foundation, Inc.
This file is part of GNU Emacs.
diff --git a/src/w16select.c b/src/w16select.c
index e77d4fca806..f73a12e5280 100644
--- a/src/w16select.c
+++ b/src/w16select.c
@@ -1,6 +1,6 @@
/* 16-bit Windows Selection processing for emacs on MS-Windows
Copyright (C) 1996, 1997, 2001, 2002, 2003, 2004,
- 2005, 2006 Free Software Foundation, Inc.
+ 2005, 2006, 2007 Free Software Foundation, Inc.
This file is part of GNU Emacs.
diff --git a/src/w32.c b/src/w32.c
index 9fe88833b4f..87ae9d9f8fd 100644
--- a/src/w32.c
+++ b/src/w32.c
@@ -1,6 +1,6 @@
/* Utility and Unix shadow routines for GNU Emacs on the Microsoft W32 API.
Copyright (C) 1994, 1995, 2000, 2001, 2002, 2003, 2004,
- 2005, 2006 Free Software Foundation, Inc.
+ 2005, 2006, 2007 Free Software Foundation, Inc.
This file is part of GNU Emacs.
diff --git a/src/w32.h b/src/w32.h
index 6ba25a42403..b6fb23dc14d 100644
--- a/src/w32.h
+++ b/src/w32.h
@@ -2,8 +2,8 @@
#define EMACS_W32_H
/* Support routines for the NT version of Emacs.
- Copyright (C) 1994, 2002, 2003, 2004, 2005,
- 2006 Free Software Foundation, Inc.
+ Copyright (C) 1994, 2001, 2002, 2003, 2004, 2005,
+ 2006, 2007 Free Software Foundation, Inc.
This file is part of GNU Emacs.
diff --git a/src/w32bdf.c b/src/w32bdf.c
index fbdb7f4c373..358415c6e42 100644
--- a/src/w32bdf.c
+++ b/src/w32bdf.c
@@ -1,6 +1,6 @@
/* Implementation of BDF font handling on the Microsoft W32 API.
- Copyright (C) 1999, 2002, 2003, 2004, 2005,
- 2006 Free Software Foundation, Inc.
+ Copyright (C) 1999, 2001, 2002, 2003, 2004, 2005,
+ 2006, 2007 Free Software Foundation, Inc.
This file is part of GNU Emacs.
diff --git a/src/w32bdf.h b/src/w32bdf.h
index dd8cfa276bf..ba408793882 100644
--- a/src/w32bdf.h
+++ b/src/w32bdf.h
@@ -1,6 +1,6 @@
/* Definitions and header for handling BDF fonts on the Microsoft W32 API.
- Copyright (C) 1999, 2002, 2003, 2004, 2005,
- 2006 Free Software Foundation, Inc.
+ Copyright (C) 1999, 2001, 2002, 2003, 2004, 2005,
+ 2006, 2007 Free Software Foundation, Inc.
This file is part of GNU Emacs.
diff --git a/src/w32console.c b/src/w32console.c
index b660d74f852..d9cef2baa0c 100644
--- a/src/w32console.c
+++ b/src/w32console.c
@@ -1,6 +1,6 @@
/* Terminal hooks for GNU Emacs on the Microsoft W32 API.
- Copyright (C) 1992, 1999, 2002, 2003, 2004,
- 2005, 2006 Free Software Foundation, Inc.
+ Copyright (C) 1992, 1999, 2001, 2002, 2003, 2004,
+ 2005, 2006, 2007 Free Software Foundation, Inc.
This file is part of GNU Emacs.
diff --git a/src/w32fns.c b/src/w32fns.c
index 29157dc356f..e7cafce29a6 100644
--- a/src/w32fns.c
+++ b/src/w32fns.c
@@ -1,6 +1,6 @@
/* Graphical user interface functions for the Microsoft W32 API.
Copyright (C) 1989, 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000,
- 2001, 2002, 2003, 2004, 2005, 2006 Free Software Foundation, Inc.
+ 2001, 2002, 2003, 2004, 2005, 2006, 2007 Free Software Foundation, Inc.
This file is part of GNU Emacs.
diff --git a/src/w32gui.h b/src/w32gui.h
index 2b1a11987f3..18c737a6e12 100644
--- a/src/w32gui.h
+++ b/src/w32gui.h
@@ -1,6 +1,6 @@
/* Definitions and headers for communication on the Microsoft W32 API.
- Copyright (C) 1995, 2002, 2003, 2004, 2005,
- 2006 Free Software Foundation, Inc.
+ Copyright (C) 1995, 2001, 2002, 2003, 2004, 2005,
+ 2006, 2007 Free Software Foundation, Inc.
This file is part of GNU Emacs.
diff --git a/src/w32heap.c b/src/w32heap.c
index e1bdd867721..9327e7e7e7e 100644
--- a/src/w32heap.c
+++ b/src/w32heap.c
@@ -1,6 +1,6 @@
/* Heap management routines for GNU Emacs on the Microsoft W32 API.
- Copyright (C) 1994, 2002, 2003, 2004, 2005,
- 2006 Free Software Foundation, Inc.
+ Copyright (C) 1994, 2001, 2002, 2003, 2004, 2005,
+ 2006, 2007 Free Software Foundation, Inc.
This file is part of GNU Emacs.
diff --git a/src/w32heap.h b/src/w32heap.h
index c862558b1cf..0d4ccb70b8a 100644
--- a/src/w32heap.h
+++ b/src/w32heap.h
@@ -1,6 +1,6 @@
/* Heap management routines (including unexec) for GNU Emacs on Windows NT.
- Copyright (C) 1994, 2002, 2003, 2004, 2005,
- 2006 Free Software Foundation, Inc.
+ Copyright (C) 1994, 2001, 2002, 2003, 2004, 2005,
+ 2006, 2007 Free Software Foundation, Inc.
This file is part of GNU Emacs.
diff --git a/src/w32inevt.c b/src/w32inevt.c
index 0fededa6aea..b44054afef3 100644
--- a/src/w32inevt.c
+++ b/src/w32inevt.c
@@ -1,6 +1,6 @@
/* Input event support for Emacs on the Microsoft W32 API.
- Copyright (C) 1992, 1993, 1995, 2002, 2003, 2004,
- 2005, 2006 Free Software Foundation, Inc.
+ Copyright (C) 1992, 1993, 1995, 2001, 2002, 2003, 2004,
+ 2005, 2006, 2007 Free Software Foundation, Inc.
This file is part of GNU Emacs.
diff --git a/src/w32inevt.h b/src/w32inevt.h
index 8985df1ee69..f0f7f232261 100644
--- a/src/w32inevt.h
+++ b/src/w32inevt.h
@@ -1,6 +1,6 @@
/* Input routines for GNU Emacs on the Microsoft W32 API.
- Copyright (C) 1995, 2002, 2003, 2004, 2005,
- 2006 Free Software Foundation, Inc.
+ Copyright (C) 1995, 2001, 2002, 2003, 2004, 2005,
+ 2006, 2007 Free Software Foundation, Inc.
This file is part of GNU Emacs.
diff --git a/src/w32menu.c b/src/w32menu.c
index d5c38bee336..a3bd82a0d7d 100644
--- a/src/w32menu.c
+++ b/src/w32menu.c
@@ -1,6 +1,6 @@
/* Menu support for GNU Emacs on the Microsoft W32 API.
- Copyright (C) 1986, 1988, 1993, 1994, 1996, 1998, 1999, 2002, 2003,
- 2004, 2005, 2006 Free Software Foundation, Inc.
+ Copyright (C) 1986, 1988, 1993, 1994, 1996, 1998, 1999, 2001, 2002,
+ 2003, 2004, 2005, 2006, 2007 Free Software Foundation, Inc.
This file is part of GNU Emacs.
diff --git a/src/w32proc.c b/src/w32proc.c
index 7d27172781d..2120a51fb89 100644
--- a/src/w32proc.c
+++ b/src/w32proc.c
@@ -1,6 +1,6 @@
/* Process support for GNU Emacs on the Microsoft W32 API.
Copyright (C) 1992, 1995, 1999, 2000, 2001, 2002, 2003, 2004,
- 2005, 2006 Free Software Foundation, Inc.
+ 2005, 2006, 2007 Free Software Foundation, Inc.
This file is part of GNU Emacs.
diff --git a/src/w32reg.c b/src/w32reg.c
index cd2a3bdf755..37659ecb9ca 100644
--- a/src/w32reg.c
+++ b/src/w32reg.c
@@ -1,6 +1,6 @@
/* Emulate the X Resource Manager through the registry.
- Copyright (C) 1990, 1993, 1994, 2002, 2003, 2004,
- 2005, 2006 Free Software Foundation, Inc.
+ Copyright (C) 1990, 1993, 1994, 2001, 2002, 2003, 2004,
+ 2005, 2006, 2007 Free Software Foundation, Inc.
This file is part of GNU Emacs.
diff --git a/src/w32select.c b/src/w32select.c
index 7b394943434..889e09a4a6c 100644
--- a/src/w32select.c
+++ b/src/w32select.c
@@ -1,6 +1,6 @@
/* Selection processing for Emacs on the Microsoft W32 API.
- Copyright (C) 1993, 1994, 2002, 2003, 2004,
- 2005, 2006 Free Software Foundation, Inc.
+ Copyright (C) 1993, 1994, 2001, 2002, 2003, 2004,
+ 2005, 2006, 2007 Free Software Foundation, Inc.
This file is part of GNU Emacs.
diff --git a/src/w32term.c b/src/w32term.c
index 992bbc76aad..e488e4eeebc 100644
--- a/src/w32term.c
+++ b/src/w32term.c
@@ -1,6 +1,6 @@
/* Implementation of GUI terminal on the Microsoft W32 API.
Copyright (C) 1989, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001,
- 2002, 2003, 2004, 2005, 2006 Free Software Foundation, Inc.
+ 2002, 2003, 2004, 2005, 2006, 2007 Free Software Foundation, Inc.
This file is part of GNU Emacs.
diff --git a/src/w32term.h b/src/w32term.h
index c9d7fc375ac..c1ad423ca67 100644
--- a/src/w32term.h
+++ b/src/w32term.h
@@ -1,6 +1,6 @@
/* Definitions and headers for communication on the Microsoft W32 API.
Copyright (C) 1995, 2001, 2002, 2003, 2004,
- 2005, 2006 Free Software Foundation, Inc.
+ 2005, 2006, 2007 Free Software Foundation, Inc.
This file is part of GNU Emacs.
diff --git a/src/w32xfns.c b/src/w32xfns.c
index 0e937e9950c..b87cc28f057 100644
--- a/src/w32xfns.c
+++ b/src/w32xfns.c
@@ -1,6 +1,6 @@
/* Functions taken directly from X sources for use with the Microsoft W32 API.
- Copyright (C) 1989, 1992, 1993, 1994, 1995, 1999, 2002, 2003, 2004,
- 2005, 2006 Free Software Foundation, Inc.
+ Copyright (C) 1989, 1992, 1993, 1994, 1995, 1999, 2001, 2002, 2003,
+ 2004, 2005, 2006, 2007 Free Software Foundation, Inc.
This file is part of GNU Emacs.
diff --git a/src/widget.c b/src/widget.c
index 35bf5631b20..c6ba3be468b 100644
--- a/src/widget.c
+++ b/src/widget.c
@@ -1,6 +1,6 @@
/* The emacs frame widget.
- Copyright (C) 1992, 1993, 2000, 2002, 2003, 2004,
- 2005, 2006 Free Software Foundation, Inc.
+ Copyright (C) 1992, 1993, 2000, 2001, 2002, 2003, 2004,
+ 2005, 2006, 2007 Free Software Foundation, Inc.
This file is part of GNU Emacs.
diff --git a/src/widget.h b/src/widget.h
index b6c5e9f0bcb..21cd4543230 100644
--- a/src/widget.h
+++ b/src/widget.h
@@ -1,6 +1,6 @@
/* The emacs frame widget public header file.
- Copyright (C) 1993, 2002, 2003, 2004, 2005,
- 2006 Free Software Foundation, Inc.
+ Copyright (C) 1993, 2001, 2002, 2003, 2004, 2005,
+ 2006, 2007 Free Software Foundation, Inc.
This file is part of GNU Emacs.
diff --git a/src/widgetprv.h b/src/widgetprv.h
index bde384d3b5f..ac845209ba6 100644
--- a/src/widgetprv.h
+++ b/src/widgetprv.h
@@ -1,6 +1,6 @@
/* The emacs frame widget private header file.
- Copyright (C) 1993, 2002, 2003, 2004, 2005,
- 2006 Free Software Foundation, Inc.
+ Copyright (C) 1993, 2001, 2002, 2003, 2004, 2005,
+ 2006, 2007 Free Software Foundation, Inc.
This file is part of GNU Emacs.
diff --git a/src/window.c b/src/window.c
index 5bd57496180..17643ed874f 100644
--- a/src/window.c
+++ b/src/window.c
@@ -1,7 +1,7 @@
/* Window creation, deletion and examination for GNU Emacs.
Does not include redisplay.
Copyright (C) 1985, 1986, 1987, 1993, 1994, 1995, 1996, 1997, 1998, 2000,
- 2001, 2002, 2003, 2004, 2005, 2006 Free Software Foundation, Inc.
+ 2001, 2002, 2003, 2004, 2005, 2006, 2007 Free Software Foundation, Inc.
This file is part of GNU Emacs.
@@ -1182,7 +1182,8 @@ if it isn't already recorded. */)
if (! NILP (update)
&& ! (! NILP (w->window_end_valid)
- && XFASTINT (w->last_modified) >= BUF_MODIFF (b))
+ && XFASTINT (w->last_modified) >= BUF_MODIFF (b)
+ && XFASTINT (w->last_overlay_modified) >= BUF_OVERLAY_MODIFF (b))
&& !noninteractive)
{
struct text_pos startp;
@@ -3265,10 +3266,6 @@ set_window_buffer (window, buffer, run_hooks_p, keep_margins_p)
struct window *w = XWINDOW (window);
struct buffer *b = XBUFFER (buffer);
int count = SPECPDL_INDEX ();
-#ifdef HAVE_WINDOW_SYSTEM
- struct frame *f = XFRAME (w->frame);
- Display_Info *dpyinfo;
-#endif
w->buffer = buffer;
@@ -3349,15 +3346,6 @@ set_window_buffer (window, buffer, run_hooks_p, keep_margins_p)
call1 (Vrun_hooks, Qwindow_configuration_change_hook);
}
-#ifdef HAVE_WINDOW_SYSTEM
- BLOCK_INPUT;
- if (f && FRAME_X_OUTPUT (f)
- && (dpyinfo = FRAME_X_DISPLAY_INFO (f))
- && EQ (window, dpyinfo->mouse_face_window))
- clear_mouse_face (dpyinfo);
- UNBLOCK_INPUT;
-#endif
-
unbind_to (count, Qnil);
}
diff --git a/src/window.h b/src/window.h
index ed4c8728117..d4f28034b19 100644
--- a/src/window.h
+++ b/src/window.h
@@ -1,6 +1,6 @@
/* Window definitions for GNU Emacs.
Copyright (C) 1985, 1986, 1993, 1995, 1997, 1998, 1999, 2000, 2001,
- 2002, 2003, 2004, 2005, 2006 Free Software Foundation, Inc.
+ 2002, 2003, 2004, 2005, 2006, 2007 Free Software Foundation, Inc.
This file is part of GNU Emacs.
diff --git a/src/xdisp.c b/src/xdisp.c
index 07df06785ad..5a78dd48c10 100644
--- a/src/xdisp.c
+++ b/src/xdisp.c
@@ -1,7 +1,7 @@
/* Display generation from window structure and buffer text.
Copyright (C) 1985, 1986, 1987, 1988, 1993, 1994, 1995,
1997, 1998, 1999, 2000, 2001, 2002, 2003,
- 2004, 2005, 2006 Free Software Foundation, Inc.
+ 2004, 2005, 2006, 2007 Free Software Foundation, Inc.
This file is part of GNU Emacs.
@@ -13687,6 +13687,7 @@ try_window (window, pos, check_margins)
struct window *w = XWINDOW (window);
struct it it;
struct glyph_row *last_text_row = NULL;
+ struct frame *f = XFRAME (w->frame);
/* Make POS the new window start. */
set_marker_both (w->start, Qnil, CHARPOS (pos), BYTEPOS (pos));
diff --git a/src/xfaces.c b/src/xfaces.c
index 9c8f02d6902..d10dec235ac 100644
--- a/src/xfaces.c
+++ b/src/xfaces.c
@@ -1,6 +1,6 @@
/* xfaces.c -- "Face" primitives.
Copyright (C) 1993, 1994, 1998, 1999, 2000, 2001, 2002, 2003, 2004,
- 2005, 2006 Free Software Foundation, Inc.
+ 2005, 2006, 2007 Free Software Foundation, Inc.
This file is part of GNU Emacs.
diff --git a/src/xfns.c b/src/xfns.c
index 2b9e656b9f1..74f20357657 100644
--- a/src/xfns.c
+++ b/src/xfns.c
@@ -1,6 +1,6 @@
/* Functions for the X window system.
Copyright (C) 1989, 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000,
- 2001, 2002, 2003, 2004, 2005, 2006 Free Software Foundation, Inc.
+ 2001, 2002, 2003, 2004, 2005, 2006, 2007 Free Software Foundation, Inc.
This file is part of GNU Emacs.
diff --git a/src/xmenu.c b/src/xmenu.c
index 5066c9076e3..e2a67510de2 100644
--- a/src/xmenu.c
+++ b/src/xmenu.c
@@ -1,6 +1,6 @@
/* X Communication module for terminals which understand the X protocol.
Copyright (C) 1986, 1988, 1993, 1994, 1996, 1999, 2000, 2001, 2002, 2003,
- 2004, 2005, 2006 Free Software Foundation, Inc.
+ 2004, 2005, 2006, 2007 Free Software Foundation, Inc.
This file is part of GNU Emacs.
diff --git a/src/xrdb.c b/src/xrdb.c
index 6885123c194..3a85c14e8ff 100644
--- a/src/xrdb.c
+++ b/src/xrdb.c
@@ -1,6 +1,6 @@
/* Deal with the X Resource Manager.
Copyright (C) 1990, 1993, 1994, 2000, 2001, 2002, 2003, 2004,
- 2005, 2006 Free Software Foundation, Inc.
+ 2005, 2006, 2007 Free Software Foundation, Inc.
This file is part of GNU Emacs.
diff --git a/src/xselect.c b/src/xselect.c
index 72d6aa071ca..4f6959587fd 100644
--- a/src/xselect.c
+++ b/src/xselect.c
@@ -1,6 +1,6 @@
/* X Selection processing for Emacs.
Copyright (C) 1993, 1994, 1995, 1996, 1997, 2000, 2001, 2002, 2003,
- 2004, 2005, 2006 Free Software Foundation, Inc.
+ 2004, 2005, 2006, 2007 Free Software Foundation, Inc.
This file is part of GNU Emacs.
diff --git a/src/xsmfns.c b/src/xsmfns.c
index 4c250fecf00..5a3fdbb8812 100644
--- a/src/xsmfns.c
+++ b/src/xsmfns.c
@@ -1,6 +1,6 @@
/* Session management module for systems which understand the X Session
management protocol.
- Copyright (C) 2002, 2003, 2004, 2005, 2006 Free Software Foundation, Inc.
+ Copyright (C) 2002, 2003, 2004, 2005, 2006, 2007 Free Software Foundation, Inc.
This file is part of GNU Emacs.
diff --git a/src/xterm.c b/src/xterm.c
index 977325f0b75..efbc3c7b7ea 100644
--- a/src/xterm.c
+++ b/src/xterm.c
@@ -1,6 +1,6 @@
/* X Communication module for terminals which understand the X protocol.
Copyright (C) 1989, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001,
- 2002, 2003, 2004, 2005, 2006 Free Software Foundation, Inc.
+ 2002, 2003, 2004, 2005, 2006, 2007 Free Software Foundation, Inc.
This file is part of GNU Emacs.
@@ -282,6 +282,10 @@ static Lisp_Object last_mouse_scroll_bar;
static Time last_mouse_movement_time;
+/* Time for last user interaction as returned in X events. */
+
+static Time last_user_time;
+
/* Incremented by XTread_socket whenever it really tries to read
events. */
@@ -6115,6 +6119,7 @@ handle_one_xevent (dpyinfo, eventp, finish, hold_quit)
break;
case SelectionNotify:
+ last_user_time = event.xselection.time;
#ifdef USE_X_TOOLKIT
if (! x_window_to_frame (dpyinfo, event.xselection.requestor))
goto OTHER;
@@ -6123,6 +6128,7 @@ handle_one_xevent (dpyinfo, eventp, finish, hold_quit)
break;
case SelectionClear: /* Someone has grabbed ownership. */
+ last_user_time = event.xselectionclear.time;
#ifdef USE_X_TOOLKIT
if (! x_window_to_frame (dpyinfo, event.xselectionclear.window))
goto OTHER;
@@ -6139,6 +6145,7 @@ handle_one_xevent (dpyinfo, eventp, finish, hold_quit)
break;
case SelectionRequest: /* Someone wants our selection. */
+ last_user_time = event.xselectionrequest.time;
#ifdef USE_X_TOOLKIT
if (!x_window_to_frame (dpyinfo, event.xselectionrequest.owner))
goto OTHER;
@@ -6159,6 +6166,7 @@ handle_one_xevent (dpyinfo, eventp, finish, hold_quit)
break;
case PropertyNotify:
+ last_user_time = event.xproperty.time;
#if 0 /* This is plain wrong. In the case that we are waiting for a
PropertyNotify used as an ACK in incremental selection
transfer, the property will be on the receiver's window. */
@@ -6182,6 +6190,7 @@ handle_one_xevent (dpyinfo, eventp, finish, hold_quit)
/* Perhaps reparented due to a WM restart. Reset this. */
FRAME_X_DISPLAY_INFO (f)->wm_type = X_WMTYPE_UNKNOWN;
+ FRAME_X_DISPLAY_INFO (f)->net_supported_window = 0;
}
goto OTHER;
@@ -6340,6 +6349,7 @@ handle_one_xevent (dpyinfo, eventp, finish, hold_quit)
case KeyPress:
+ last_user_time = event.xkey.time;
ignore_next_mouse_click_timeout = 0;
#if defined (USE_X_TOOLKIT) || defined (USE_GTK)
@@ -6704,6 +6714,7 @@ handle_one_xevent (dpyinfo, eventp, finish, hold_quit)
#endif
case KeyRelease:
+ last_user_time = event.xkey.time;
#ifdef HAVE_X_I18N
/* Don't dispatch this event since XtDispatchEvent calls
XFilterEvent, and two calls in a row may freeze the
@@ -6714,6 +6725,7 @@ handle_one_xevent (dpyinfo, eventp, finish, hold_quit)
#endif
case EnterNotify:
+ last_user_time = event.xcrossing.time;
x_detect_focus_change (dpyinfo, &event, &inev.ie);
f = x_any_window_to_frame (dpyinfo, event.xcrossing.window);
@@ -6754,6 +6766,7 @@ handle_one_xevent (dpyinfo, eventp, finish, hold_quit)
goto OTHER;
case LeaveNotify:
+ last_user_time = event.xcrossing.time;
x_detect_focus_change (dpyinfo, &event, &inev.ie);
f = x_top_window_to_frame (dpyinfo, event.xcrossing.window);
@@ -6787,6 +6800,7 @@ handle_one_xevent (dpyinfo, eventp, finish, hold_quit)
case MotionNotify:
{
+ last_user_time = event.xmotion.time;
previous_help_echo_string = help_echo_string;
help_echo_string = Qnil;
@@ -6935,6 +6949,7 @@ handle_one_xevent (dpyinfo, eventp, finish, hold_quit)
bzero (&compose_status, sizeof (compose_status));
last_mouse_glyph_frame = 0;
+ last_user_time = event.xbutton.time;
if (dpyinfo->grabbed
&& last_mouse_frame
@@ -8595,40 +8610,111 @@ x_set_offset (f, xoff, yoff, change_gravity)
UNBLOCK_INPUT;
}
-/* Do fullscreen as specified in extended window manager hints */
+/* Return non-zero if _NET_SUPPORTING_WM_CHECK window exists and _NET_SUPPORTED
+ on the root window for frame F contains ATOMNAME.
+ This is how a WM check shall be done according to the Window Manager
+ Specification/Extended Window Manager Hints at
+ http://freedesktop.org/wiki/Standards_2fwm_2dspec. */
+
static int
-do_ewmh_fullscreen (f)
+wm_supports (f, atomname)
struct frame *f;
+ const char *atomname;
{
- int have_net_atom = FRAME_X_DISPLAY_INFO (f)->have_net_atoms;
+ Atom actual_type;
+ unsigned long actual_size, bytes_remaining;
+ int i, rc, actual_format;
+ Atom prop_atom;
+ Window wmcheck_window;
+ struct x_display_info *dpyinfo = FRAME_X_DISPLAY_INFO (f);
+ Window target_window = dpyinfo->root_window;
+ long max_len = 65536;
+ Display *dpy = FRAME_X_DISPLAY (f);
+ unsigned char *tmp_data = NULL;
+ Atom target_type = XA_WINDOW;
+ Atom want_atom;
- if (!have_net_atom)
+ BLOCK_INPUT;
+
+ prop_atom = XInternAtom (dpy, "_NET_SUPPORTING_WM_CHECK", False);
+
+ x_catch_errors (dpy);
+ rc = XGetWindowProperty (dpy, target_window,
+ prop_atom, 0, max_len, False, target_type,
+ &actual_type, &actual_format, &actual_size,
+ &bytes_remaining, &tmp_data);
+
+ if (rc != Success || actual_type != XA_WINDOW || x_had_errors_p (dpy))
+ {
+ if (tmp_data) XFree (tmp_data);
+ x_uncatch_errors ();
+ UNBLOCK_INPUT;
+ return 0;
+ }
+
+ wmcheck_window = *(Window *) tmp_data;
+ XFree (tmp_data);
+
+ /* Check if window exists. */
+ XSelectInput (dpy, wmcheck_window, StructureNotifyMask);
+ x_sync (f);
+ if (x_had_errors_p (dpy))
+ {
+ x_uncatch_errors ();
+ UNBLOCK_INPUT;
+ return 0;
+ }
+
+ if (dpyinfo->net_supported_window != wmcheck_window)
{
- int num;
- Atom *atoms = XListProperties (FRAME_X_DISPLAY (f),
- FRAME_X_DISPLAY_INFO (f)->root_window,
- &num);
- if (atoms && num > 0)
+ /* Window changed, reload atoms */
+ if (dpyinfo->net_supported_atoms != NULL)
+ XFree (dpyinfo->net_supported_atoms);
+ dpyinfo->net_supported_atoms = NULL;
+ dpyinfo->nr_net_supported_atoms = 0;
+ dpyinfo->net_supported_window = 0;
+
+ target_type = XA_ATOM;
+ prop_atom = XInternAtom (dpy, "_NET_SUPPORTED", False);
+ tmp_data = NULL;
+ rc = XGetWindowProperty (dpy, target_window,
+ prop_atom, 0, max_len, False, target_type,
+ &actual_type, &actual_format, &actual_size,
+ &bytes_remaining, &tmp_data);
+
+ if (rc != Success || actual_type != XA_ATOM || x_had_errors_p (dpy))
{
- char **names = (char **) xmalloc (num * sizeof(*names));
- if (XGetAtomNames (FRAME_X_DISPLAY (f), atoms, num, names))
- {
- int i;
- for (i = 0; i < num; ++i)
- {
- if (!have_net_atom)
- have_net_atom = strncmp (names[i], "_NET_", 5) == 0;
- XFree (names[i]);
- }
- }
- xfree (names);
+ if (tmp_data) XFree (tmp_data);
+ x_uncatch_errors ();
+ UNBLOCK_INPUT;
+ return 0;
}
- if (atoms)
- XFree (atoms);
- FRAME_X_DISPLAY_INFO (f)->have_net_atoms = have_net_atom;
+ dpyinfo->net_supported_atoms = (Atom *)tmp_data;
+ dpyinfo->nr_net_supported_atoms = actual_size;
+ dpyinfo->net_supported_window = wmcheck_window;
}
+ rc = 0;
+ want_atom = XInternAtom (dpy, atomname, False);
+
+ for (i = 0; rc == 0 && i < dpyinfo->nr_net_supported_atoms; ++i)
+ rc = dpyinfo->net_supported_atoms[i] == want_atom;
+
+ x_uncatch_errors ();
+ UNBLOCK_INPUT;
+
+ return rc;
+}
+
+/* Do fullscreen as specified in extended window manager hints */
+
+static int
+do_ewmh_fullscreen (f)
+ struct frame *f;
+{
+ int have_net_atom = wm_supports (f, "_NET_WM_STATE");
+
if (have_net_atom)
{
Lisp_Object frame;
@@ -8655,6 +8741,9 @@ do_ewmh_fullscreen (f)
break;
}
+ if (!wm_supports (f, what)) return 0;
+
+
Fx_send_client_event (frame, make_number (0), frame,
make_unibyte_string (atom, strlen (atom)),
make_number (32),
@@ -9055,23 +9144,27 @@ XTframe_raise_lower (f, raise_flag)
/* The following code is needed for `raise-frame' to work on
some versions of metacity; see Window Manager
Specification/Extended Window Manager Hints at
- http://freedesktop.org/wiki/Standards_2fwm_2dspec
+ http://freedesktop.org/wiki/Standards_2fwm_2dspec */
- However, on other versions (metacity 2.17.2-1.fc7), it
+#if 0
+ /* However, on other versions (metacity 2.17.2-1.fc7), it
reportedly causes hangs when resizing frames. */
- /* Lisp_Object frame;
- const char *atom = "_NET_ACTIVE_WINDOW"; */
-
- x_raise_frame (f);
-
- /* XSETFRAME (frame, f);
- Fx_send_client_event (frame, make_number (0), frame,
- make_unibyte_string (atom, strlen (atom)),
- make_number (32),
- Fcons (make_number (1),
- Fcons (make_number (time (NULL) * 1000),
- Qnil))); */
+ const char *atom = "_NET_ACTIVE_WINDOW";
+ if (f->async_visible && wm_supports (f, atom))
+ {
+ Lisp_Object frame;
+ XSETFRAME (frame, f);
+ Fx_send_client_event (frame, make_number (0), frame,
+ make_unibyte_string (atom, strlen (atom)),
+ make_number (32),
+ Fcons (make_number (1),
+ Fcons (make_number (last_user_time),
+ Qnil)));
+ }
+ else
+#endif
+ x_raise_frame (f);
}
else
x_lower_frame (f);
@@ -11210,6 +11303,10 @@ x_term_init (display_name, xrm_option, resource_name)
dpyinfo->x_dnd_atoms = xmalloc (sizeof (*dpyinfo->x_dnd_atoms)
* dpyinfo->x_dnd_atoms_size);
+ dpyinfo->net_supported_atoms = NULL;
+ dpyinfo->nr_net_supported_atoms = 0;
+ dpyinfo->net_supported_window = 0;
+
connection = ConnectionNumber (dpyinfo->display);
dpyinfo->connection = connection;
diff --git a/src/xterm.h b/src/xterm.h
index 35ab0816286..141f58168e1 100644
--- a/src/xterm.h
+++ b/src/xterm.h
@@ -1,6 +1,6 @@
/* Definitions and headers for communication with X protocol.
Copyright (C) 1989, 1993, 1994, 1998, 1999, 2000, 2001, 2002, 2003,
- 2004, 2005, 2006 Free Software Foundation, Inc.
+ 2004, 2005, 2006, 2007 Free Software Foundation, Inc.
This file is part of GNU Emacs.
@@ -396,7 +396,10 @@ struct x_display_info
size_t x_dnd_atoms_size;
size_t x_dnd_atoms_length;
- int have_net_atoms;
+ /* Extended window manager hints, Atoms supported by the window manager */
+ Atom *net_supported_atoms;
+ int nr_net_supported_atoms;
+ Window net_supported_window;
};
#ifdef HAVE_X_I18N