ChangeLog 241 KB
Newer Older
Francesco Potortì's avatar
Francesco Potortì committed
1 2 3 4 5 6 7 8 9 10 11 12 13 14
2003-01-15  Francesco Potort,Al(B  <pot@gnu.org>

	* fns.c (Fsubstring): Clarify doc string.

	* textprop.c (Ftext_properties_at, Fnext_char_property_change)
	(Fprevious_char_property_change)
	(Fnext_single_char_property_change)
	(Fprevious_single_char_property_change, Fnext_property_change)
	(Fnext_single_property_change, Fprevious_property_change)
	(Fprevious_single_property_change, Fadd_text_properties)
	(Fput_text_property, Fset_text_properties)
	(Fremove_text_properties, Fremove_list_of_text_properties)
	(Ftext_property_any, Ftext_property_not_all): Clarify doc strings.

Kim F. Storm's avatar
Kim F. Storm committed
15 16 17 18 19 20 21 22 23 24 25 26
2003-01-14  Kim F. Storm  <storm@cua.dk>

	* process.h (struct Lisp_Process): New member plist replaces old
	member private_vars.  All uses changed.

	* process.c: Reworked 2003-01-12 change -- call a plist a plist!
	(QCplist): Renamed from QCvars.  All uses changed.
	(Fprocess_plist): Replaces Fprocess_variable.  Simplified.
	(Fset_process_plist): Replaces Fset_process_variable.  Simplified.
	(syms_of_process): Intern, staticpro, defsubr these.
	(Fmake_network_process): Describe :plist arg.  Removed :vars arg.

Francesco Potortì's avatar
Francesco Potortì committed
27 28 29 30
2003-01-14  Francesco Potort,Al(B  <pot@gnu.org>

	* m/delta.h: Removed (obsolete).

Francesco Potortì's avatar
Francesco Potortì committed
31 32 33 34 35 36
2003-01-13  Francesco Potort,Al(B  <pot@gnu.org>

	* fileio.c (Fdelete_directory, Fdelete_file): Document the
	behaviour in front of symlinks.
	(Fdelete_file): Raise an error on directories.

Dave Love's avatar
Dave Love committed
37 38 39 40
2003-01-13  Dave Love  <fx@gnu.org>

	* fns.c (Freverse): Use QUIT.

41 42
2003-01-13  Richard M. Stallman  <rms@gnu.org>

Francesco Potortì's avatar
Francesco Potortì committed
43
	* minibuf.c (minibuffer_completion_contents):
44 45 46 47 48 49 50 51
	Error if point is inside prompt.

	* keyboard.c (command_loop_1): Don't redisplay directly
	if there's a post-command-hook.

	* fileio.c (syms_of_fileio) <directory-sep-char>: Doc fix.
	(Fdo_auto_save): Add gcpros around Ffile_name_directory.

Kim F. Storm's avatar
Kim F. Storm committed
52 53
2003-01-12  Kim F. Storm  <storm@cua.dk>

54 55
	* process.h (struct Lisp_Process): New member private_vars.

Kim F. Storm's avatar
Kim F. Storm committed
56
	* process.c (QCvars): New variable.
57
	(syms_of_process): Intern and staticpro it.
Kim F. Storm's avatar
Kim F. Storm committed
58
	(Fset_process_contact): Removed function.
59 60 61 62 63 64 65 66
	(Fprocess_variable, Fset_process_variable): New functions.
	(syms_of_process): Defsubr them.
	(Fstart_process): Initialize private_vars plist to nil.
	(Fmake_network_process): New arg :vars to setup the private
	variables for new network process.
	(server_accept_connection): Copy server's private variables to
	client process.

67 68 69 70
	* alloc.c (pure_alloc): Fixed 2003-01-10 changed (caused spurious
	crashes).  Code rewritten and simplified.  Now directly aligns the
	pointer and recalculates pure_bytes_used, rather than aligning the
	size and adjusting the pointer.
Kim F. Storm's avatar
Kim F. Storm committed
71

Kim F. Storm's avatar
Kim F. Storm committed
72 73 74 75 76 77
2003-01-11  Kim F. Storm  <storm@cua.dk>

	* process.c (Fset_process_contact): New function.
	(syms_of_process): defsubr it.
	(make-network-process): Update doc.

78 79 80 81 82
2003-01-10  Andreas Schwab  <schwab@suse.de>

	* alloc.c (pure_alloc): Correct alignment for Lisp_Floats.
	Reported by Berthold Gunreben <b.gunreben@web.de>.

83 84 85 86 87
2003-01-10  Dave Love  <fx@gnu.org>

	* composite.c (syms_of_composite): Make composition_hash_table
	weak.

Kim F. Storm's avatar
Kim F. Storm committed
88 89 90 91 92
2003-01-09  Kim F. Storm  <storm@cua.dk>

	* process.c (Fmake_network_process): Convert new port number
	to host byte order for `:service t' case.  From Mario Lang.

Jan Djärv's avatar
Jan Djärv committed
93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109
2003-01-08  Jan D.  <jan.h.d@swipnet.se>

	* xfns.c (Fx_file_dialog): Call XtAppNextEvent and x_dispatch_event
	instead of XtAppProcessEvent.

	* xterm.c (handle_one_xevent): New function
	(x_dispatch_event): New function
	(XTread_socket): Call handle_one_xevent.

	* xterm.h (FRAME_OUTER_TO_INNER_DIFF_X/Y): Added

	* xmenu.c (Fx_popup_menu): If popping up at mouse position,
	call XQueryPointer to get coordinates.
	(popup_get_selection): Do not set popup_activated_flag to zero,
	let popup_deactivate_callback do that.  Needed for Motif.
	Call x_dispatch_event instead of XtDispatchEvent.
	(xmenu_show): Calculate root coordinate from frame top/left position.
Francesco Potortì's avatar
Francesco Potortì committed
110

Jan Djärv's avatar
Jan Djärv committed
111

Kim F. Storm's avatar
Kim F. Storm committed
112 113 114 115 116 117
2003-01-08  Kim F. Storm  <storm@cua.dk>

	* process.c (server_accept_connection): Fixed recording of new
	connection's local address in :local property of contact info.
	(Fmake_network_process): Record local network address for new
	client processes in :local property of contact info.
Kim F. Storm's avatar
Kim F. Storm committed
118
	(format-network-address): Added arg OMIT-PORT.  Callers changed.
Kim F. Storm's avatar
Kim F. Storm committed
119

Dave Love's avatar
Dave Love committed
120 121 122 123
2003-01-07  Dave Love  <fx@gnu.org>

	* Makefile.in (fns.o): Depend on coding.h.

Markus Rost's avatar
Markus Rost committed
124 125 126 127 128 129 130
2003-01-07  Markus Rost  <rost@math.ohio-state.edu>

	* minibuf.c (Fread_variable): Doc fix.

	* eval.c (Fuser_variable_p): Doc change.  For custom variables,
	use the same test as for custom-variable-p.

131 132 133 134 135 136
2003-01-05  Richard M. Stallman  <rms@gnu.org>

	* xdisp.c (try_scrolling): New arg LAST_LINE_MISFIT.
	Count LAST_LINE_MISFIT in scroll margin for end of window.
	Move label too_near_end before setting SCROLL_MARGIN_POS.
	Set LAST_LINE_MISFIT before jumping there.
Francesco Potortì's avatar
Francesco Potortì committed
137

138 139 140 141 142 143
	* xdisp.c (try_scrolling): Calculate amount_to_scroll better in
	scroll_conservatively case.  If scrolling that much doesn't change
	STARTP, move it down one line.

	* xdisp.c (redisplay_window): Pass last_line_misfit arg to try_scrolling.
	Make it 1 after make_cursor_line_fully_visible fails.
Francesco Potortì's avatar
Francesco Potortì committed
144

145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179
	* xdisp.c (setup_echo_area_for_printing): Kill Emacs if no selected frame.

	* keymap.c (apropos_predicate, apropos_accumulate): Make them static.
	(syms_of_keymap): staticpro them.
	(Fapropos_internal): Initialize them and clear them out.
	Don't GCPRO them.

	* buffer.c (syms_of_buffer) <scroll-up-aggressively, scroll-down-aggressively>:
	Doc fixes.

	* lisp.h: New misc type Lisp_Save_Value.
	(enum Lisp_Misc_Type): Add Lisp_Misc_Save_Value.
	(XSAVE_VALUE): New macro.
	(struct Lisp_Save_Value): New data type.
	(union Lisp_Misc): Add u_save_value alternative.
	(make_save_value): Declared.

	* alloc.c (make_save_value): New function.

	* xterm.c (x_catch_errors): Save dpy using make_save_value.
	(x_catch_errors_unwind): Call XSync.

2003-01-01  Richard M. Stallman  <rms@gnu.org>

	* window.c (window_scroll_pixel_based): Partially undo last change.

	* keyboard.c (command_loop_1): Call adjust_point_for_property
	in direct action cases for Qforward_char and Qbackward_char.
	Set already_adjusted so it won't be done twice.

2002-12-30  Richard Dawe  <rich@phekda.freeserve.co.uk>  (tiny change)

	* src/config.in (!HAVE_SIZE_T): Fix order of arguments in
	type definition of size_t.

180 181 182 183 184
2003-01-02  Steven Tamm  <steventamm@mac.com>

	* macterm.c (syms_of_macterm): Provide the feature "mac-carbon" to
	distinguish Carbon GUI builds from X11 builds on darwin.

185 186
2002-12-30  Steven Tamm  <steventamm@mac.com>

Francesco Potortì's avatar
Francesco Potortì committed
187
	* macterm.c (syms_of_macterm): Set mac-wheel-button-is-mouse-2
188 189
	to default to t.

Francesco Potortì's avatar
Francesco Potortì committed
190 191 192 193
2002-12-29  Francesco Potort,Al(B  <pot@gnu.org>

	* data.c (Fstring_to_number, Fminus): Better English in doc strings.

194 195
2002-12-28  Steven Tamm  <steventamm@mac.com>

Francesco Potortì's avatar
Francesco Potortì committed
196 197
	* Makefile.in (macosx-bundle): Fixes to Mac OS X/Carbon port to
	allow building in a different directory than source.  Uses some
198 199
	GNU Make extensions, but there is no other make on Mac OS X.

Francesco Potortì's avatar
Francesco Potortì committed
200 201 202 203 204 205 206 207
2002-12-26  Francesco Potort,Al(B  <pot@gnu.org>

	* data.c (Fmakunbound, Ffmakunbound, Fmake_variable_buffer_local)
	(Fsetq_default, Fmake_local_variable, Fkill_local_variable)
	(Fmake_variable_frame_local, Faset, Fnumber_to_string)
	(Fstring_to_number, Fminus): Mention the returned value in the doc
	strings.

208 209 210 211 212 213 214 215 216 217 218 219 220
2002-12-23  Richard M. Stallman  <rms@gnu.org>

	* buffer.c (syms_of_buffer) <scroll-up-aggressively>
	<scroll-down-aggressively>: Doc fix.

	* xmenu.c (parse_single_submenu): Use individual keymap's prompt
	string as pane name, if there is one.
	(set_frame_menubar): Save menu_items_n_panes from each call to
	parse_single_submenu and use it when calling digest_single_submenu.

	* window.c (window_scroll_pixel_based): Fix check for reaching BEGV.
	Don't try to make last line fully visible if it is past end of window.

221 222
2002-12-22  Steven Tamm  <steventamm@mac.com>

Francesco Potortì's avatar
Francesco Potortì committed
223
	* macmenu.c (MIN_POPUP_SUBMENU_ID): Added
224 225 226 227 228
	(mac_menu_show): Added support for hierarchical popup menus
	(add_menu_item): Removed indentation support
	(fill_submenu, fill_menu): Now creates hierarchical menus
	instead of using indentation

229 230 231 232 233 234 235
2002-12-22  Richard M. Stallman  <rms@gnu.org>

	* xdisp.c (try_cursor_movement): Don't call try_window here.
	(redisplay_window): Never redisplay minibuffer when inactive.

	* window.c (select_window_1): Undo 9/21 change.

236 237 238 239 240 241 242
2002-12-22  Steven Tamm  <steventamm@mac.com>

	* macterm.c (XTread_socket): Call KeyTranslate for control and
	meta to deal correctly shifted non-alpha characters, like C-S-5
	being treated like C-%.  Does not look for shift key to deal
	with masking off control-key with mac-reverse-ctrl-meta.

243 244 245 246 247 248 249 250 251 252 253 254 255 256 257 258 259 260 261 262 263 264
2002-12-21  Richard M. Stallman  <rms@gnu.org>

	* xmenu.c (popup_get_selection): Now static.  New arg DO_TIMERS.
	If it is non-nil, run timers.  Use an unwind-protect to requeue
	the events that were read ahead.
	(popup_get_selection_unwind): New subroutine.
	(popup_get_selection_queue): File-scope variable now holds that queue.
	(xmenu_show): Pass 0 for DO_TIMERS to popup_get_selection.
	(xdialog_show): Pass 1 for DO_TIMERS to popup_get_selection.
	Use an unwind-protect to pop down the dialog box.
	(xdialog_show_unwind): New subroutine implements that.

	* xdisp.c (row_containing_pos): Change exit test using last_y.
	(try_window_id): Abort if row_containing_pos returns null.

	* lread.c (load_error_handler): New function.
	(Fload): Handle errors in Fsubstitute_in_file_name.
	Don't expect Fsignal to return.

	* Errors and throws work right with interrupt blocking.
	* eval.c (struct catchtag): New elt interrupt_input_blocked.
	(unwind_to_catch): Restore interrupt_input_blocked from saved value.
Francesco Potortì's avatar
Francesco Potortì committed
265
	(internal_catch, Fcondition_case, internal_condition_case)
266 267 268 269 270 271 272 273 274 275 276 277 278
	(internal_condition_case_1, internal_condition_case_2): Save it.
	(Fsignal): Don't do TOTALLY_UNBLOCK_INPUT.

	* editfns.c (Fformat): Add parens.

	* dired.c (file_name_completion): Fix that change.
	Delete special quit-handling code; just use QUIT.

2002-12-21  Tak Ota  <Takaaki.Ota@am.sony.com>  (tiny change)

	* dired.c (file_name_completion): Close directory on error
	just as in directory_files_internal.

David Kastrup's avatar
David Kastrup committed
279 280 281 282 283
2002-12-19  David Kastrup  <David.Kastrup@t-online.de>

	* window.c (Fset_window_configuration): Set old_point to correct
	value when new_current_buffer == current_buffer.

284
2002-12-17  Ben Key <bkey1@tampabay.rr.com>
285

286
	* Revisited my earlier fix for the following entry in
Francesco Potortì's avatar
Francesco Potortì committed
287
	etc/PROBLEMS:
288 289
	"Emacs built on Windows 9x/ME crashes at startup on Windows XP,
	or Emacs builtpart of on XP crashes at startup on Windows 9x/ME."
Francesco Potortì's avatar
Francesco Potortì committed
290

291 292 293 294 295 296 297 298 299 300 301 302 303 304 305 306 307 308 309 310 311 312 313 314
	These changes were in part based upon suggestions made by Peter
	'Luna' Runestig [peter@runestig.com].

	* w32.c (g_b_init_is_windows_9x, g_b_init_open_process_token,
	g_b_init_get_token_information, g_b_init_lookup_account_sid,
	g_b_init_get_sid_identifier_authority ): Added several static
	global variables.

	* w32.c (globals_of_w32): New function.  Used to initialize those
	global variables that must always be initialized on startup even
	when the global variable initialized is non zero.  Its primary
	purpose at this time is to set the global variables
	g_b_init_is_windows_9x, g_b_init_open_process_token,
	g_b_init_get_token_information, g_b_init_lookup_account_sid, and
	g_b_init_get_sid_identifier_authority to 0 on startup.  Called
	from main.

	* w32.c (is_windows_9x): Perform initialization only if
	g_b_init_is_windows_9x is equal to 0.  On initialization set
	g_b_init_is_windows_9x equal to 1.

	* w32.c (open_process_token): Perform initialization only if
	g_b_init_open_process_token is equal to 0.  On initialization set
	g_b_init_open_process_token equal to 1.
Francesco Potortì's avatar
Francesco Potortì committed
315

316 317 318
	* w32.c (get_token_information): Perform initialization only if
	g_b_init_get_token_information is equal to 0.  On initialization
	set g_b_init_get_token_information equal to 1.
Francesco Potortì's avatar
Francesco Potortì committed
319

320
	* w32.c (lookup_account_sid): Perform initialization only if
Francesco Potortì's avatar
Francesco Potortì committed
321
	g_b_init_lookup_account_sid is equal to 0.  On initialization
322 323 324 325 326 327 328 329 330 331 332 333 334 335 336 337 338 339 340 341 342 343 344 345 346 347 348 349 350 351 352 353 354 355 356 357 358 359 360 361 362 363 364 365 366 367 368
	set g_b_init_lookup_account_sid equal to 1.

	* w32.c (get_sid_identifier_authority): Perform initialization
	only if g_b_init_get_sid_identifier_authority is equal to 0.  On
	initialization  set g_b_init_get_sid_identifier_authority equal to
	1.

	* w32fns.c (globals_of_w32fns): New function. Used to initialize
	those global variables that must always be initialized on startup
	even when the global variable initialized is non zero.  Its
	primary purpose at this time is to initialize the global variable
	track_mouse_event_fn.

	* w32fns.c (w32_wnd_proc):  Remove initialization of
	track_mouse_event_fn from the handler for the WM_SETFOCUS
	message.

	* w32fns.c (syms_of_w32fns): Call globals_of_w32fns.

	* w32menu.c (globals_of_w32menu):  New function. Used to
	initialize those global variables that must always be initialized
	on startup even when the global variable initialized is non zero.
	Its primary purpose at this time is to initialize the global
	variables get_menu_item_info and set_menu_item_info.

	* w32menu.c (initialize_frame_menubar): Remove initialization of
	get_menu_item_info and set_menu_item_info.

	* w32menu.c (syms_of_w32menu): Call globals_of_w32menu.

	* w32.h (globals_of_w32, globals_of_w32fns, globals_of_w32menu):
	Declare them.

	* emacs.c (main): Call globals_of_w32 prior to calling
	init_environment if WINDOWSNT is defined.  Call globals_of_w32fns
	and globals_of_w32menu if initialized is non zero and HAVE_NTGUI
	is defined.

	* w32term.c (x_update_window_begin): Fix Windows API error
	detected by BoundsChecker.  Test to determine if
	w32_system_caret_hwnd is NULL prior to attempting to use
	SendMessage to send the WM_EMACS_HIDE_CARET message to it.

	* w32term.c (x_update_window_end): Fix Windows API error
	detected by BoundsChecker.  Test to determine if
	w32_system_caret_hwnd is NULL prior to attempting to use
	SendMessage to send the WM_EMACS_SHOW_CARET message to it.
Francesco Potortì's avatar
Francesco Potortì committed
369

Kenichi Handa's avatar
Kenichi Handa committed
370 371 372 373 374 375 376 377 378 379 380 381
2002-12-17  Kenichi Handa  <handa@m17n.org>

	* coding.c (coding_system_require_warning): New variable.
	(syms_of_coding): DEFVAR it.

	* coding.h (coding_system_require_warning): Extern it.

	* fileio.c (choose_write_coding_system): Even if
	Vcoding_system_for_write is non-nil, if
	coding_system_require_warning is nonzero, call
	Vselect_safe_coding_system_function.

382 383 384 385 386
2002-12-17  Markus Rost  <rost@math.ohio-state.edu>

	* Makefile.in (lisp, shortlisp): Add cus-face and timer.
	(lisp): Add font-core.

Stefan Monnier's avatar
Stefan Monnier committed
387 388 389 390 391 392
2002-12-13  Stefan Monnier  <monnier@cs.yale.edu>

	* textprop.c (text_read_only): New arg `propval'.
	(get_char_property_and_overlay): Remove unused var `next_overlay'.
	(verify_interval_modification): Use text_read_only's new arg.

Kenichi Handa's avatar
Kenichi Handa committed
393 394 395 396
2002-12-13  Kenichi Handa  <handa@m17n.org>

	* coding.c (Funencodable_char_position): Set pend correctly.

397 398 399 400 401 402
2002-12-12  Jason Rumney  <jasonr@gnu.org>

	* w32term.c (last_mousemove_x, last_mousemove_y): New variables.
	(w32_read_socket) <WM_MOUSEMOVE>: Use them to detect non-movement.
	Be more careful about when help_events are generated.

403 404 405 406 407 408 409
2002-12-12  Steven Tamm  <steventamm@mac.com>

	* macterm.c (mac_check_for_quit_char): Correctly set the
	modifiers of the event to 0.
	* mac.c (sys_select): Duplicate rfds before calling select to
	ensure that rfds survive the while loop.

Kim F. Storm's avatar
Kim F. Storm committed
410 411 412 413 414
2002-12-11  Kim F. Storm  <storm@cua.dk>

	* xdisp.c (try_window_id): Don't call set_cursor_from_row if
	row_containing_pos returned NULL.

415 416 417
2002-12-10  Steven Tamm  <steventamm@mac.com>

	* mac.c (sys_read): Fixed sys_read to not call select if IO is
Stefan Monnier's avatar
Stefan Monnier committed
418
	non-blocking.
Steven Tamm's avatar
Steven Tamm committed
419 420
	(sys_select): Fixed sys_select to not use a timeout larger than
	the one given.
421

422 423 424 425
2002-12-10  Juanma Barranquero  <lektu@terra.es>

	* editfns.c (Fformat): Use alloca, not _alloca.

426 427 428 429 430
2002-12-09  Richard M. Stallman  <rms@gnu.org>

	* buffer.c (Fget_buffer_create): Call Qucs_set_table_for_input
	as the last thing.

Dave Love's avatar
Dave Love committed
431 432 433 434
2002-12-09  Dave Love  <fx@gnu.org>

	* s/sol2-8: Removed.  (Not necessary.)

435
2002-12-09  Matthew Swift  <swift@alum.mit.edu>
436 437 438

	* editfns.c (Fformat): Handle precision in string conversion
	specifiers like libc functions do (ie, print at most that many
439
	characters).
440

441 442 443 444 445
2002-12-08  Richard M. Stallman  <rms@gnu.org>

	* xdisp.c (row_containing_pos): Check more carefully
	whether charpos is really in the row before returning it.

446 447
2002-12-07  Steven Tamm  <steventamm@mac.com>

Kim F. Storm's avatar
Kim F. Storm committed
448
	* sysdep.c (emacs_read) [HAVE_CARBON]: Have emacs_read use sys_read.
449

Kim F. Storm's avatar
Kim F. Storm committed
450 451
	* eval.c (Feval) [HAVE_CARBON]: Calls mac_check_for_quit_char at
	each stack frame.  This may change as it could be time consuming.
452 453 454

	* macterm.c (mac_check_for_quit_char, quit_char_comp)
	(init_quit_char_handler, mac_determine_quit_char_modifiers)
Markus Rost's avatar
Markus Rost committed
455
	(mac_initialize): Added code to check for pressing of quit_char
Stefan Monnier's avatar
Stefan Monnier committed
456
	in the OS event queue.
457 458 459

	* mac.c (sys_select): Call mac_check_for_quit_char every second
	while blocking on select.
460

461
	* mac.c (sys_read): Use sys_select to test for input first
462
	before calling read, to allow C-g to break.
463

464 465 466 467 468 469 470 471 472 473 474 475 476 477 478
2002-12-07  Richard M. Stallman  <rms@gnu.org>

	* minibuf.c (Fcompleting_read): Doc fix.

	* lread.c (syms_of_lread) <load-history>: Doc fix.

	* fileio.c (Fcopy_file): Set immediate_quit around emacs_open call.

	* eval.c (Fdefun, Fdefmacro): Record in load-history redefining an
	autoload.

	* data.c (Fdefalias): Record in load-history redefining an autoload.

	* alloca.c: Undo ifdef change accidentally made on 12-04.

Francesco Potortì's avatar
Francesco Potortì committed
479 480
2002-12-06  Francesco Potorti`  <pot@gnu.org>

Stefan Monnier's avatar
Stefan Monnier committed
481
	* xfns.c (png_load): Avoid double gamma correction for PNG images.
Francesco Potortì's avatar
Francesco Potortì committed
482

483 484 485 486 487 488 489 490
2002-12-04  Richard M. Stallman  <rms@gnu.org>

	* sysdep.c (fcntl.h): Test only HAVE_FCNTL_H.

	* fileio.c (fcntl.h): Test only HAVE_FCNTL_H.

	* alloca.c: Don't use #error.

Dave Love's avatar
Dave Love committed
491 492 493 494 495 496 497
2002-12-03  Dave Love  <fx@gnu.org>

	* buffer.c (Qucs_set_table_for_input): New.
	(Fget_buffer_create): Use it.
	(Qset_buffer_major_mode_hook): Deleted.
	(Fset_buffer_major_mode): Revert previous change.
	(init_buffer_once): Intern ucs-set-table-for-input.
Stefan Monnier's avatar
Stefan Monnier committed
498 499
	(syms_of_buffer): Delete Qset_buffer_major_mode_hook.
	Add &Qucs_set_table_for_input.
Dave Love's avatar
Dave Love committed
500

Andreas Schwab's avatar
.  
Andreas Schwab committed
501 502 503 504 505
2002-12-03  Andreas Schwab  <schwab@suse.de>

	* callint.c (Fcall_interactively): Use next_event only if less
	than key_count.

506 507 508 509 510 511 512 513 514 515 516
2002-12-02  Andrew Choi  <akochoi@shaw.ca>

	* macmenu.c (add_menu_item, fill_menubar): Truncate menu item
	names to 255 characters.

	* macterm.c (XTread_socket): If all frames have been collapsed,
	expand the first one before handling drag-and-drop events.

	* s/darwin.h (GETPGRP_NO_ARG): Delete.  Replaced by GETPGRP_VOID,
	which is detected by autoconf.

517 518
2002-12-01  Steven Tamm  <steventamm@mac.com>

Markus Rost's avatar
Markus Rost committed
519
	* unexmacosx.c (copy_twolevelhints, dump_it): Now corrects the
520 521 522
	offset in two hints table to allow prebinding to be redone and
	allow the executable to be stripped.

523 524 525 526 527
2002-11-29  Dave Love  <fx@gnu.org>

	* fns.c (Frequire): Don't call LOADHIST_ATTACH if feature was
	already provided.

528 529 530 531 532 533
2002-11-29  Richard M. Stallman  <rms@gnu.org>

	* xdisp.c (start_display): Check more intelligently for
	whether the line is continued.
	(move_it_vertically_backward): Clear it->continuation_lines_width.

Dave Love's avatar
Dave Love committed
534 535 536 537 538
2002-11-28  Dave Love  <fx@gnu.org>

	* s/amdahl.h, s/unipl5-0.h, m/sgi3000.h, s/3700.h, s/alliant-2800.h:
	* s/alliant.h, s/altos.h: Deleted.  (Unused/empty.)

539 540 541 542 543 544
2002-11-27  Steven Tamm  <steventamm@mac.com>

	* fns.c (Frequire): Change nesting allowance from 2 to 3 to cause
	more descriptive error output from lread.c:Fload upon most require
	cycles during boostrapping.

Jason Rumney's avatar
Jason Rumney committed
545 546 547 548 549 550 551 552
2002-11-27  Jason Rumney  <jasonr@gnu.org>

	* fileio.c (Finsert_file_contents): Give a more appropriate error
	for files bigger than 2Gb when off_t is 32 bit.

	* dired.c (Ffile_attributes): Don't return negative file sizes for
	files bigger than 2Gb when off_t is 32 bit.

553 554
2002-11-27  Dave Love  <fx@gnu.org>

Dave Love's avatar
Dave Love committed
555 556
	* s/irix6-0.h (GC_SETJMP_WORKS, GC_MARK_STACK): Define.

Stefan Monnier's avatar
Stefan Monnier committed
557 558
	* systty.h: Don't conditionally define GETPGRP_NO_ARG.
	Test GETPGRP_VOID instead.
Dave Love's avatar
Dave Love committed
559 560 561 562 563 564
	[BSD_TERMIOS]: Remove definitions (never used).

	* s/osf5-0.h (WAIT_USE_INT, SYS_SIGLIST_DECLARED, sys_siglist):
	Don't define.
	(GC_SETJMP_WORKS, GC_MARK_STACK): Define.

565 566
	* m/mips.h (WORDS_BIG_ENDIAN): Define conditionally.

Jason Rumney's avatar
Jason Rumney committed
567 568 569 570 571
2002-11-25  Jason Rumney  <jasonr@gnu.org>

	* w32.c (sys_write): Avoid non-blocking mode, which is not fully
	supported.

572 573 574 575 576 577
2002-11-25  Dave Love  <fx@gnu.org>

	* unexalpha.c (update_dynamic_symbols): Cast arg of fatal_unexec.

	* Makefile.in (TEMACS_LDFLAGS): Update last change.

578 579 580 581
2002-11-25  Andreas Schwab  <schwab@suse.de>

	* m/ia64.h: Restore `#ifndef NOT_C_CODE' deleted by last change.

582 583 584 585 586 587 588
2002-11-24  Steven Tamm  <steventamm@mac.com>

	* unexmacosx.c (unexec_realloc): Use malloc_default_zone to
	determine the size of pointers alloced in unexed space instead
	of using possibly invalid emacs_zone pointers.  This fixes the
	binary incompatibility problems caused by updates to libSystem.B.

589 590 591 592 593 594 595 596
2002-11-24  Richard M. Stallman  <rms@gnu.org>

	* search.c (Fstring_match): Doc fix.

	* callint.c (Fcall_interactively): If a command fails because
	`*' detects a read-only buffer, but RECORD_FLAG is set,
	record it anyway if the args don't actually do tty input.

597 598 599 600 601 602 603
2002-11-22  Dave Love  <fx@gnu.org>

	* sysdep.c (stuff_char) [PROTOTYPES]: Provide ISO C arglist.

	* keyboard.c (interrupt_signal): Provide forward declaration.
	(kbd_buffer_store_event): Don't declare interrupt_signal.

Stefan Monnier's avatar
Stefan Monnier committed
604
	* xdisp.c (store_frame_title_char) [PROTOTYPES]: Provide ISO C arglist.
605

606 607 608 609 610
2002-11-21  Richard M. Stallman  <rms@gnu.org>

	* eval.c (interactive_p): Skip any number of bytecode
	and special form frames, in any order.

611 612 613 614 615 616
2002-11-20  Jason Rumney  <jasonr@gnu.org>

	* w32fns.c (convert_mono_to_color_image): New function.
	(xbm_load, xbm_load_image): Use it when foreground or background
	is explicitly set.

617 618 619 620
2002-11-19  Dave Love  <fx@gnu.org>

	* s/usg5-4.h, sco4.h (bcopy, bzero, bcmp): Don't define.

Jason Rumney's avatar
Jason Rumney committed
621 622 623
2002-11-18  Jason Rumney  <jasonr@gnu.org>

	* w32fns.c (x_build_heuristic_mask): Filter palette info from color.
Jason Rumney's avatar
Jason Rumney committed
624
	(XPutPixel): Swap blue and red.
625 626 627 628
	(xpm_format, pbm_format, png_format, jpeg_format, tiff_format)
	(gif_format, gs_format): Use IMAGE_ASCENT_VALUE.
	(xpm_image_p, pbm_image_p, png_image_p, jpeg_image_p)
	(tiff_image_p, gif_image_p, gs_image_p): Don't check ascent.
Jason Rumney's avatar
Jason Rumney committed
629

Dave Love's avatar
Dave Love committed
630 631
2002-11-18  Dave Love  <fx@gnu.org>

Dave Love's avatar
Dave Love committed
632 633
	* m/orion105.h (HAVE_ALLOCA): Don't define.

Stefan Monnier's avatar
Stefan Monnier committed
634
	* m/m68k.h, m/arm.h, mtekxd88.h, m/tower32v3.h: Don't define alloca.
Dave Love's avatar
Dave Love committed
635 636 637 638 639 640 641 642 643 644 645 646 647 648 649 650 651

	* m/intel386.h: Don't include alloca.h or define alloca.

	* m/ia64.h: Don't include alloca.h, stdlib.h.  Don't declare
	malloc, realloc, calloc.

	* m/hp800.h, m/sr2k.h, m/ns16000.h, m/wicat.h (bcopy, bzero)
	(bcmp): Don't define.

	* m/delta.h (bcopy, bzero, bcmp, alloca): Don't define.

	* m/amdahl.h: Don't define LIB_STANDARD.

	* m/alpha.h: Move OSF1 stuff from here to s/osf1.h.

	* s/osf1.h: Move OSF1 stuff from m/alpha.h to here.

Stefan Monnier's avatar
Stefan Monnier committed
652 653
	* s/irix4-0.h, s/irix5-0.h, m/powerpcle.h, m/sparc.h:
	Don't include alloca.h.
Dave Love's avatar
Dave Love committed
654 655 656

	* s/aix3-2.h (HAVE_FSYNC): Don't define.

Dave Love's avatar
Dave Love committed
657 658 659 660 661 662
	* regex.c (_GNU_SOURCE): Don't define.

	* process.c (_GNU_SOURCE): Don't define.

	* fileio.c (_GNU_SOURCE, HAVE_FSYNC): Don't define.

Markus Rost's avatar
Markus Rost committed
663
2002-11-18  Markus Rost  <rost@math.ohio-state.edu>
Markus Rost's avatar
Markus Rost committed
664 665 666

	* s/sol2-8.h: Include sol2-6.h.

667 668 669
2002-11-18  Miles Bader  <miles@gnu.org>

	* dispextern.h (struct face): Add `overstrike' field.
Stefan Monnier's avatar
Stefan Monnier committed
670
	* xterm.c (x_draw_glyph_string_foreground)
671 672 673 674 675 676 677 678
	(x_draw_composite_glyph_string_foreground): Implement overstriking.
	* xfaces.c (load_face_font): Set `face->overstrike' based on
	result from choose_face_font.
	(best_matching_font, choose_face_font): Add `needs_overstrike'
	argument, and use it to return whether overstriking is desirable
	for this face/font combo.
	(set_font_frame_param: Pass new argument to choose_face_font.

679
2002-11-17  Ben Key <BKey1@tampabay.rr.com>
680

Stefan Monnier's avatar
Stefan Monnier committed
681 682 683 684
	This change is my fix for the following entry in etc/PROBLEMS:
	"Emacs built on Windows 9x/ME crashes at startup on Windows XP,
	or Emacs builtpart of on XP crashes at startup on Windows 9x/ME."

685 686 687 688 689 690 691 692 693 694 695 696 697 698 699 700 701 702 703 704 705 706 707 708 709 710 711
	* w32.c: Added wrapper functions around the win32 API functions
	OpenProcessToken, GetTokenInformation, LookupAccountSid, and
	GetSidIdentifierAuthority.  These wrapper functions serve two
	purposes:
	1.  They ensure that the wrapped function can never be called
	when Emacs is running on an operating system on which they are
	not supported (Microsoft Windows 95 / 98 / ME).
	2.  They call the wrapped functions via function pointers rather
	than calling them directly.  This avoids taking advantage of the
	undocumented fact that although these functions are not supported
	in the 9x branch of Microsoft Windows, the functions do exist in
	the version of advapi32.dll that is found in the 9x branch of
	Microsoft Windows.

	* w32.c (init_user_info): Replaced the calls to the win32 API
	functions OpenProcessToken, GetTokenInformation, LookupAccountSid,
	and GetSidIdentifierAuthority with calls to the newly added
	wrapper functions.

	* w32.h: Added extern declarations for the following functions:
	syms_of_w32term, syms_of_w32fns, syms_of_w32select,
	syms_of_w32menu, and void syms_of_fontset.

	* w32fns.c (w32_wnd_proc): Added code to reinitialize the
	function pointer track_mouse_event_fn in the handler for the
	WM_SETFOCUS message.

Markus Rost's avatar
Markus Rost committed
712
	* w32menu.c (initialize_frame_menubar): Added code to
713 714
	reinitialize the function pointers set_menu_item_info and
	get_menu_item_info.
Stefan Monnier's avatar
Stefan Monnier committed
715 716

2002-11-17  Ben Key <BKey1@tampabay.rr.com>
717

Stefan Monnier's avatar
Stefan Monnier committed
718
	* sound.c: Added a partial implementation of play-sound-internal
719 720 721
	for Microsoft Windows.  Added various #ifdef / #else / #endif
	code blocks to separate the code that will compile under
	Microsoft Windows from the code that is specific to Gnu/Linux.
Stefan Monnier's avatar
Stefan Monnier committed
722 723
	Moved several blocks of code around to make this separation of code
	into Windows compatible and Gnu/Linux compatible code blocks easier.
724

Stefan Monnier's avatar
Stefan Monnier committed
725
	* makefile.w32-in: Include sound.c and link with WinMM.lib.
726 727 728 729

	* s/ms-w32.h: Defined the symbol HAVE_SOUND so that the newly
	added support for play-sound-internal under Windows would be
	included in the build of Emacs.
Stefan Monnier's avatar
Stefan Monnier committed
730

Jason Rumney's avatar
Jason Rumney committed
731 732 733 734 735 736
2002-11-16  Jason Rumney  <jasonr@gnu.org>

	* w32fns.c (w32_load_system_font): Don't disable Cleartype.

	* w32term.c (w32_get_glyph_string_clip_rect): Clip cursor tightly.

Stefan Monnier's avatar
Stefan Monnier committed
737 738 739 740 741 742 743 744
2002-11-15  Stefan Monnier  <monnier@cs.yale.edu>

	* keyboard.c (command_loop_1): Fix int/Lisp_Object mixup.
	(adjust_point_for_property): Move out of display and invisible even if
	we were already inside before (in case a property was added while
	we weren't looking).  Be more careful when handling invisible props.
	Skip invisible text as if it really wasn't there at all.

Jason Rumney's avatar
Jason Rumney committed
745 746 747 748 749 750 751 752 753 754 755
2002-11-15  Jason Rumney  <jasonr@gnu.org>

	* w32term.c (x_draw_image_foreground)
	(w32_draw_image_foreground_1): Use standard copy and invert
	operations to draw images.

	* w32fns.c (x_create_x_image_and_pixmap): Fill in palette for
	depth of 1.
	(xbm_read_bitmap_data): Invert bits as xbm is read in.
	(XPutPixel): Don't invert bits here.

Jason Rumney's avatar
Jason Rumney committed
756 757 758 759 760 761 762 763 764 765 766 767 768 769
2002-11-15  Jason Rumney  <jasonr@gnu.org>

	* w32term.c (x_draw_image_foreground, x_draw_image_glyph_string)
	(w32_draw_image_foreground_1): Handle image masks.
	(x_draw_image_glyph_string): Don't BitBlt transparently.

	* w32fns.c (w32_defined_color): Adjust RGB values for Emacs.
	(x_from_xcolors): Adjust RGB values for W32.
	(image_background, image_background_transparent)
	(postprocess_image, x_to_xcolors, x_disable_image)
	(x_build_heuristic_mask): Adapt for W32 and enable.
	(x_create_x_image_and_pixmap): Mark images with palettes as such.
	(xbm_load): Remove unused variable.

770 771 772 773
2002-11-14  Richard M. Stallman  <rms@gnu.org>

	* buffer.c (syms_of_buffer): Doc fix.

Dave Love's avatar
Dave Love committed
774 775 776 777
2002-11-14  Dave Love  <fx@gnu.org>

	* alloc.c (SETJMP_WILL_NOT_WORK): Add note.

Stefan Monnier's avatar
Stefan Monnier committed
778 779 780 781 782 783 784 785 786 787
	* xterm.c (x_draw_relief_rect, x_draw_box_rect, x_update_cursor):
	* xmenu.c (unuse_menu_items, digest_single_submenu):
	* xfns.c (x_put_x_image):
	* xdisp.c (message2_nolog, set_message):
	* undo.c (record_point):
	* terminfo.c (tparam):
	* syntax.c (scan_sexps_forward):
	* scroll.c (calculate_scrolling, calculate_direct_scrolling):
	* composite.c (update_compositions):
	* cm.c (calccost, cmgoto):
Dave Love's avatar
Dave Love committed
788 789
	* charset.c (c_string_width): Declare all args (per C99).

Stefan Monnier's avatar
Stefan Monnier committed
790
	* frame.h (get_specified_cursor_type, get_window_cursor_type): Declare.
Dave Love's avatar
Dave Love committed
791 792 793 794 795 796 797

	* lisp.h (get_specified_cursor_type, get_window_cursor_type):
	Don't declare.

	* emacs.c (main) [!VMS]: Avoid third arg.

	* fns.c (Fcopy_sequence): Doc fix.
Dave Love's avatar
Dave Love committed
798
	(Fmap_char_table): Cast `call2'.
Dave Love's avatar
Dave Love committed
799

Francesco Potortì's avatar
Francesco Potortì committed
800 801 802 803
2002-11-14  Francesco Potorti`  <pot@gnu.org>

	* s/sol2-8.h: New file.

Kim F. Storm's avatar
Kim F. Storm committed
804 805 806 807 808
2002-11-14  Kim F. Storm  <storm@cua.dk>

	* buffer.c (syms_of_buffer) <mode-line-format>: Document symbol
	dependency on `risky-local-variable' and the :propertize form.

809 810
2002-11-12  Stefan Monnier  <monnier@cs.yale.edu>

Stefan Monnier's avatar
Stefan Monnier committed
811 812
	* fns.c (Fmap_char_table): Don't use map_char_table's function arg.

813 814 815
	* syntax.c (scan_sexps_forward): Undo last patch.
	Use a more obvious fix: check eob before updating the syntax table.

Stefan Monnier's avatar
Stefan Monnier committed
816 817 818 819 820
2002-11-09  Stefan Monnier  <monnier@cs.yale.edu>

	* syntax.c (scan_sexps_forward): Update syntax table before reading
	a char rather than after so we don't update the table past eob.

Dave Love's avatar
Dave Love committed
821 822 823 824 825 826 827 828 829 830 831 832 833 834 835
2002-11-09  Dave Love  <fx@gnu.org>

	* buffer.c (Fset_buffer_major_mode): Fix last change.

	* regex.c (regexec): Fix pmatch declaration.

	* cmds.c (Fself_insert_command): Apply Vtranslation_table_for_input.

	* keyboard.c (command_loop_1): Apply Vtranslation_table_for_input
	to self-inserting characters.
	(syms_of_keyboard) <keyboard-translate-table>: Doc fix.

	* coding.c (Vtranslation_table_for_input): New.
	(syms_of_coding): DEFVAR it.

Juanma Barranquero's avatar
Juanma Barranquero committed
836 837 838 839 840
2002-11-08  Juanma Barranquero  <lektu@terra.es>

	* w32term.c (w32_draw_fringe_bitmap): Remove unused local variable
	window.

Kim F. Storm's avatar
Kim F. Storm committed
841 842 843 844 845
2002-11-08  Pavel Jan,Am(Bk  <Pavel@Janik.cz>

	* process.c (Fformat_network_address): Removed unused locals p,
	cp, and i.

846 847 848 849 850
2002-11-06  Dave Love  <fx@gnu.org>

	* buffer.c (Qset_buffer_major_mode_hook): New.
	(Fset_buffer_major_mode): Use it.

851 852 853 854 855 856 857 858 859 860 861 862 863
2002-11-06  Richard M. Stallman  <rms@gnu.org>

	* xterm.c (x_term_init): Use turn_on_atimers, not start_polling
	and stop_polling.

	* process.c (wait_reading_process_input):
	Test POLLING_PROBLEM_IN_SELECT, not hpux.
	Avoid initialization for auto Lisp_Object var.

	* s/hpux11.h (POLLING_PROBLEM_IN_SELECT): Add #undef.

	* s/hpux10.h (POLLING_PROBLEM_IN_SELECT): Defined.

864 865 866 867 868 869 870 871 872 873
2002-11-05  Richard M. Stallman  <rms@gnu.org>

	* s/sol2-5.h (BROKEN_SIGIO): Turn off the #undef.

	* callint.c (Fcall_interactively): New local filter_specs.
	(Fcall_interactively): Check for progn as well as let.
	Add a gcpro.
	(Qprogn): New variable.
	(syms_of_callint): Staticpro and init Qprogn.

874 875 876 877
2002-11-04  John Paul Wallington  <jpw@shootybangbang.com>

	* lread.c (Feval_buffer): Doc fix.

Dave Love's avatar
Dave Love committed
878 879 880 881 882 883 884 885
2002-11-04  Dave Love  <fx@gnu.org>

	* keyboard.c (read_char): Always translate iff
	Vkeyboard_translate_table is a char table and c is valid.

	* xterm.c (XTread_socket): Check Lisp types for Vx_keysym_table
	and fix C types.

886 887
2002-11-03  Stefan Monnier  <monnier@cs.yale.edu>

Stefan Monnier's avatar
Stefan Monnier committed
888 889 890 891
	* xdisp.c (single_display_prop_intangible_p): Strings are intangible.

	* editfns.c (get_pos_property): Don't hardcode Qfield.

892 893 894 895 896 897 898 899
	* keyboard.c (adjust_point_for_property): Handle `display' prop on
	overlays.  Also handle `invisible' prop.

2002-11-02  Stefan Monnier  <monnier@cs.yale.edu>

	* coding.c (decode_coding_emacs_mule, decode_coding_iso2022)
	(decode_coding_sjis_big5, decode_eol): Allow lone \r in DOS EOL.

900 901
2002-11-01  Andreas Schwab  <schwab@suse.de>

Stefan Monnier's avatar
Stefan Monnier committed
902
	* editfns.c (Fmessage): Revert last change to properly handle %%.
903

Stefan Monnier's avatar
Stefan Monnier committed
904 905 906 907 908 909
2002-11-01  Stefan Monnier  <monnier@cs.yale.edu>

	* xmenu.c (unuse_menu_items): New fun.
	(menu_items_inuse): New var.
	(syms_of_xmenu): Initialize it.
	(init_menu_items): Use it to detect re-entrance.
Stefan Monnier's avatar
Stefan Monnier committed
910
	(Fx_popup_menu, Fx_popup_dialog, set_frame_menubar): Reset when done.
Stefan Monnier's avatar
Stefan Monnier committed
911 912 913 914
	(Fx_popup_menu): Remove spurious XSETFRAME.

	* editfns.c (find_field): Make an exception for nil fields.

Dave Love's avatar
Dave Love committed
915 916 917 918
2002-11-01  Dave Love  <fx@gnu.org>

	* m/gec63.h: Deleted.

Dave Love's avatar
Dave Love committed
919 920 921 922 923
2002-10-31  Dave Love  <fx@gnu.org>

	* xterm.c (XTread_socket): Fix last change.
	(xaw_scroll_callback): Cast call_data to long to avoid warning.

924 925 926 927
2002-10-31  Stefan Monnier  <monnier@cs.yale.edu>

	* process.c (Fformat_network_address): Fix int/Lisp_Object mixup.

Stefan Monnier's avatar
Stefan Monnier committed
928 929 930 931 932 933 934
2002-10-30  Stefan Monnier  <monnier@cs.yale.edu>

	* editfns.c (overlays_around, get_pos_property): New funs.
	(find_field): Use them.
	Also be careful not to modify POS before its last use.
	(Fmessage): Don't Fformat if there's nothing to format.

Dave Love's avatar
Dave Love committed
935 936 937 938 939 940 941 942 943 944 945 946 947 948 949 950
2002-10-30  Dave Love  <fx@gnu.org>

	* process.c [HAVE_SYS_WAIT]: Include sys/wait.h.
	[HAVE_PTY_H]; Include pty.h.

	* lread.c (Fload) <!load_dangerous_libraries>: Close fd.

	* xterm.c (Qeql): Declare.
	(Vx_keysym_table): New.
	(syms_of_xterm): Initialize it.
	(XTread_socket): Use it.  Deal with ASCII keysyms.
	(XSetIMValues) [HAVE_X11R6]: Prototype.

	* keyboard.c (lispy_accent_codes, lispy_accent_keys): Extended.
	(lispy_kana_keys): Comment out.
	(make_lispy_event) [XK_kana_A]: Comment out.
Stefan Monnier's avatar
Stefan Monnier committed
951 952
	(modify_event_symbol) <sizeof (long) == sizeof (EMACS_INT)>:
	Fix sprintf call.
Dave Love's avatar
Dave Love committed
953 954 955 956 957 958 959 960 961 962 963 964 965 966 967 968 969 970 971 972 973 974

	* s/osf5-0.h (C_SWITCH_SYSTEM): Revert last change (fixed by
	regexp.h change).
	(TERMINFO, LIBS_TERMCAP): Define.

	* s/usg5-4.h (bcopy, bzero): Define conditional on HAVE_BCOPY.
	(bcmp): Define conditional on HAVE_BCMP.
	(NO_SIOCTL_H): Don't define.
	(TIOCSIGSEND): Don't make conditional on IRIX6.

	* s/sol2-5.h: Don't include strings.h.
	(bcopy, bzero, bcmp) [HAVE_BCOPY]: Don't undef.

	* s/irix6-0.h (IRIX6): Don't define.
	(bcopy, bcmp, bzero): Don't undef.

	* s/irix6-5.h: Don't include strings.h.
	(IRIX6): Don't define.
	(bcopy, bcmp, bzero): Don't undef.

	* syntax.c (Fforward_comment): Doc fix.

Kim F. Storm's avatar
Kim F. Storm committed
975 976 977 978 979
2002-10-29  Kim F. Storm  <storm@cua.dk>

	* process.c (Fsignal_process): Allow PROCESS to be specified by
	name in addition to pid (as integer or string).

980
2002-10-28  Harald Maier  <Harald.Maier.BW@t-online.de>  (tiny change)
981 982

	* w32heap.c: Don't redefine _heap_init and _heap_term on MSVC 7 build
983
	environments.
984

Kim F. Storm's avatar
Kim F. Storm committed
985 986 987 988 989 990 991 992 993 994
2002-10-27  Kim F. Storm  <storm@cua.dk>

	* xterm.c (note_mouse_highlight): Don't use mouse-face if hidden.

	* w32term.c (note_mouse_highlight): Don't use mouse-face if hidden.

	* msdos.c (IT_note_mouse_highlight): Don't use mouse-face if hidden.

	* macterm.c (note_mouse_highlight): Don't use mouse-face if hidden.

995 996 997 998
2002-10-26  Richard M. Stallman  <rms@gnu.org>

	* editfns.c (Fformat): Detect invalid format letters for floats.

Kenichi Handa's avatar
Kenichi Handa committed
999 1000 1001 1002 1003
2002-10-25  Kenichi Handa  <handa@m17n.org>

	* xfns.c (x_set_name): Encode by Qcompound_text unconditionally.
	(x_set_title): Likewise.

1004 1005 1006 1007 1008 1009 1010
2002-10-25  Juanma Barranquero  <lektu@terra.es>

	* macgui.h:
	* w32gui.h: Remove definition of XColor.

	* dispextern.h [!HAVE_X_WINDOWS]: Define XColor.

Kim F. Storm's avatar
Kim F. Storm committed
1011 1012 1013 1014 1015 1016
2002-10-24  Kim F. Storm  <storm@cua.dk>

	* xdisp.c (get_window_cursor_type): New arg ACTIVE_CURSOR.
	Callers changed (supply dummy arg).

	* lisp.h (get_window_cursor_type): Update prototype.
1017

Kim F. Storm's avatar
Kim F. Storm committed
1018 1019 1020
	* w32term.c (x_display_and_set_cursor): Get active_cursor from
	get_window_cursor_type to track system caret.

Kim F. Storm's avatar
Kim F. Storm committed
1021 1022 1023 1024 1025 1026 1027 1028 1029
2002-10-24  Kim F. Storm  <storm@cua.dk>

	* process.c (Fformat_network_address): New function.
	(syms_of_process): Defsubr it.
	(list_processes_1): Use it to format :local/:remote address if
	service/host is not set; before emacs would crash in that case.
	(Fmake_network_process): Don't use Ffind_operation_coding_system
	to setup coding system if host or service is not set.

1030 1031 1032 1033 1034 1035 1036 1037 1038 1039 1040 1041 1042 1043
2002-10-23  Juanma Barranquero  <lektu@terra.es>

	Patch suggested by Jay Finger <jay_finger@hotmail.com>.

	* w32term.c (w32_term_init): Pass XColor to w32_define_color, not
	COLORREF.

	* macgui.h:
	* w32gui.h: Add definition of XColor.

	* macfns.c:
	* w32fns.c:
	* xfaces.c: Remove definition of XColor.

Stefan Monnier's avatar
Stefan Monnier committed
1044 1045 1046 1047 1048 1049 1050 1051 1052 1053 1054 1055 1056 1057
2002-10-22  Stefan Monnier  <monnier@cs.yale.edu>

	* xfns.c (x_set_name, x_set_title): `icon.value' has unsigned char.

	* window.c (window_loop): For GET_LRU_WINDOW and GET_LARGEST_WINDOW>,
	Only ignore truly dedicated windows.  For UNSHOW_BUFFER, delete the
	window if it is dedicated.
	(Fshrink_window): Add preserve_before as was done for enlarge_window.
	(Vspecial_display_function): Update docstring.

	* buffer.c (assoc_ignore_text_properties, Fother_buffer, Fkill_buffer)
	(call_overlay_mod_hooks): Use CONSP and XCAR/XCDR.
	(Fget_buffer_create, advance_to_char_boundary): Use BEG and BEG_BYTE;

Stefan Monnier's avatar
Stefan Monnier committed
1058 1059 1060 1061 1062
2002-10-21  Stefan Monnier  <monnier@cs.yale.edu>

	* casefiddle.c (casify_region): Don't treat a prefix char as part
	of a word when at the beginning.

Juanma Barranquero's avatar
Juanma Barranquero committed
1063 1064 1065 1066
2002-10-17  Juanma Barranquero  <lektu@terra.es>

	* lread.c (syms_of_lread): Fix typos.

Dave Love's avatar
Dave Love committed
1067 1068 1069 1070
2002-10-17  Dave Love  <fx@gnu.org>

	* Makefile.in (TEMACS_LDFLAGS): Add trailing comment.

1071 1072 1073 1074
2002-10-16  Richard M. Stallman  <rms@gnu.org>

	* fileio.c (Fcopy_file): Fix backward test of KEEP_TIME.

1075 1076 1077 1078 1079 1080 1081
2002-10-14  Juanma Barranquero  <lektu@terra.es>

	* w16select.c (syms_of_win16select): Fix docstring for
	`selection-coding-system'.

	* w32select.c (syms_of_w32select): Likewise.

1082 1083 1084 1085 1086 1087
2002-10-14  Stefan Monnier  <monnier@cs.yale.edu>

	* syntax.c (scan_lists): Don't get fooled by a symbol ending with
	a backslash-quoted char.
	(scan_lists, scan_sexps_forward): Pacify the compiler.

1088 1089 1090 1091 1092 1093 1094 1095 1096 1097
2002-10-13  Richard M. Stallman  <rms@gnu.org>

	* window.c (window_scroll): Set immediate_quit.

	* print.c (print): When backquote form is the car of a list,
	output in old style.  Use old_backquote_output to output all
	comma forms inside it in old style too.

	* buffer.h (struct buffer): Move `undo_list' down below `name'.

Markus Rost's avatar
Markus Rost committed
1098 1099 1100 1101 1102 1103 1104
2002-10-11  Markus Rost  <rost@math.ohio-state.edu>

	* emacs.c (syms_of_emacs) <kill-emacs-hook>: Doc fix (not run in
	batch mode).

	* lread.c (Fload): Doc fix (load-suffixes).

1105 1106
2002-10-10  Steven Tamm  <steventamm@mac.com>

1107 1108 1109
	* macterm.c (syms_of_macterm, mac_get_mouse_btn):
	Reverse functionality of mac-wheel-button-is-mouse-2 to be correct.
	Also switch the default to Qnil from Qt.
1110

Kenichi Handa's avatar
Kenichi Handa committed
1111 1112 1113 1114 1115 1116
2002-10-08  Kenichi Handa  <handa@m17n.org>

	* coding.c (code_convert_region): When we need more GAP for
	conversion, pay attention to the case that coding->produced is not
	greater than coding->consumed.

1117 1118 1119 1120
2002-10-07  Richard M. Stallman  <rms@gnu.org>

	* unexelf.c (unexec): Redo 9/16 change, but only if IRIX6_5.

1121 1122 1123 1124 1125
2002-10-06  Andrew Choi  <akochoi@shaw.ca>

	* macmenu.c (mac_menu_show): Add j to count menu items; match
	menu_item_selection to it to find selected item.

1126 1127 1128 1129 1130 1131 1132
2002-10-06  Jan D.  <jan.h.d@swipnet.se>

	* xterm.c (XTread_socket): Fix from 2002-10-03 didn't cover all
	cases.  The correct fix is to pass ReparentNotify to Xt.
	The shell widget interprets ConfigureNotify differently depending
	on if it has been reparented or not.

Markus Rost's avatar
Markus Rost committed
1133 1134 1135 1136
2002-10-05  Markus Rost  <rost@math.ohio-state.edu>

	* editfns.c (Fformat_time_string): Doc fix.

John Paul Wallington's avatar
John Paul Wallington committed
1137 1138 1139 1140
2002-10-05  John Paul Wallington  <jpw@shootybangbang.com>

	* fns.c (Flength): Doc fix.

1141 1142 1143 1144 1145 1146 1147
2002-10-04  Stefan Monnier  <monnier@cs.yale.edu>

	* keyboard.c (keyremap): New struct.
	(read_key_sequence): Use it: globally replace keytran_foo with
	keytran.foo and fkey_foo with fkey.foo.  Rename temp vars
	keytran_next and fkey_next to just `next'.

1148 1149
2002-10-04  Steven Tamm  <steventamm@mac.com>

1150
	* macterm.c (keycode_to_xkeysym_table): Change return to be
1151
	treated like an X keysym.
1152

1153 1154 1155 1156 1157 1158
2002-10-03  Jan D.  <jan.h.d@swipnet.se>

	* xterm.c (XTread_socket): For ConfigureNotify, with x and y == 0,
	and USE_MOTIF, call XTranslateCoordinates to get the real x and y.
	This is to also handle x/y changes that occur because of a resize.

1159 1160 1161 1162 1163 1164 1165 1166 1167
2002-10-02  John Paul Wallington  <jpw@shootybangbang.com>

	* frame.c (Vdelete_frame_functions): New variable.
	(syms_of_frame): Initialize and defvar it.
	(Fdelete_frame): Use it instead of delete-frame-hook.  Don't run
	it when frame's `tooltip' parameter is non-nil.

	* xfns.c (x_create_tip_frame): Set `tooltip' frame parameter to t.

John Paul Wallington's avatar
John Paul Wallington committed
1168
	* w32fns.c (x_create_tip_frame): Likewise.
1169 1170 1171

	* macfns.c (x_create_tip_frame): Likewise.

Kenichi Handa's avatar
Kenichi Handa committed
1172 1173 1174 1175 1176 1177 1178 1179 1180 1181 1182
2002-09-30  Kenichi Handa  <handa@m17n.org>

	* xterm.c (x_encode_char): For DIM=1 charset, set ccl->reg[2] to
	-1 before calling ccl_driver.

	* coding.c (decode_coding_emacs_mule): Check coding->cmp_data.
	Only when it is non-nil, handle composition sequence.
	(setup_coding_system) <0>: Don't force composition handling.

	* Makefile.in (lisp, shortlisp): Add utf-16.elc

1183 1184
2002-09-29  Richard M. Stallman  <rms@gnu.org>

1185 1186 1187
	* search.c (Freplace_match): Adjust match data for the substitution
	just made in the buffer.

1188 1189 1190 1191 1192 1193 1194 1195
	* xdisp.c (STOP_POLLING, RESUME_POLLING): New macros.
	(redisplay_internal): Use them.  Do RESUME_POLLING at end of function.

2002-09-27  Richard M. Stallman  <rms@gnu.org>

	* keyboard.c (STOP_POLLING, RESUME_POLLING): New macros.
	(read_char): Use them.  Do all exits thru the end of the function.

1196 1197 1198 1199 1200
2002-09-27  Kenichi Handa  <handa@etl.go.jp>

	* xfaces.c (try_font_list): Pay attention to the case that FAMILY
	is nil.

1201 1202 1203 1204 1205 1206 1207
2002-09-26  Richard M. Stallman  <rms@gnu.org>

	* regex.h (__restrict_arr): Don't define if already defined.

	* coding.c (run_pre_post_conversion_on_str):
	Save and restore Vdeactivate_mark.

1208 1209 1210 1211
2002-09-26  John Paul Wallington  <jpw@shootybangbang.com>

	* minibuf.c (Fminibufferp): Add an optional `buffer' argument.

1212 1213 1214
2002-09-26  Kenichi Handa  <handa@etl.go.jp>

	* xfaces.c (try_font_list): New arg PREFER_FACE_FAMILY.  If it is
1215
	nonzero, try face's family at first.  Otherwise try FAMILY at first.
1216 1217 1218
	(choose_face_font): If C is a single byte char or latin-1, call
	try_font_list with PREFER_FACE_FAMILY 1.

1219 1220 1221 1222 1223 1224
2002-09-21  Richard M. Stallman  <rms@gnu.org>

	* window.c (select_window_1): Don't select frame.
	Set frame's selected window only when frame itself is selected.
	(Fselect_window): Doc fix.

Kim F. Storm's avatar
Kim F. Storm committed
1225 1226 1227 1228 1229
2002-09-18  Kim F. Storm  <storm@cua.dk>

	* process.c (make-network-process): Doc fix (there is no
	network-server-log-function hook).

1230 1231 1232 1233 1234 1235 1236
2002-09-18  Richard M. Stallman  <rms@gnu.org>

	* print.c (print): Clear out the unused parts of Vprint_number_table.
	(syms_of_print): Doc fix for `print-number-table'.

	* unexelf.c (unexec): Undo previous change.

Andreas Schwab's avatar
.  
Andreas Schwab committed
1237 1238 1239 1240
2002-09-17  Andreas Schwab  <schwab@suse.de>

	* m/alpha.h [LINUX]: Don't define DATA_START.

1241 1242 1243 1244 1245
2002-09-16  Dave Love  <fx@gnu.org>

	* unexelf.c (unexec): Deal with .got, reinstating change from
	25-08-1999.

1246 1247 1248 1249 1250 1251 1252 1253
2002-09-13  Richard M. Stallman  <rms@gnu.org>

	* s/sol2-6.h (UNEXEC): Comment out definition.

	* unexsol.c (unexec): Don't downcase first letter of error msg.

	* xfaces.c (Fcolor_supported_p): Just one arg is required.

Markus Rost's avatar
Markus Rost committed
1254 1255 1256 1257
2002-09-12  Markus Rost  <rost@math.ohio-state.edu>

	* unexsol.c: Include buffer.h, charset.h, coding.h.

1258 1259 1260 1261 1262 1263 1264 1265 1266 1267 1268 1269 1270 1271 1272 1273 1274 1275
2002-09-11  Richard M. Stallman  <rms@gnu.org>

	* unexsol.c: Don't use report_file_error; do it by hand
	using dlerror.

	* process.c (wait_reading_process_input, both versions):
	Before calling turn_on_atimers, call stop_polling.

	* emacs.c (syms_of_emacs) <command-line-args>: Doc fix.

	* xdisp.c (try_scrolling): If after make_cursor_line_fully_visible
	we go to too_near_end, call clear_glyph_matrix.
	(redisplay_window): After make_cursor_line_fully_visible,
	call clear_glyph_matrix and bypass `goto done'.

	* xfns.c (x_report_frame_params): If FRAME_SCROLL_BAR_PIXEL_WIDTH is 0
	and we have non-toolkit scroll bars, return nil for scroll-bar-width.

1276 1277 1278 1279 1280 1281 1282 1283 1284 1285 1286 1287 1288 1289 1290 1291 1292
2002-09-10  Richard M. Stallman  <rms@gnu.org>

	* fileio.c (Fdo_auto_save): Catch error making directory.
	Only call push_message if we need to.
	At the same time, make an unwind-protect to pop it.
	Rename local message_p to old_message_p.
	(do_auto_save_make_dir, do_auto_save_eh): New functions.
	(do_auto_save_unwind): Don't call pop_message.

	* lisp.h (pop_message_unwind): Renamed from push_message_unwind.

	* keyboard.c (Fexecute_extended_command): Use pop_message_unwind.

	* alloc.c (Fgarbage_collect): Use pop_message_unwind.

	* xdisp.c (pop_message_unwind): Renamed from push_message_unwind.

Stefan Monnier's avatar
Stefan Monnier committed
1293 1294 1295 1296 1297 1298
2002-09-10  Stefan Monnier  <monnier@cs.yale.edu>

	* regex.c (DISCARD_FAILURE_REG_OR_COUNT): Delete.
	(CHECK_INFINITE_LOOP): Don't pop anything: just set `cycle' to 1.
	(re_match_2_internal): Be more careful with infinite loops.

Kim F. Storm's avatar
Typo  
Kim F. Storm committed
1299
2002-09-10  Kim F. Storm  <storm@cua.dk>
Kim F. Storm's avatar
Kim F. Storm committed
1300 1301 1302 1303 1304 1305 1306 1307 1308

	* macros.c (end_kbd_macro): New function.
	(Fend_kbd_macro): Use it.

	* macros.h (end_kbd_macro): Declare extern.

	* keyboard.c (Fdiscard_input): If defining keyboard macro,
	end and save it instead of discarding it.

Markus Rost's avatar
Markus Rost committed
1309 1310 1311 1312
2002-09-09  Markus Rost  <rost@math.ohio-state.edu>

	* s/sol2-6.h: Fix typo.  Add comment.

1313 1314 1315 1316 1317 1318 1319 1320
2002-09-09  Richard M. Stallman  <rms@gnu.org>

	* regex.c (regnum_t): Use signed int, not unsigned int.

	* s/sol2-6.h: New file.

	* s/sol2-5.h (UNEXEC): Definition deleted.

Kim F. Storm's avatar
Kim F. Storm committed
1321 1322 1323 1324 1325 1326
2002-09-08  Kim F. Storm  <storm@cua.dk>

	* macros.c (executing_macro_index): Change type to EMACS_INT.
	(syms_of_macros): DEFVAR_INT it  (needed by kmacro).

	* macros.h (executing_macro_index): Change type to EMACS_INT.
Stefan Monnier's avatar
Stefan Monnier committed
1327

1328 1329 1330 1331
2002-09-06  Richard M. Stallman  <rms@gnu.org>

	* casetab.c (set_case_table): Make canon table point to eqv table.

1332 1333 1334 1335 1336 1337 1338 1339 1340 1341 1342 1343 1344 1345 1346 1347 1348 1349 1350
2002-09-06  Juanma Barranquero  <lektu@terra.es>

	* coding.c (syms_of_coding): Fix spacing.

	* composite.c (Fcompose_region_internal)
	(Fcompose_string_internal): Likewise.

	* data.c (Flsh): Likewise.

	* fontset.c (Fset_fontset_font): Likewise.

	* macfns.c (Fx_server_max_request_size): Likewise.

	* w16select.c (syms_of_win16select): Likewise.

	* w32select.c (syms_of_w32select): Likewise.

	* xselect.c (syms_of_xselect): Likewise.

1351 1352 1353 1354 1355 1356 1357 1358 1359 1360 1361
2002-09-05  Richard M. Stallman  <rms@gnu.org>

	* regex.c (set_image_of_range_1): In no-TRANSLATE case,
	call EXTEND_RANGE_TABLE and return a proper value.
	(set_image_of_range): Don't call set_image_of_range_1
	if no TRANSLATE or if range includes all of Latin-1.
	Only call it for the Latin-1 part of the range.
	For other cases, make two separate ranges,
	one for the original specified characters and one for
	their case-conversions.

1362 1363 1364 1365 1366 1367 1368 1369 1370 1371 1372 1373 1374 1375 1376 1377
2002-09-04  Richard M. Stallman  <rms@gnu.org>

	* s/sol2-5.h (UNEXEC): Use unexsol.o.

	* window.c (displayed_window_lines): Correct for one-off bug
	in HEIGHT on non-window displays.

	* regex.c (set_image_of_range_1): New function.
	(set_image_of_range): Use set_image_of_range_1 for Latin-1.
	Return a value to indicate running out of memory.
	(SET_RANGE_TABLE_WORK_AREA): Check value from set_image_of_range.
	(extend_range_table_work_area): New subroutine.
	(EXTEND_RANGE_TABLE): Replaces EXTEND_RANGE_TABLE_WORK_AREA.
	Different calling conventions, and used from set_image_of_range{,_1}.
	(IMMEDIATE_QUIT_CHECK): Definitions moved.

Juanma Barranquero's avatar
Juanma Barranquero committed
1378 1379 1380 1381
2002-09-04  Juanma Barranquero  <lektu@terra.es>

	* makefile.w32-in: All dependencies updated.

1382 1383
2002-09-01  Richard M. Stallman  <rms@gnu.org>

1384 1385 1386 1387 1388 1389 1390 1391
	* unexsol.c: New file.

	* xfns.c (Qbox): Declare external, don't define.

	* xdisp.c (redisplay_window) <force-start case>:
	If point is on semi-visible last line, reposition
	it at previous line.

1392 1393 1394 1395 1396 1397 1398 1399 1400 1401 1402 1403 1404
	* alloc.c (display_malloc_warning): Use display-warning.
	(malloc_warning_1): Function deleted.

	* alloc.c [ALLOC_DEBUG]: #undef INLINE.

	* lread.c (read1): Handle #! by skipping the line.

2002-08-31  Richard M. Stallman  <rms@gnu.org>

	* Makefile.in (TEMACS_LDFLAGS): Renamed from ALL_LDFLAGS.
	Don't include LDFLAGS.
	(temacs): Pass LDFLAGS separately, and not via YMF_PASS_LDFLAGS.

1405 1406 1407 1408 1409
2002-08-31  Eli Zaretskii  <eliz@is.elta.co.il>

	* xdisp.c (get_window_cursor_type): Don't use x_highlight_frame
	member of x_display_info unless we compile for some window system.

Kim F. Storm's avatar
Kim F. Storm committed
1410 1411 1412 1413 1414 1415
2002-08-31  Kim F. Storm  <storm@cua.dk>

	* xdisp.c (Valternate_cursor_type, Qalternate_cursor_type): Removed.
	(get_window_cursor_type): Don't use them.
	(syms_of_xdisp): Remove intern, staticpro, and defvar for them.

Kenichi Handa's avatar
Kenichi Handa committed
1416 1417 1418 1419
2002-08-30  Kenichi Handa  <handa@etl.go.jp>

	* xdisp.c (get_next_display_element): Fix previous change.

1420 1421
2002-08-30  Andrew Choi  <akochoi@shaw.ca>

Stefan Monnier's avatar
Stefan Monnier committed
1422
	* macterm.c (expose_overlaps): New function (merge code from xterm.c).
1423 1424 1425
	(expose_window): Use it to fix the display of overlapping
	rows (merge code from xterm.c).

1426 1427
	* macfns.c (Qbox): Add extern declaration.

1428 1429
2002-08-30  Juanma Barranquero  <lektu@terra.es>

Juanma Barranquero's avatar
Juanma Barranquero committed
1430 1431 1432
	* w32fns.c (Qbox): Make extern.
	(syms_of_w32fns): Remove initialization of Qbox.

1433 1434 1435
2002-08-30  Rune Kleveland  <runekl@viewpoint.no>  (tiny change)

	* xfns.c (Fx_open_connection): Fix error message.
1436

1437 1438 1439 1440 1441 1442 1443 1444 1445 1446 1447 1448 1449 1450 1451 1452 1453 1454 1455 1456 1457 1458 1459 1460 1461 1462 1463 1464 1465 1466 1467 1468 1469 1470 1471 1472 1473 1474 1475
2002-08-30  Kim F. Storm  <storm@cua.dk>

	The following changes consolidates the handling of the cursor
	type in xdisp.c, moving duplicate code and functionality from
	xfns.c, xterm.c, w32fns.c, w32term.c, macfns.c, and macterm.c.

	* frame.h (enum text_cursor_kinds): Consolidated here.
	Added DEFAULT_CURSOR value.
	(struct frame) <desired_cursor, cursor_width>
	<blink_off_cursor, blink_off_cursor_width>: New fields.
	Consolidated from output_x, output_w32 and output_mac structs.
	(FRAME_DESIRED_CURSOR, FRAME_CURSOR_WIDTH, FRAME_BLINK_OFF_CURSOR)
	(FRAME_BLINK_OFF_CURSOR_WIDTH): Macros consolidated here.

	* xdisp.c (Qbar, Qhbar, Qbox, Qhollow, Vblink_cursor_alist):
	Variables consolidated here.
	(Valternate_cursor_type, Qalternate_cursor_type): New variables.
	(Vcursor_in_non_selected_windows): Renamed from
	cursor_in_non_selected_windows and changed to Lisp_Object.
	(syms_of_xdisp): Define and staticpro new and moved variables.
	(get_specified_cursor_type): Renamed from x_specified_cursor_type;
	consolidated here.  Recognize Qhollow setting.
	(set_frame_cursor_types): New function to set frame cursor types
	based on the frame parameters.
	(get_window_cursor_type): New function to calculate new cursor
	type and width for the specified window.  Based on duplicated
	code consolidated here.
	Enhancements: cursor-in-non-selected-windows may be a cursor type,
	check buffer-local alternate-cursor-type and blink-cursor-alist
	before using built-in blink off methods.

	* dispextern.h (cursor_in_non_selected_windows): Extern removed.

	* lisp.h (Qcursor_in_non_selected_windows): Extern removed.
	(get_specified_cursor_type, get_window_cursor_type)
	(set_frame_cursor_types): Added prototypes.

	* macfns.c (x_specified_cursor_type): Removed.
	(x_set_cursor_type): Use set_frame_cursor_types.
Kim F. Storm's avatar
Kim F. Storm committed
1476 1477
	(Qbar, Qbox): Removed.
	(syms_of_macfns): Don't intern or staticpro them.
1478

Kim F. Storm's avatar