diff options
author | Miles Bader <miles@gnu.org> | 2007-01-26 06:16:11 +0000 |
---|---|---|
committer | Miles Bader <miles@gnu.org> | 2007-01-26 06:16:11 +0000 |
commit | b5c3b01ac9e24754df2940f672c0eed8efc98798 (patch) | |
tree | 4686f0632a338b1f01fe9089ab0892e4344482c4 /src | |
parent | b0704ef4a460f65f66ae68d346890abccc596cab (diff) | |
parent | f2dbf244b49b17616264ddcd569ec004937626e7 (diff) | |
download | emacs-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')
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 @@ -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. @@ -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 (¶m, + 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, ¶m, &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 |