aboutsummaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorMiles Bader2004-07-06 02:57:15 +0000
committerMiles Bader2004-07-06 02:57:15 +0000
commit094194de121c8b93c7b183182cb0853ec54fe1aa (patch)
tree1f547e97064f160344acc2e97efbd727636b7255 /src
parentf3265da9821318b9b06c641a8a8d4a3380d4039b (diff)
parent8e975df9c8dee54225ebc71ccf7a7746e05fae2d (diff)
downloademacs-094194de121c8b93c7b183182cb0853ec54fe1aa.tar.gz
emacs-094194de121c8b93c7b183182cb0853ec54fe1aa.zip
Revision: miles@gnu.org--gnu-2004/emacs--unicode--0--patch-22
Merge from emacs--cvs-trunk--0 Patches applied: * miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-431 - miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-441 Update from CVS
Diffstat (limited to 'src')
-rw-r--r--src/ChangeLog103
-rw-r--r--src/Makefile.in2
-rw-r--r--src/eval.c1
-rw-r--r--src/fileio.c17
-rw-r--r--src/fontset.c1
-rw-r--r--src/image.c25
-rw-r--r--src/lisp.h1
-rw-r--r--src/macterm.c17
-rw-r--r--src/msdos.c4
-rw-r--r--src/search.c14
-rw-r--r--src/w32select.c2
-rw-r--r--src/xfaces.c6
-rw-r--r--src/xterm.c2
13 files changed, 135 insertions, 60 deletions
diff --git a/src/ChangeLog b/src/ChangeLog
index 60b8d5da63d..254069032ed 100644
--- a/src/ChangeLog
+++ b/src/ChangeLog
@@ -1,11 +1,64 @@
12004-07-06 John Paul Wallington <jpw@gnu.org>
2
3 * eval.c (Fdefmacro): Signal an error if NAME is not a symbol.
4
52004-07-05 Jan Dj,Ad(Brv <jan.h.d@swipnet.se>
6
7 * macterm.c (mac_initialize_display_info): Use CGGetActiveDisplayList
8 instead of CGMainDisplayID (only in OSX 10.2 and later).
9
102004-07-04 John Paul Wallington <jpw@gnu.org>
11
12 * fileio.c (read_file_name_completion_ignore_case): New variable.
13 (syms_of_fileio): Declare and initialise it.
14 (Fread_file_name): Bind `completion-ignore-case' to respect it.
15
162004-07-03 Eli Zaretskii <eliz@gnu.org>
17
18 * msdos.c (dos_rawgetc): Use make_number to produce Lisp objects
19 for event.x and event.y.
20
212004-07-01 Kenichi Handa <handa@m17n.org>
22
23 * w32select.c (Fw32_set_clipboard_data): Update `nbytes' correctly
24 after getting a new string by pre-write-conversion.
25
262004-06-30 Stefan <monnier@iro.umontreal.ca>
27
28 * xterm.c (x_detect_focus_change): Remove unused var `nr_events'.
29 (x_calc_absolute_position): Remove unused var `child'.
30
31 * xfaces.c (x_supports_face_attributes_p)
32 (Fdisplay_supports_face_attributes_p): YAILOM.
33 (tty_supports_face_attributes_p): Remove unused var `i'.
34
35 * syntax.c (skip_chars): Remove unused labels fwd_unibyte_ok and
36 back_unibyte_ok.
37
38 * search.c (match_limit, Fmatch_data, Fset_match_data): YAILOM.
39
40 * fontset.c (Fset_fontset_font): Remove unused vars `family' and `registry'.
41
42 * Makefile.in (${etc}DOC): Fix file name of make-docfile.
43
442004-06-30 Andreas Schwab <schwab@suse.de>
45
46 * image.c (CHECK_LIB_AVAILABLE): Add third parameter LIBRARIES.
47 (Finit_image_library): Pass LIBRARIES through to
48 CHECK_LIB_AVAILABLE. Declare parameters. Doc fix.
49 (lookup_image_type): Pass Qnil as second argument to
50 Finit_image_library.
51
52 * lisp.h: Declare Finit_image_library.
53
12004-06-29 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp> 542004-06-29 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2 55
3 * macterm.c (do_window_activate, do_window_deactivate): Remove. 56 * macterm.c (do_window_activate, do_window_deactivate): Remove.
4 (XTread_socket): Send mouse button events to the toolbox 57 (XTread_socket): Send mouse button events to the toolbox
5 dispatcher even when the mouse is grabbed. Don't process window 58 dispatcher even when the mouse is grabbed. Don't process window
6 activate events for non-Emacs windows. Replace function calls to 59 activate events for non-Emacs windows. Replace function calls to
7 do_window_activate and do_window_deactivate with their contents. 60 do_window_activate and do_window_deactivate with their contents.
8 Reset mouse grabbing status when a window is deactivated. 61 Reset mouse grabbing status when a window is deactivated.
9 62
102004-06-29 Steven Tamm <steventamm@mac.com> 632004-06-29 Steven Tamm <steventamm@mac.com>
11 64
@@ -60,8 +113,7 @@
60 a buffer, add the buffer as last element to the match data. 113 a buffer, add the buffer as last element to the match data.
61 (Fset_match_data): If an additional element of the match-data is a 114 (Fset_match_data): If an additional element of the match-data is a
62 buffer, restore it to last_thing_searched. 115 buffer, restore it to last_thing_searched.
63 (save_search_regs): Save last_thing_searched as part of the match 116 (save_search_regs): Save last_thing_searched as part of the match data.
64 data.
65 (restore_match_data): Restore it again. 117 (restore_match_data): Restore it again.
66 118
672004-06-23 Luc Teirlinck <teirllm@auburn.edu> 1192004-06-23 Luc Teirlinck <teirllm@auburn.edu>
@@ -187,7 +239,7 @@
1872004-06-14 Jan Dj,Ad(Brv <jan.h.d@swipnet.se> 2392004-06-14 Jan Dj,Ad(Brv <jan.h.d@swipnet.se>
188 240
189 * gtkutil.c (xg_get_image_for_pixmap): New function. 241 * gtkutil.c (xg_get_image_for_pixmap): New function.
190 (xg_get_gdk_pixmap_and_mask): Removed. 242 (xg_get_gdk_pixmap_and_mask): Remove.
191 (update_frame_tool_bar): Call xg_get_image_for_pixmap instead of 243 (update_frame_tool_bar): Call xg_get_image_for_pixmap instead of
192 xg_get_gdk_pixmap_and_mask. 244 xg_get_gdk_pixmap_and_mask.
193 245
@@ -208,8 +260,7 @@
208 list of possible filenames. 260 list of possible filenames.
209 (init_xpm_functions, init_png_functions, init_jpeg_functions) 261 (init_xpm_functions, init_png_functions, init_jpeg_functions)
210 (init_tiff_functions, init_gif_functions): Use `w32_delayed_load'. 262 (init_tiff_functions, init_gif_functions): Use `w32_delayed_load'.
211 (CHECK_LIB_AVAILABLE): Call `define_image_library' with new 263 (CHECK_LIB_AVAILABLE): Call `define_image_library' with new argument.
212 argument.
213 (Finit_image_library): New function, extracted from `init_image'. 264 (Finit_image_library): New function, extracted from `init_image'.
214 Try to initialize an image library on demand and cache whether we 265 Try to initialize an image library on demand and cache whether we
215 were successful or not. 266 were successful or not.
@@ -333,7 +384,7 @@
333 (merge_face_ref, face_at_buffer_position, face_at_string_position): 384 (merge_face_ref, face_at_buffer_position, face_at_string_position):
334 Use `merge_named_face'. 385 Use `merge_named_face'.
335 (merge_face_inheritance): Function removed. 386 (merge_face_inheritance): Function removed.
336 (merge_face_ref): Renamed from `merge_face_vector_with_property'. 387 (merge_face_ref): Rename from `merge_face_vector_with_property'.
337 Add new `err_msgs' and `named_merge_points' args. Return error 388 Add new `err_msgs' and `named_merge_points' args. Return error
338 status. Only print error messages if ERR_MSGS is true. Don't try to 389 status. Only print error messages if ERR_MSGS is true. Don't try to
339 do :inherit attribute validation. 390 do :inherit attribute validation.
@@ -393,8 +444,8 @@
393 444
394 * xfaces.c (x_supports_face_attributes_p): Make this function 445 * xfaces.c (x_supports_face_attributes_p): Make this function
395 conditional on HAVE_WINDOW_SYSTEM. 446 conditional on HAVE_WINDOW_SYSTEM.
396 (Fdisplay_supports_face_attributes_p) [HAVE_WINDOW_SYSTEM]: Don't 447 (Fdisplay_supports_face_attributes_p) [HAVE_WINDOW_SYSTEM]:
397 call x_supports_face_attributes_p if it was not compiled in. 448 Don't call x_supports_face_attributes_p if it was not compiled in.
398 449
3992004-06-04 Miles Bader <miles@gnu.org> 4502004-06-04 Miles Bader <miles@gnu.org>
400 451
@@ -425,6 +476,8 @@
425 476
4262004-06-01 Stefan Monnier <monnier@iro.umontreal.ca> 4772004-06-01 Stefan Monnier <monnier@iro.umontreal.ca>
427 478
479 * eval.c (Fcondition_case): Fix usage. Simplify.
480
428 * mem-limits.h (EXCEEDS_LISP_PTR) [USE_LSB_TAG]: Never true. 481 * mem-limits.h (EXCEEDS_LISP_PTR) [USE_LSB_TAG]: Never true.
429 482
4302004-05-29 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp> 4832004-05-29 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
@@ -433,8 +486,7 @@
433 [MAC_OSX]: Don't include QuickTime/QuickTime.h. 486 [MAC_OSX]: Don't include QuickTime/QuickTime.h.
434 [!MAC_OSX]: Don't include alloca.h, Windows.h, Gestalt.h, or 487 [!MAC_OSX]: Don't include alloca.h, Windows.h, Gestalt.h, or
435 TextUtils.h. 488 TextUtils.h.
436 (Fx_create_frame): Sync with xfns.c. Initialize cursor 489 (Fx_create_frame): Sync with xfns.c. Initialize cursor descriptors.
437 descriptors.
438 (Fx_display_mm_height, Fx_display_mm_width): Calculate length from 490 (Fx_display_mm_height, Fx_display_mm_width): Calculate length from
439 display height/width. 491 display height/width.
440 (compute_tip_xy, Vx_max_tooltip_size): Declare. 492 (compute_tip_xy, Vx_max_tooltip_size): Declare.
@@ -445,8 +497,7 @@
445 497
446 * macgui.h [!MAC_OSX]: Include Gestalt.h. 498 * macgui.h [!MAC_OSX]: Include Gestalt.h.
447 (Cursor, No_Cursor): New defines. 499 (Cursor, No_Cursor): New defines.
448 [!TARGET_API_MAC_CARBON] (SetPortWindowPort): New compatibility 500 [!TARGET_API_MAC_CARBON] (SetPortWindowPort): New compatibility macro.
449 macro.
450 [!TARGET_API_MAC_CARBON] (arrow_cursor): Declare. 501 [!TARGET_API_MAC_CARBON] (arrow_cursor): Declare.
451 502
452 * macmenu.c (mac_menu_show, mac_dialog): Use SetPortWindowPort. 503 * macmenu.c (mac_menu_show, mac_dialog): Use SetPortWindowPort.
@@ -474,11 +525,9 @@
474 (x_scroll_bar_handle_click): Set `(PORTION . WHOLE)' part in a 525 (x_scroll_bar_handle_click): Set `(PORTION . WHOLE)' part in a
475 scroll-bar click event. 526 scroll-bar click event.
476 (mac_define_frame_cursor): Change the pointer shape. 527 (mac_define_frame_cursor): Change the pointer shape.
477 (x_free_frame_resources): Reset tip_window to NULL when it is 528 (x_free_frame_resources): Reset tip_window to NULL when it is disposed.
478 disposed.
479 [!TARGET_API_MAC_CARBON] (arrow_cursor): New variable. 529 [!TARGET_API_MAC_CARBON] (arrow_cursor): New variable.
480 [!TARGET_API_MAC_CARBON] (do_init_managers): Initialize 530 [!TARGET_API_MAC_CARBON] (do_init_managers): Initialize arrow_cursor.
481 arrow_cursor.
482 (do_window_update): Don't do anything if the updated window is the 531 (do_window_update): Don't do anything if the updated window is the
483 tooltip window. 532 tooltip window.
484 (do_mouse_moved): Handle mouse movement events here (previously in 533 (do_mouse_moved): Handle mouse movement events here (previously in
@@ -486,8 +535,8 @@
486 dpyinfo->mouse_face_hidden is set. 535 dpyinfo->mouse_face_hidden is set.
487 (do_os_event, do_events): Remove (now in XTread_socket). 536 (do_os_event, do_events): Remove (now in XTread_socket).
488 (XTread_socket): Immediately return if interrupt_input_blocked. 537 (XTread_socket): Immediately return if interrupt_input_blocked.
489 Loop until all the events in the queue are processed. Rearrange 538 Loop until all the events in the queue are processed.
490 codes for mouse grabbing. Add tooltip support. Include the 539 Rearrange codes for mouse grabbing. Add tooltip support. Include the
491 contents of do_os_event and do_events. Remove mouse movement 540 contents of do_os_event and do_events. Remove mouse movement
492 handling (now in do_mouse_moved). Add the case where 541 handling (now in do_mouse_moved). Add the case where
493 Vmouse_highlight has an integer value. 542 Vmouse_highlight has an integer value.
@@ -496,8 +545,8 @@
496 excess initializations. 545 excess initializations.
497 (make_mac_terminal_frame): Previous initializations in 546 (make_mac_terminal_frame): Previous initializations in
498 make_mac_frame are moved here. 547 make_mac_frame are moved here.
499 (mac_initialize_display_info): Initialize 548 (mac_initialize_display_info):
500 dpyinfo->mouse_face_overlay and dpyinfo->mouse_face_hidden. 549 Initialize dpyinfo->mouse_face_overlay and dpyinfo->mouse_face_hidden.
501 550
502 * xdisp.c [MAC_OS] (No_Cursor): Remove variable. 551 * xdisp.c [MAC_OS] (No_Cursor): Remove variable.
503 (define_frame_cursor1): Don't treat HAVE_CARBON as a special case. 552 (define_frame_cursor1): Don't treat HAVE_CARBON as a special case.
diff --git a/src/Makefile.in b/src/Makefile.in
index edfe548ec90..2ec1dad4c2e 100644
--- a/src/Makefile.in
+++ b/src/Makefile.in
@@ -910,7 +910,7 @@ emacs${EXEEXT}: temacs${EXEEXT} ${etc}DOC ${lisp}
910 for the first time, this prevents any variation between configurations 910 for the first time, this prevents any variation between configurations
911 in the contents of the DOC file. 911 in the contents of the DOC file.
912 Likewise for ${SOME_MACHINE_LISP}. */ 912 Likewise for ${SOME_MACHINE_LISP}. */
913${etc}DOC: ${libsrc}make-docfile ${obj} ${shortlisp} ${SOME_MACHINE_LISP} 913${etc}DOC: ${libsrc}make-docfile${EXEEXT} ${obj} ${shortlisp} ${SOME_MACHINE_LISP}
914 -rm -f ${etc}DOC 914 -rm -f ${etc}DOC
915 ${libsrc}make-docfile -d ${srcdir} ${SOME_MACHINE_OBJECTS} ${obj} > ${etc}DOC 915 ${libsrc}make-docfile -d ${srcdir} ${SOME_MACHINE_OBJECTS} ${obj} > ${etc}DOC
916 ${libsrc}make-docfile -a ${etc}DOC -d ${srcdir} ${SOME_MACHINE_LISP} ${shortlisp} 916 ${libsrc}make-docfile -a ${etc}DOC -d ${srcdir} ${SOME_MACHINE_LISP} ${shortlisp}
diff --git a/src/eval.c b/src/eval.c
index 096755f9c77..d7cfe959158 100644
--- a/src/eval.c
+++ b/src/eval.c
@@ -657,6 +657,7 @@ usage: (defmacro NAME ARGLIST [DOCSTRING] [DECL] BODY...) */)
657 Lisp_Object lambda_list, doc, tail; 657 Lisp_Object lambda_list, doc, tail;
658 658
659 fn_name = Fcar (args); 659 fn_name = Fcar (args);
660 CHECK_SYMBOL (fn_name);
660 lambda_list = Fcar (Fcdr (args)); 661 lambda_list = Fcar (Fcdr (args));
661 tail = Fcdr (Fcdr (args)); 662 tail = Fcdr (Fcdr (args));
662 663
diff --git a/src/fileio.c b/src/fileio.c
index 42f3949c917..a032a179ee1 100644
--- a/src/fileio.c
+++ b/src/fileio.c
@@ -206,6 +206,9 @@ Lisp_Object Vread_file_name_function;
206/* Current predicate used by read_file_name_internal. */ 206/* Current predicate used by read_file_name_internal. */
207Lisp_Object Vread_file_name_predicate; 207Lisp_Object Vread_file_name_predicate;
208 208
209/* Nonzero means completion ignores case when reading file name. */
210int read_file_name_completion_ignore_case;
211
209/* Nonzero means, when reading a filename in the minibuffer, 212/* Nonzero means, when reading a filename in the minibuffer,
210 start out by inserting the default directory into the minibuffer. */ 213 start out by inserting the default directory into the minibuffer. */
211int insert_default_directory; 214int insert_default_directory;
@@ -6197,10 +6200,8 @@ provides a file dialog box. */)
6197 } 6200 }
6198 6201
6199 count = SPECPDL_INDEX (); 6202 count = SPECPDL_INDEX ();
6200#if defined VMS || defined DOS_NT || defined MAC_OSX 6203 specbind (intern ("completion-ignore-case"),
6201 specbind (intern ("completion-ignore-case"), Qt); 6204 read_file_name_completion_ignore_case ? Qt : Qnil);
6202#endif
6203
6204 specbind (intern ("minibuffer-completing-file-name"), Qt); 6205 specbind (intern ("minibuffer-completing-file-name"), Qt);
6205 specbind (intern ("read-file-name-predicate"), 6206 specbind (intern ("read-file-name-predicate"),
6206 (NILP (predicate) ? Qfile_exists_p : predicate)); 6207 (NILP (predicate) ? Qfile_exists_p : predicate));
@@ -6436,6 +6437,14 @@ same format as a regular save would use. */);
6436 doc: /* Current predicate used by `read-file-name-internal'. */); 6437 doc: /* Current predicate used by `read-file-name-internal'. */);
6437 Vread_file_name_predicate = Qnil; 6438 Vread_file_name_predicate = Qnil;
6438 6439
6440 DEFVAR_BOOL ("read-file-name-completion-ignore-case", &read_file_name_completion_ignore_case,
6441 doc: /* *Non-nil means when reading a file name completion ignores case. */);
6442#if defined VMS || defined DOS_NT || defined MAC_OS
6443 read_file_name_completion_ignore_case = 1;
6444#else
6445 read_file_name_completion_ignore_case = 0;
6446#endif
6447
6439 DEFVAR_BOOL ("insert-default-directory", &insert_default_directory, 6448 DEFVAR_BOOL ("insert-default-directory", &insert_default_directory,
6440 doc: /* *Non-nil means when reading a filename start with default dir in minibuffer. 6449 doc: /* *Non-nil means when reading a filename start with default dir in minibuffer.
6441If the initial minibuffer contents are non-empty, you can usually 6450If the initial minibuffer contents are non-empty, you can usually
diff --git a/src/fontset.c b/src/fontset.c
index 016c62f0e50..4901fc71419 100644
--- a/src/fontset.c
+++ b/src/fontset.c
@@ -1,4 +1,5 @@
1/* Fontset handler. 1/* Fontset handler.
2 Copyright (C) 2004 Free Software Foundation, Inc.
2 Copyright (C) 1995, 1997, 2000 Electrotechnical Laboratory, JAPAN. 3 Copyright (C) 1995, 1997, 2000 Electrotechnical Laboratory, JAPAN.
3 Licensed to the Free Software Foundation. 4 Licensed to the Free Software Foundation.
4 Copyright (C) 2003 5 Copyright (C) 2003
diff --git a/src/image.c b/src/image.c
index 438e132807f..4ab672ca58e 100644
--- a/src/image.c
+++ b/src/image.c
@@ -675,7 +675,7 @@ define_image_type (type, loaded)
675 success = Qt; 675 success = Qt;
676 } 676 }
677 677
678 CACHE_IMAGE_TYPE(*type->type, success); 678 CACHE_IMAGE_TYPE (*type->type, success);
679 return success; 679 return success;
680} 680}
681 681
@@ -690,7 +690,7 @@ lookup_image_type (symbol)
690 struct image_type *type; 690 struct image_type *type;
691 691
692 /* We must initialize the image-type if it hasn't been already. */ 692 /* We must initialize the image-type if it hasn't been already. */
693 if (NILP (Finit_image_library (symbol))) 693 if (NILP (Finit_image_library (symbol, Qnil)))
694 return 0; /* unimplemented */ 694 return 0; /* unimplemented */
695 695
696 for (type = image_types; type; type = type->next) 696 for (type = image_types; type; type = type->next)
@@ -7927,10 +7927,10 @@ DEFUN ("lookup-image", Flookup_image, Slookup_image, 1, 1, 0, "")
7927#ifdef HAVE_NTGUI 7927#ifdef HAVE_NTGUI
7928/* Image types that rely on external libraries are loaded dynamically 7928/* Image types that rely on external libraries are loaded dynamically
7929 if the library is available. */ 7929 if the library is available. */
7930#define CHECK_LIB_AVAILABLE(image_type, init_lib_fn) \ 7930#define CHECK_LIB_AVAILABLE(image_type, init_lib_fn, libraries) \
7931 define_image_type (image_type, init_lib_fn (libraries)) 7931 define_image_type (image_type, init_lib_fn (libraries))
7932#else 7932#else
7933#define CHECK_LIB_AVAILABLE(image_type, init_lib_fn) \ 7933#define CHECK_LIB_AVAILABLE(image_type, init_lib_fn, libraries) \
7934 define_image_type (image_type, TRUE) 7934 define_image_type (image_type, TRUE)
7935#endif /* HAVE_NTGUI */ 7935#endif /* HAVE_NTGUI */
7936 7936
@@ -7940,8 +7940,9 @@ Return non-nil if TYPE is a supported image type.
7940 7940
7941Image types pbm and xbm are prebuilt; other types are loaded here. 7941Image types pbm and xbm are prebuilt; other types are loaded here.
7942Libraries to load are specified in alist LIBRARIES (usually, the value 7942Libraries to load are specified in alist LIBRARIES (usually, the value
7943of `image-library-alist', which see. */) 7943of `image-library-alist', which see). */)
7944 (type, libraries) 7944 (type, libraries)
7945 Lisp_Object type, libraries;
7945{ 7946{
7946 Lisp_Object tested; 7947 Lisp_Object tested;
7947 7948
@@ -7952,36 +7953,36 @@ of `image-library-alist', which see. */)
7952 7953
7953#if defined (HAVE_XPM) || defined (MAC_OS) 7954#if defined (HAVE_XPM) || defined (MAC_OS)
7954 if (EQ (type, Qxpm)) 7955 if (EQ (type, Qxpm))
7955 return CHECK_LIB_AVAILABLE(&xpm_type, init_xpm_functions); 7956 return CHECK_LIB_AVAILABLE (&xpm_type, init_xpm_functions, libraries);
7956#endif 7957#endif
7957 7958
7958#if defined (HAVE_JPEG) || defined (MAC_OS) 7959#if defined (HAVE_JPEG) || defined (MAC_OS)
7959 if (EQ (type, Qjpeg)) 7960 if (EQ (type, Qjpeg))
7960 return CHECK_LIB_AVAILABLE(&jpeg_type, init_jpeg_functions); 7961 return CHECK_LIB_AVAILABLE (&jpeg_type, init_jpeg_functions, libraries);
7961#endif 7962#endif
7962 7963
7963#if defined (HAVE_TIFF) || defined (MAC_OS) 7964#if defined (HAVE_TIFF) || defined (MAC_OS)
7964 if (EQ (type, Qtiff)) 7965 if (EQ (type, Qtiff))
7965 return CHECK_LIB_AVAILABLE(&tiff_type, init_tiff_functions); 7966 return CHECK_LIB_AVAILABLE (&tiff_type, init_tiff_functions, libraries);
7966#endif 7967#endif
7967 7968
7968#if defined (HAVE_GIF) || defined (MAC_OS) 7969#if defined (HAVE_GIF) || defined (MAC_OS)
7969 if (EQ (type, Qgif)) 7970 if (EQ (type, Qgif))
7970 return CHECK_LIB_AVAILABLE(&gif_type, init_gif_functions); 7971 return CHECK_LIB_AVAILABLE (&gif_type, init_gif_functions, libraries);
7971#endif 7972#endif
7972 7973
7973#if defined (HAVE_PNG) || defined (MAC_OS) 7974#if defined (HAVE_PNG) || defined (MAC_OS)
7974 if (EQ (type, Qpng)) 7975 if (EQ (type, Qpng))
7975 return CHECK_LIB_AVAILABLE(&png_type, init_png_functions); 7976 return CHECK_LIB_AVAILABLE (&png_type, init_png_functions, libraries);
7976#endif 7977#endif
7977 7978
7978#ifdef HAVE_GHOSTSCRIPT 7979#ifdef HAVE_GHOSTSCRIPT
7979 if (EQ (type, Qpostscript)) 7980 if (EQ (type, Qpostscript))
7980 return CHECK_LIB_AVAILABLE(&gs_type, init_gs_functions); 7981 return CHECK_LIB_AVAILABLE (&gs_type, init_gs_functions, libraries);
7981#endif 7982#endif
7982 7983
7983 /* If the type is not recognized, avoid testing it ever again. */ 7984 /* If the type is not recognized, avoid testing it ever again. */
7984 CACHE_IMAGE_TYPE(type, Qnil); 7985 CACHE_IMAGE_TYPE (type, Qnil);
7985 return Qnil; 7986 return Qnil;
7986} 7987}
7987 7988
diff --git a/src/lisp.h b/src/lisp.h
index aba3073dc68..780ee76c271 100644
--- a/src/lisp.h
+++ b/src/lisp.h
@@ -2348,6 +2348,7 @@ extern void init_fringe P_ ((void));
2348extern void init_fringe_once P_ ((void)); 2348extern void init_fringe_once P_ ((void));
2349 2349
2350/* Defined in image.c */ 2350/* Defined in image.c */
2351EXFUN (Finit_image_library, 2);
2351extern void syms_of_image P_ ((void)); 2352extern void syms_of_image P_ ((void));
2352extern void init_image P_ ((void)); 2353extern void init_image P_ ((void));
2353 2354
diff --git a/src/macterm.c b/src/macterm.c
index 04d6ec3be64..149e37741bc 100644
--- a/src/macterm.c
+++ b/src/macterm.c
@@ -8854,8 +8854,21 @@ mac_initialize_display_info ()
8854 dpyinfo->color_p = TestDeviceAttribute (main_device_handle, gdDevType); 8854 dpyinfo->color_p = TestDeviceAttribute (main_device_handle, gdDevType);
8855#ifdef MAC_OSX 8855#ifdef MAC_OSX
8856 /* HasDepth returns true if it is possible to have a 32 bit display, 8856 /* HasDepth returns true if it is possible to have a 32 bit display,
8857 but this may not be what is actually used. Mac OSX can do better. */ 8857 but this may not be what is actually used. Mac OSX can do better.
8858 dpyinfo->n_planes = CGDisplayBitsPerPixel (CGMainDisplayID ()); 8858 CGMainDisplayID is only available on OSX 10.2 and higher, but the
8859 header for CGGetActiveDisplayList says that the first display returned
8860 is the active one, so we use that. */
8861 {
8862 CGDirectDisplayID disp_id[1];
8863 CGDisplayCount disp_count;
8864 CGDisplayErr error_code;
8865
8866 error_code = CGGetActiveDisplayList (1, disp_id, &disp_count);
8867 if (error_code != 0)
8868 error ("No display found, CGGetActiveDisplayList error %d", error_code);
8869
8870 dpyinfo->n_planes = CGDisplayBitsPerPixel (disp_id[0]);
8871 }
8859#else 8872#else
8860 for (dpyinfo->n_planes = 32; dpyinfo->n_planes > 0; dpyinfo->n_planes >>= 1) 8873 for (dpyinfo->n_planes = 32; dpyinfo->n_planes > 0; dpyinfo->n_planes >>= 1)
8861 if (HasDepth (main_device_handle, dpyinfo->n_planes, 8874 if (HasDepth (main_device_handle, dpyinfo->n_planes,
diff --git a/src/msdos.c b/src/msdos.c
index d0de02aba3f..0aec39e1440 100644
--- a/src/msdos.c
+++ b/src/msdos.c
@@ -3456,8 +3456,8 @@ dos_rawgetc ()
3456 event.code = button_num; 3456 event.code = button_num;
3457 event.modifiers = dos_get_modifiers (0) 3457 event.modifiers = dos_get_modifiers (0)
3458 | (press ? down_modifier : up_modifier); 3458 | (press ? down_modifier : up_modifier);
3459 event.x = x; 3459 event.x = make_number (x);
3460 event.y = y; 3460 event.y = make_number (y);
3461 event.frame_or_window = selected_frame; 3461 event.frame_or_window = selected_frame;
3462 event.arg = Qnil; 3462 event.arg = Qnil;
3463 event.timestamp = event_timestamp (); 3463 event.timestamp = event_timestamp ();
diff --git a/src/search.c b/src/search.c
index bb3f222e2c1..11ff90df014 100644
--- a/src/search.c
+++ b/src/search.c
@@ -1,5 +1,6 @@
1/* String search routines for GNU Emacs. 1/* String search routines for GNU Emacs.
2 Copyright (C) 1985, 86,87,93,94,97,98, 1999 Free Software Foundation, Inc. 2 Copyright (C) 1985, 86,87,93,94,97,98, 1999, 2004
3 Free Software Foundation, Inc.
3 4
4This file is part of GNU Emacs. 5This file is part of GNU Emacs.
5 6
@@ -2582,7 +2583,7 @@ match_limit (num, beginningp)
2582 CHECK_NUMBER (num); 2583 CHECK_NUMBER (num);
2583 n = XINT (num); 2584 n = XINT (num);
2584 if (n < 0) 2585 if (n < 0)
2585 args_out_of_range (num, 0); 2586 args_out_of_range (num, make_number (0));
2586 if (search_regs.num_regs <= 0) 2587 if (search_regs.num_regs <= 0)
2587 error ("No match data, because no search succeeded"); 2588 error ("No match data, because no search succeeded");
2588 if (n >= search_regs.num_regs 2589 if (n >= search_regs.num_regs
@@ -2682,10 +2683,9 @@ Return value is undefined if the last search failed. */)
2682 data[2 * i] = data [2 * i + 1] = Qnil; 2683 data[2 * i] = data [2 * i + 1] = Qnil;
2683 } 2684 }
2684 2685
2685 if (BUFFERP(last_thing_searched) 2686 if (BUFFERP (last_thing_searched) && !NILP (integers))
2686 && ! NILP (integers))
2687 { 2687 {
2688 XSETBUFFER(data[len], last_thing_searched); 2688 data[len] = last_thing_searched;
2689 len++; 2689 len++;
2690 } 2690 }
2691 2691
@@ -2765,9 +2765,9 @@ LIST should have been created by calling `match-data' previously. */)
2765 for (i = 0;; i++) 2765 for (i = 0;; i++)
2766 { 2766 {
2767 marker = Fcar (list); 2767 marker = Fcar (list);
2768 if (BUFFERP(marker)) 2768 if (BUFFERP (marker))
2769 { 2769 {
2770 XSETBUFFER(last_thing_searched, marker); 2770 last_thing_searched = marker;
2771 break; 2771 break;
2772 } 2772 }
2773 if (i >= length) 2773 if (i >= length)
diff --git a/src/w32select.c b/src/w32select.c
index cc0ca64fab8..af3d477f876 100644
--- a/src/w32select.c
+++ b/src/w32select.c
@@ -130,6 +130,8 @@ DEFUN ("w32-set-clipboard-data", Fw32_set_clipboard_data,
130 130
131 BLOCK_INPUT; 131 BLOCK_INPUT;
132 132
133 /* Include the terminating NULL character in the source of
134 conversion. */
133 nbytes = SBYTES (string) + 1; 135 nbytes = SBYTES (string) + 1;
134 src = SDATA (string); 136 src = SDATA (string);
135 dst = src; 137 dst = src;
diff --git a/src/xfaces.c b/src/xfaces.c
index be9c9af685a..6ee06ba5f76 100644
--- a/src/xfaces.c
+++ b/src/xfaces.c
@@ -5986,7 +5986,7 @@ x_supports_face_attributes_p (f, attrs, def_face)
5986 face = FACE_FROM_ID (f, face_id); 5986 face = FACE_FROM_ID (f, face_id);
5987 5987
5988 if (! face) 5988 if (! face)
5989 signal_error ("cannot make face", 0); 5989 error ("cannot make face");
5990 5990
5991 /* If the font is the same, then not supported. */ 5991 /* If the font is the same, then not supported. */
5992 if (face->font == def_face->font) 5992 if (face->font == def_face->font)
@@ -6021,7 +6021,7 @@ tty_supports_face_attributes_p (f, attrs, def_face)
6021 Lisp_Object *attrs; 6021 Lisp_Object *attrs;
6022 struct face *def_face; 6022 struct face *def_face;
6023{ 6023{
6024 int weight, i; 6024 int weight;
6025 Lisp_Object val, fg, bg; 6025 Lisp_Object val, fg, bg;
6026 XColor fg_tty_color, fg_std_color; 6026 XColor fg_tty_color, fg_std_color;
6027 XColor bg_tty_color, bg_std_color; 6027 XColor bg_tty_color, bg_std_color;
@@ -6243,7 +6243,7 @@ face for italic. */)
6243 if (def_face == NULL) 6243 if (def_face == NULL)
6244 { 6244 {
6245 if (! realize_basic_faces (f)) 6245 if (! realize_basic_faces (f))
6246 signal_error ("Cannot realize default face", 0); 6246 error ("Cannot realize default face");
6247 def_face = FACE_FROM_ID (f, DEFAULT_FACE_ID); 6247 def_face = FACE_FROM_ID (f, DEFAULT_FACE_ID);
6248 } 6248 }
6249 6249
diff --git a/src/xterm.c b/src/xterm.c
index 3e606e2560a..6eb106e5b3f 100644
--- a/src/xterm.c
+++ b/src/xterm.c
@@ -3265,7 +3265,6 @@ x_detect_focus_change (dpyinfo, event, bufp)
3265 struct input_event *bufp; 3265 struct input_event *bufp;
3266{ 3266{
3267 struct frame *frame; 3267 struct frame *frame;
3268 int nr_events = 0;
3269 3268
3270 frame = x_any_window_to_frame (dpyinfo, event->xany.window); 3269 frame = x_any_window_to_frame (dpyinfo, event->xany.window);
3271 if (! frame) 3270 if (! frame)
@@ -8223,7 +8222,6 @@ void
8223x_calc_absolute_position (f) 8222x_calc_absolute_position (f)
8224 struct frame *f; 8223 struct frame *f;
8225{ 8224{
8226 Window child;
8227 int win_x = 0, win_y = 0; 8225 int win_x = 0, win_y = 0;
8228 int flags = f->size_hint_flags; 8226 int flags = f->size_hint_flags;
8229 8227