99ffb74fb71a2b905dd720e44e9144d7573e6683
[chise/xemacs-chise.git-] / src / ChangeLog
1 1999-06-17  MORIOKA Tomohiko  <tomo@etl.go.jp>
2
3         * mule-charset.c, character.h (Bytecount rep_bytes_by_first_byte):
4         Don't define in UTF2000.
5
6         * character.h: Include mule-charset.h if CHAR_IS_UCS4 is not
7         defined.
8
9         * redisplay-msw.c, objects-tty.c, objects-msw.c, mule-wnnfns.c,
10         mule-ccl.c, lstream.h, buffer.h: Include character.h in every
11         MULE.
12
13 1999-06-17  MORIOKA Tomohiko  <tomo@etl.go.jp>
14
15         * config.h.in (CHAR_IS_UCS4): New macro.
16
17         * mule-charset.c (rep_bytes_by_first_byte): Modify for
18         conventional MULE representation.
19         (syms_of_mule_charset): Update to 0.3 (Imamiya).
20
21         * mule-charset.h: Reverted to original.
22
23         * redisplay-msw.c, objects-tty.c, objects-msw.c, mule-wnnfns.c,
24         mule-ccl.c, lstream.h, buffer.h: Use "character.h" instead of
25         "mule-charset.h" if CHAR_IS_UCS4 is defined.
26
27         * character.h: New file.
28
29         * file-coding.c (Fmake_coding_system): Set 1 to
30         `codesys->fixed.size' if TYPE is `no-conversion' and UTF2000 is
31         defined.
32         (encode_coding_no_conversion): New implementation for UTF2000.
33
34         * file-coding.h (struct Lisp_Coding_System): Add new member
35         `fixed.size'.
36
37 1999-06-16  MORIOKA Tomohiko  <tomo@etl.go.jp>
38
39         * file-coding.c (decode_coding_iso2022): Code-point arguments of
40         `MAKE_CHAR' must be smaller than 0x80 in UTF2000.
41         (encode_coding_iso2022): New implementation for UTF2000.
42
43 1999-06-15  MORIOKA Tomohiko  <tomo@etl.go.jp>
44
45         * mule-canna.c (c2mu): New implementation for UTF2000.
46         (m2c): Likewise.
47
48 1999-06-15  MORIOKA Tomohiko  <tomo@etl.go.jp>
49
50         * file-coding.c (encode_coding_no_conversion): Modify for UTF2000.
51
52 1999-06-15  MORIOKA Tomohiko  <tomo@etl.go.jp>
53
54         * file-coding.c (reset_encoding_stream): Set 0 to
55         `str->iso2022.current_char_boundary' in UTF2000.
56         (encode_utf8): Don't define in UTF2000.
57         (encode_coding_utf8): New implementation for UTF-8 representation
58         of UTF2000.
59         (complex_vars_of_file_coding): Define coding-system `utf-8'.
60
61 1999-06-15  MORIOKA Tomohiko  <tomo@etl.go.jp>
62
63         * mule.c (vars_of_mule): Provide `utf-2000' in UTF2000.
64
65         * mule-charset.h (BUFBYTE_FIRST_BYTE_P): Modify for UTF-8 in
66         UTF2000.
67         (REP_BYTES_BY_FIRST_BYTE): Likewise.
68
69         * buffer.h (non_ascii_valid_char_p): Don't define in UTF2000.
70
71         * mule-charset.c (non_ascii_set_charptr_emchar): Don't define
72         local variables `lb', `c1', `c2' and `charset' in UTF2000; encode
73         as UTF-8 in UTF2000.
74         (non_ascii_charptr_emchar): Decode as UTF-8 in UTF2000.
75         (non_ascii_valid_char_p): Don't define in UTF2000.
76         (non_ascii_charptr_copy_char): Add case 5 and 6 in UTF2000.
77         (Lstream_get_emchar_1): Likewise.
78         (utf-2000-version): New variable in UTF2000.
79
80         * lread.c (read_escape): Add new reader `u'.
81
82         * insdel.c (three_to_one_table): Don't define in UTF2000.
83         (bufpos_to_bytind_func): Use `buf->text->mule_size' instead of
84         `buf->text->mule_shifter' and `buf->text->mule_three_p' in
85         UTF2000.
86         (bytind_to_bufpos_func): Likewise.
87         (buffer_mule_signal_inserted_region): Likewise.
88         (vars_of_insdel): Don't initialize `three_to_one_table'.
89         (init_buffer_text): Use `buf->text->mule_size' instead of
90         `buf->text->mule_shifter' and `buf->text->mule_three_p' in
91         UTF2000.
92
93         * file-coding.c (DECODE_ADD_BINARY_CHAR): New implementation for
94         UTF-8 representation in UTF2000.
95         (DECODE_ADD_UCS_CHAR): New macro in UTF2000.
96         (decode_ucs4): Use `DECODE_ADD_UCS_CHAR' in UTF2000.
97         (decode_coding_iso2022): Don't define local variable `lb' in
98         UTF2000; don't use LEADING_BYTE in UTF2000; use
99         `DECODE_ADD_UCS_CHAR' in UTF2000.
100         (convert_to_external_format): Decode as UTF-8 in UTF2000.
101
102         * config.h.in (UTF2000): New macro.
103
104         * buffer.h (struct buffer_text): Add new member `mule_size' and
105         don't add `mule_shifter' and `mule_three_p' in UTF2000.
106         (valid_char_p): Return always 1 in UTF2000.
107         (MAX_EMCHAR_LEN): 6 in UTF2000.
108         (three_to_one_table): Don't define in UTF2000.
109         (real_bufpos_to_bytind): Modify for UTF-8 representation in
110         UTF2000.
111         (real_bytind_to_bufpos): Likewise.
112
113         * alloc.c (Fmake_string): Add case 5 and 6 for UTF2000.
114
115 1999-06-10  MORIOKA Tomohiko  <tomo@etl.go.jp>
116
117         * mule-charset.c (rep_bytes_by_first_byte): Modified for character
118         representation change.
119         (Vutf_2000_version): New variable.
120         (leading_code_private_11): New variable.
121         (syms_of_mule_charset): Add new variables `utf-2000-version' and
122         `leading-code-private-11'.
123
124         * mule-charset.h (LEADING_BYTE_CHINESE_CCITT_GB): New macro.
125         (LEADING_BYTE_CHINESE_BIG5_1): Changed to 0x96 temporally.
126         (LEADING_BYTE_CHINESE_CNS11643_1): Changed to 0x97.
127         (LEADING_BYTE_CHINESE_CNS11643_2): Changed to 0x98.
128         (LEADING_BYTE_CHINESE_CNS11643_3): New macro.
129         (LEADING_BYTE_CHINESE_CNS11643_4): Likewise.
130         (LEADING_BYTE_CHINESE_CNS11643_5): Likewise.
131         (LEADING_BYTE_CHINESE_CNS11643_6): Likewise.
132         (LEADING_BYTE_CHINESE_CNS11643_7): Likewise [but not used].
133         (LEADING_BYTE_CHINESE_BIG5_2): Changed to 0x9D temporally.
134         (LEADING_BYTE_KOREAN_KPS9566): New macro [but not used].
135         (CHAR_FIELD1_MASK): Changed to (0x7F << 14).
136         (MIN_CHAR_GREEK): New macro.
137         (MAX_CHAR_GREEK): New macro.
138         (MIN_CHAR_CYRILLIC): New macro.
139         (MAX_CHAR_CYRILLIC): New macro.
140         (MIN_CHAR_HEBREW): New macro.
141         (MAX_CHAR_HEBREW): New macro.
142         (MIN_CHAR_THAI): New macro.
143         (MAX_CHAR_THAI): New macro.
144         (MIN_CHAR_HALFWIDTH_KATAKANA): New macro.
145         (MAX_CHAR_HALFWIDTH_KATAKANA): New macro.
146         (CHAR_FIELD2_INTERNAL): New macro [renamed from `CHAR_FIELD2'.
147         (CHAR_FIELD3_INTERNAL): New macro [renamed from `CHAR_FIELD3'.
148         (FIELD1_TO_PRIVATE_LEADING_BYTE): Changed to 0xc0.
149         (FIELD1_TO_OFFICIAL_LEADING_BYTE): Changed to 0x50.
150         (CHAR_FIELD2): New inline function.
151         (CHAR_FIELD3): New inline function.
152         (MULE_CHAR_PRIVATE_OFFSET): New macro.
153         (MIN_CHAR_OFFICIAL_TYPE9N): Shifted to `MULE_CHAR_PRIVATE_OFFSET'.
154         (MIN_CHAR_PRIVATE_TYPE9N): Likewise.
155         (MIN_CHAR_PRIVATE_TYPE9NX9N): Likewise.
156         (MIN_CHAR_OFFICIAL_TYPE9NX9N): Likewise.
157         (MIN_CHAR_COMPOSITION): Likewise.
158         (CHAR_LEADING_BYTE): Modified for character representation change.
159         (MAKE_CHAR): Likewise.
160
161         * lisp.h (Vcharset_latin_iso8859_1): New variable.
162         (Vcharset_greek_iso8859_7): Likewise.
163         (Vcharset_cyrillic_iso8859_5): Likewise.
164         (Vcharset_hebrew_iso8859_8): Likewise.
165         (Vcharset_thai_tis620): Likewise.
166         (Vcharset_katakana_jisx0201): Likewise.
167
168 1999-06-12  MORIOKA Tomohiko  <tomo@etl.go.jp>
169
170         * redisplay-x.c (separate_textual_runs): Run `ccl_driver' with
171         `CCL_MODE_ENCODING'.
172
173         * file-coding.c (mule_decode): Run `ccl_driver' with
174         `CCL_MODE_DECODING'.
175         (mule_encode): Run `ccl_driver' with `CCL_MODE_ENCODING'.
176
177         * mule-ccl.c (CCL_WRITE_CHAR): Refer `conversion_mode'.
178         (ccl_driver): Add new argument `conversion_mode'.
179         (Fccl_execute): Run `ccl_driver' with `CCL_MODE_ENCODING'.
180         (Fccl_execute_on_string): Likewise [perhaps it is better to add
181         new optional argument].
182
183         * mule-ccl.h (CCL_MODE_ENCODING): New macro.
184         (CCL_MODE_DECODING): New macro.
185         (ccl_driver): Add new argument `conversion_mode'.
186
187 1999-06-11  XEmacs Build Bot <builds@cvs.xemacs.org>
188
189         * XEmacs 21.2.16 is released
190
191 1999-06-10  Andy Piper  <andy@xemacs.org>
192
193         * select-msw.c (mswindows_own_selection): only set the clipboard
194         if asked.
195         (mswindows_get_foreign_selection): only get the clipboard if
196         asked.
197         (mswindows_disown_selection): only disown the clipboard if asked.
198
199 1999-06-03  MORIOKA Tomohiko  <tomo@etl.go.jp>
200
201         * file-coding.c (coding_system_from_mask): Use `raw-text' instead
202         of `no-conversion'.
203         (complex_vars_of_mule_coding): Use `raw-text' as the coding-system
204         of coding-category `no-conversion'.
205
206 1999-06-03  MORIOKA Tomohiko  <tomo@etl.go.jp>
207
208         * file-coding.c (Qraw_text): New variable.
209         (syms_of_mule_coding): Add new symbol `raw-text'.
210         (complex_vars_of_mule_coding): Add new coding-system `raw-text';
211         define coding-system `binary' independently; define coding-system
212         `no-conversion' as an alias for `raw-text'.
213
214         * file-coding.h (Qraw_text): New variable.
215
216 1999-05-20  MORIOKA Tomohiko  <tomo@etl.go.jp>
217
218         * mule-charset.c (complex_vars_of_mule_charset): Registry of
219         japanese-jisx0208-1978 should not match with "jisx0208.1983" nor
220         "jisc6226.1983".
221
222 1999-06-08  SL Baur  <steve@xemacs.org>
223
224         * s/decosf4-0.h: Explicitly #undef SYSTEM_MALLOC.
225
226 1999-06-06  Hrvoje Niksic  <hniksic@srce.hr>
227
228         * fns.c (MIME_LINE_LENGTH): Default to 72, as in mimencode and
229         base64.el.
230         (base64_decode_1): Signal errors instead of returning -1.
231
232 1999-06-07  Hrvoje Niksic  <hniksic@srce.hr>
233
234         * mule-charset.c (Fmake_char): Update docstring.
235
236 1999-06-07  Hrvoje Niksic  <hniksic@srce.hr>
237
238         * fns.c (Fstring_lessp): Actually increment the Bufbyte pointers.
239
240 1999-06-05  Hrvoje Niksic  <hniksic@srce.hr>
241
242         * fns.c (base64_decode_1): Allow and ignore any non-base64
243         characters in input.
244
245 1999-05-27  Olivier Galibert  <galibert@pobox.com>
246
247         * emacs.c (Fdump_emacs): Add clear_message() lost with the removal
248         of report_pure_usage().
249
250 1999-06-04  Hrvoje Niksic  <hniksic@srce.hr>
251
252         * fns.c (Fstring_lessp): Remove O(n^2) under Mule.
253
254 1999-06-04  XEmacs Build Bot <builds@cvs.xemacs.org>
255
256         * XEmacs 21.2.15 is released
257
258 1999-06-01  Hirokazu FUKUI  <fukui@atesoft.advantest.co.jp>
259
260         * frame.c (Fset_mouse_position):
261         (Fset_mouse_pixel_position):
262         * window.c (Fsplit_window):
263         (Fmove_to_window_line):
264         Fix crash when invoking functions with an already-deleted window
265         argument.
266
267         * indent.c (vertical_motion_1):
268         (vmotion_pixels):
269         (Fvertical_motion_pixels):
270         * window.c (Fwindow_displayed_text_pixel_height):
271         Fix error message when invoking functions with an already-deleted
272         window argument.
273
274 1999-06-01  Jan Vroonhof  <vroonhof@math.ethz.ch>
275
276         * sysdep.c (request_sigio_on_device): Guard against glibc
277         2.1's stub streams implementation.
278
279 1999-06-03  SL Baur  <steve@xemacs.org>
280
281         * config.h.in:
282         * emacs.c:  Implement x.y.z version numbers
283         From Jan Vroonhof <vroonhof@math.ethz.ch>
284
285 1999-05-20  MORIOKA Tomohiko  <tomo@etl.go.jp>
286
287         * mule-charset.c (complex_vars_of_mule_charset): Registry of
288         japanese-jisx0208-1978 should not match with "jisx0208.1983" nor
289         "jisc6226.1983".
290
291 1999-06-03  SL Baur  <steve@xemacs.org>
292
293         * frame-x.c:
294         * device-x.c: rename session option to wmcommand.
295         From Oliver Graf <ograf@rhein-zeitung.de>
296
297 1999-05-27  Hrvoje Niksic  <hniksic@srce.hr>
298
299         * fns.c (Fsubstring): Don't traverse the same region twice with
300         charcount_to_bytecount().
301
302 1999-06-03  SL Baur  <steve@steve1.m17n.org>
303
304         * m/alpha.h (SYSTEM_MALLOC): Fix indented preprocessor directive
305         garbage.
306
307         * s/decosf4-0.h: Defining ORDINARY_LINK here is redundant (and it
308         doesn't really work as is implied by the commentary).
309         Don't define SYSTEM_MALLOC so the old GNU malloc can be used.
310
311 1999-06-02  SL Baur  <steve@steve1.m17n.org>
312
313         * symsinit.h: Declare vars_of_ntproc.
314         * emacs.c (main_1): Call it.
315
316         * ntproc.c (syms_of_ntproc): Move variable initializations from
317         here ...
318         (vars_of_ntproc): ... to here [new function].
319
320         * file-coding.c (syms_of_file_coding): Rename.
321         (vars_of_file_coding): Ditto.
322         (complex_vars_of_file_coding): Ditto.
323
324         * symsinit.h: Rename *_mule_coding to *_file_coding.
325
326         * emacs.c (main_1): Call them by the proper name.
327
328         * device-msw.c (syms_of_device_mswindows): Move variable
329         initializations from here ...
330         (vars_of_device_mswindows): ... to here.
331
332         * chartab.c (vars_of_chartab): New function.
333
334         * symsinit.h: New function, vars_of_chartab.
335
336         * emacs.c (main_1): Call it.
337
338         * mule-canna.c (syms_of_mule_canna): Move CANNA initialization ...
339         (vars_of_mule_canna): ... to here.
340
341         * mule-ccl.c (vars_of_mule_ccl): New function.  Move variable
342         initializations out of syms_of_mule_ccl.
343
344         * symsinit.h: Declare new function vars_of_mule_ccl.
345
346         * emacs.c (main_1): Call it.
347
348 1999-05-27  Hrvoje Niksic  <hniksic@srce.hr>
349
350         * fns.c (base64_decode_1): Ignore whitespace.
351
352 1999-05-27  Hrvoje Niksic  <hniksic@srce.hr>
353
354         * mule-charset.c (Fmake_char): Strip the eighth bit off ARG1 and
355         ARG2.
356
357 1999-05-21  Andy Piper  <andy@xemacs.org>
358         
359         * xselect.c: deleted.
360         
361         * symsinit.h: declare select initialisation.
362
363         * select.h: new file. declare commonly used select functions and
364         variables.
365
366         * select.c: new file. generalised from xselect.c.
367         (clean_local_selection_data): moved from xselect.c.
368         (get_local_selection): ditto. device specific pieces called via a
369         devmeth.
370         (handle_selection_clear): ditto.
371         (Fown_selection_internal): renamed and generalised from
372         Fx_own_selection_internal. moved from xselect.c.
373         (Fdisown_selection_internal): ditto.
374         (Fselection_owner_p): ditto.
375         (Fselection_exists_p): ditto.
376         (Fget_selection_internal): ditto.
377         (syms_of_select): new function. QXXXX values moved from xselect.c
378         (vars_of_select): new function. selection_converter_alist,
379         lost_selection_hooks moved and renamed from xselect.c
380
381         * select-x.c: renamed from xselect.c.
382         (x_own_selection): converted to device specific. non-X-specific
383         bits moved to select.c.
384         (x_get_foreign_selection): ditto.
385         (x_disown_selection): ditto.
386         (x_selection_exists_p): ditto.
387         (console_type_create_select_x): new function.
388
389         * select-msw.c (mswindows_own_selection): new device method to set
390         the clipboard when we 'own' the selection.
391         (mswindows_get_foreign_selection): new device method to get the
392         clipboard.
393         (mswindows_disown_selection): new device method to delete the
394         selection when we 'disown' it.
395         (console_type_create_select_mswindows): new function.
396
397         * emacs.c (main_1): add select to things to initialise.
398
399         * console.h (struct console_methods): new console methods for
400         selection.
401
402         * Makefile.in.in (x_objs): xselect.c renamed to select-x.c
403
404 1999-05-20  Hrvoje Niksic  <hniksic@srce.hr>
405
406         * print.c (long_to_string): Install a faster version.
407
408 1999-05-16  Andy Piper  <andy@xemacs.org>
409
410         * ntproc.c (syms_of_ntproc): default
411         win32-start-process-share-console to t.
412
413 1999-05-14  Hrvoje Niksic  <hniksic@srce.hr>
414
415         * config.h.in: Do it here.
416
417         * bytecode.c: Don't define ERROR_CHECK_TYPECHECK here.
418
419 1999-05-14  Andy Piper  <andy@xemacs.org>
420
421         * toolbar-msw.c (mswindows_output_toolbar): hash on something
422         hashable.
423
424 1999-05-14  XEmacs Build Bot <builds@cvs.xemacs.org>
425
426         * XEmacs 21.2.14 is released
427
428 1999-05-12  Andy Piper  <andy@xemacs.org>
429
430         * ntproc.c (sys_spawnve): kludge argv[0] in a MS compatible way.
431
432 1999-05-11  Gunnar Evermann  <ge204@eng.cam.ac.uk>
433
434         * emacs.c (Frun_emacs_from_temacs): (re)alloc natgs+2 entries for
435         run_temacs_argv array -- fixes random memory corruption crash
436
437 1999-05-12  Jan Vroonhof  <vroonhof@math.ethz.ch>
438
439         * window.c (Fcurrent_window_configuration):
440         Save minibuffer height;
441
442         * window.c (set_window_configuration): use it.
443
444 1999-05-10  Robert Pluim  <rpluim@bigfoot.com>
445
446         * lisp.h (NNUNGCPRO): fix typo in name of DEBUG_GCPRO version
447
448 1999-04-21  Jan Vroonhof  <vroonhof@math.ethz.ch>
449
450         * redisplay.c (redisplay_window): Do not put data
451         in the line start cache if it is not guaranteed to be correct
452
453 1999-04-02  Jan Vroonhof  <vroonhof@math.ethz.ch>
454
455         * window.c (struct window_config): Removed frame
456         size members.
457         (window_config_equal): No longer compare frame sizes.
458         (Fset_window_configuration): Resize old top window to fit in the
459         current frame directly, no longer use a fake frame resize.
460         (Fcurrent_window_configuration): No longer save frame size
461
462 1999-05-11  Andy Piper  <andy@xemacs.org>
463
464         * ntproc.c (sys_spawnve): actually assign argv[0] instead of the
465         first character.
466
467 1999-05-10  Hrvoje Niksic  <hniksic@srce.hr>
468
469         * sysdep.c (init_system_name): If gethostname gives a proper
470         domain name, don't look further for one.
471
472 1999-05-09  Hrvoje Niksic  <hniksic@srce.hr>
473
474         * symbols.c (Fintern): Avoid frequent XSYMBOL (foo).
475         (Fintern_soft): Accept a symbol argument.
476
477 1999-05-06  Hrvoje Niksic  <hniksic@srce.hr>
478
479         * symbols.c (Fintern): ...do it here.
480
481         * lread.c (read_atom): Don't handle keywords here.
482
483 1999-05-06  Hrvoje Niksic  <hniksic@srce.hr>
484
485         * symbols.c (reject_constant_symbols): Just use SYMBOL_IS_KEYWORD.
486
487 1999-05-03  Olivier Galibert  <galibert@pobox.com>
488
489         * lisp.h (SYMBOL_IS_KEYWORD): A symbol can be a keyword only if it
490         is interned in the main obarray.
491
492 1999-04-23  Gunnar Evermann  <ge204@eng.cam.ac.uk>
493         
494         * menubar-x.c (pre_activate_callback): set accelerator field in
495         "No menu" entries to nil. Avoid crash in
496         command_builder_operate_menu_accelerator
497
498 1999-05-03  Olivier Galibert  <galibert@pobox.com>
499
500         * symeval.h (symbol_value_forward_lheader_initializer): Ditto.
501
502         * lisp.h (DEFUN): Fix lrecord header initialisation.
503
504 1999-05-02  Andy Piper  <andy@xemacs.org>
505
506         * objects-msw.c (mswindows_font_instance_truename): add a ';'.
507
508         * ntproc.c (sys_kill): cast using MS mandated defines.
509
510 1999-04-29  Andy Piper  <andy@xemacs.org>
511
512         * m/intel386.h: remove redundant definitions.
513
514         * s/mingw32.h: new header for mingw32.
515         
516         * unexnt.c: (open_input_file): function moved to nt.c.
517         (close_file_data): ditto.
518         (rva_to_section): function moved to ntproc.
519
520         * symsinit.h: declare syms_of_ntproc();
521         
522         * objects-msw.c (mswindows_font_instance_truename): new function.
523
524         * ntproc.c: remove many warnings.
525         (_sys_read_ahead): moved from nt.c and made static.
526         (rva_to_section): moved from unexnt.c but not defined under
527         mingw32.
528         (win32_executable_type): implement what we can for mingw32
529         headers.
530         (sys_spawnve): fix bad MULE/GCPRO bug in filename handling.
531
532         * ntheap.h: remove declarations of functions that are now static.
533         
534         * ntheap.c: support static heap.
535
536         * nt.h: conditionalise X_OK definition.
537
538         * nt.c: eliminate many warnings and support mingw32.
539         (open_input_file): function moved from unexnt.c and made static
540         (close_file_data): ditto.
541         (_sys_read_ahead): moved to ntproc.c
542
543         * emacs.c: make sure syms_of_ntptroc gets called under windows.
544         
545         * console-msw.h: support mingw32.
546         * getloadavg.c: ditto.
547         * ntplay.c: ditto.
548         * sysdep.c: ditto.
549         * sysdir.h: ditto.
550         * systime.h: ditto.
551         * systty.h: ditto.
552
553         * config.h.in: dont turn on DEBUG_ENCAPSULATION by default because
554         some systems don't have all of the encapsulated system calls.
555         
556         * callproc.c: warning elimination.
557         * dired-msw.c: ditto.
558         * process-nt.c: ditto.
559         * realpath.c: ditto.
560         
561         * Makefile.in.in: tweak : and ; for building under mswindows.
562         
563 1999-04-26  Michael Harnois  <mharnois@willinet.net>
564
565         * eldap.c (allocate_ldap): Adapt to the new semantics of
566         alloc_lcrecord_type().
567
568 1999-03-16  MORIOKA Tomohiko  <tomo@etl.go.jp>
569
570         * file-coding.c (DECODE_HANDLE_END_OF_CONVERSION): fixed.
571
572 1998-09-04  MORIOKA Tomohiko  <morioka@jaist.ac.jp>
573
574         * Delete mule-coding.c and mule-coding.h because they are not
575         used.
576
577 1999-04-22  Gunnar Evermann  <ge204@eng.cam.ac.uk>
578
579         * objects.c (print_font_instance): Check for NILP(f->device),
580         i.e. Vthe_null_font_instance.
581         (font_instance_truename_internal): ditto.
582         (Ffont_instance_properties): ditto.
583
584 1999-04-22  Olivier Galibert  <galibert@pobox.com>
585
586         * lrecord.h (DECLARE_LRECORD): lrecord_implementation isn't an
587         array anymore.
588
589 1999-04-22  Hrvoje Niksic  <hniksic@srce.hr>
590
591         * Makefile.in.in (tests): Don't mention tests explicitly -- makes
592         it easier to add new ones.
593
594 1999-04-22  Hrvoje Niksic  <hniksic@srce.hr>
595
596         * symbols.c (reject_constant_symbols): Ditto.
597         (init_symbols_once_early): Ditto.
598
599         * print.c (print_symbol): Don't use ->obarray.
600
601         * symbols.c (Funintern): Ditto.
602
603         * alloc.c (Fmake_symbol): Don't set ->obarray.
604
605         * lisp.h (struct Lisp_Symbol): Removed .obarray field.
606
607         * symbols.c (init_symbols_once_early): Removed
608         Vpure_uninterned_symbol_table.
609         (Fintern): Don't store to ->obarray field.
610
611 1999-04-22  Hrvoje Niksic  <hniksic@srce.hr>
612
613         * data.c (vars_of_data): Default debug_issue_ebola_notices to 0.
614         (eq_with_ebola_notice): Remove abracadabra support.
615
616 1999-04-11  Oscar Figueiredo  <Oscar.Figueiredo@di.epfl.ch>
617
618         * eldap.c (Fldap_search_internal): Add a new parameter `withdn' to
619         retrieve the distinguished names of entries
620
621 1999-03-08  Martin Buchholz  <martin@xemacs.org>
622
623         * lread.c (read_escape): Make hex escapes read only two hex digits.
624
625 1999-04-05  Olivier Galibert  <galibert@pobox.com>
626
627         * Makefile.in.in: Remove puresize-adjust.h and recursive makes.
628         * make-src-depend: Remove puresize-adjust.h.
629         * src-headers: Remove puresize-adjust.h.
630         * config.h.in: Kill everything purespace/gung-ho related.
631
632         * dbxrc: Make gung-ho mandatory.
633         * gdbinit: Ditto.
634
635         * lrecord.h: Make gung-ho mandatory.  Remove pure flag and add
636         c_readonly and lisp_readonly.  Remove implementation arrays.
637         (C_READONLY_RECORD_HEADER_P): Added.
638         (LISP_READONLY_RECORD_HEADER_P): Added.
639         (SET_C_READONLY_RECORD_HEADER): Added.
640         (SET_LISP_READONLY_RECORD_HEADER): Added.
641
642         * lisp.h: Kill everything purespace/non gung-ho related.
643         (CHECK_C_WRITEABLE): Added.
644         (CHECK_LISP_WRITEABLE): Added.
645         (C_READONLY): Added.
646         (LISP_READONLY): Added.
647
648         * lisp-union.h: Make gung-ho mandatory.
649         * lisp-disunion.h: Ditto.
650
651         * alloc.c: Kill everything purespace/non  gung-ho related. Fix all
652         set_lheader_implementation calls.
653         (c_readonly): Added.
654         (lisp_readonly): Added.
655         (make_string_nocopy): Added.
656         (Fpurecopy):  Changed to do  nothing.   Kept the old documentation
657         for reference purposes for the next patches.
658         (sweep_lcrecords_1): Don't free C readonly lcrecords.
659         (sweep_bit_vectors_1): Don't free C readonly bitvectors.
660         (SWEEP_FIXED_TYPE_BLOCK): Don't free C readonly lrecords.
661
662         * fns.c: Make gung-ho mandatory.
663         (Fput): CHECK_IMPURE -> CHECK_LISP_WRITEABLE.
664         (Fremprop): Ditto.
665         (Ffillarray): Ditto.
666
667         * data.c: Make gung-ho mandatory.
668         (pure_write_error): Removed.
669         (c_write_error): Added.
670         (lisp_write_error): Added.
671         (Fsetcar): CHECK_IMPURE -> CHECK_LISP_WRITEABLE.
672         (Fsetcdr): Ditto.
673         (Faset): Ditto.
674
675         * symbols.c: Make gung-ho mandatory.  make_pure_pname ->
676                   make_string or make_string_nocopy.  Fix various
677                   alloc_lcrecord_type.
678         
679         * lread.c: Remove everything purespace related.
680         (Flocate_file_clear_hashing): purified -> c_readonly.
681         (locate_file): Ditto.
682         (read_atom): make_pure_pname -> make_string.
683
684         * emacs.c (Frun_emacs_from_temacs): Remove purespace stats
685                   reporting.
686         (Fdump_emacs): Ditto.
687
688         * print.c (print_internal): Make gung-ho mandatory.
689         * ntheap.c (sbrk): Ditto.
690         * mem-limits.h (EXCEEDS_LISP_PTR): Ditto
691         * symeval.h (symbol_value_forward_lheader_initializer): Ditto.
692
693         * sheap.c (more_static_core): Remove puresize-adjust.h from
694                   message.
695
696         * syntax.c (complex_vars_of_syntax): make_pure_string ->
697                   make_string_nocopy.
698         * keymap.c (make_keymap): Fix alloc_lcrecord_type.
699         (vars_of_keymap): make_pure_string -> make_string_nocopy.
700         * events.c (deinitialize_event): Fix set_lheader_implementation.
701         (zero_event): Ditto.
702         * specifier.c (make_specifier_internal): Fix alloc_lcrecord.
703         * menubar-x.c (set_frame_menubar): Fix alloc_lcrecord_type.
704         * mule-charset.c (make_charset): Ditto.
705         * console.c (allocate_console): Ditto.
706         (complex_vars_of_console): Ditto.
707         * file-coding.c (allocate_coding_system): Ditto.
708         * device.c (allocate_device): Ditto
709         * gui-x.c (gcpro_popup_callbacks): Ditto.
710         * extents.c (allocate_extent_auxiliary): Ditto.
711         (allocate_extent_info): Ditto.
712         (copy_extent): Ditto.
713         * glyphs.c (allocate_image_instance): Ditto.
714         (allocate_glyph): Ditto.
715         * frame.c (allocate_frame_core): Ditto.
716         * database.c (allocate_database): Ditto.
717         * tooltalk.c (make_tooltalk_message): Ditto.
718         (make_tooltalk_pattern): Ditto.
719         * rangetab.c (Fmake_range_table): Ditto.
720         (Fcopy_range_table): Ditto.
721         * process.c (make_process_internal): Ditto.
722         * chartab.c (Fmake_char_table): Ditto.
723         (make_char_table_entry): Ditto.
724         (copy_char_table_entry): Ditto.
725         (Fcopy_char_table): Ditto.
726         * elhash.c (make_general_lisp_hash_table): Ditto.
727         (Fcopy_hash_table): Ditto.
728         * buffer.c (allocate_buffer): Ditto.
729         (complex_vars_of_buffer): Ditto.
730         * event-stream.c (allocate_command_builder): Ditto.
731         * objects.c (Fmake_color_instance): Ditto.
732         (Fmake_font_instance): Ditto.
733         (vars_of_objects): Ditto.
734         * toolbar.c (update_toolbar_button): Ditto.
735         * window.c (allocate_window): Ditto.
736         (make_dummy_parent): Ditto.
737         (Fcurrent_window_configuration): Fix alloc_lcrecord.
738         (vars_of_window): Fix make_lcrecord_list.
739         * faces.c (allocate_face): Fix alloc_lcrecord_type. pure_list ->
740                   Flist.
741         * lstream.c (Lstream_new): Fix make_lcrecord_list.
742         * opaque.c (make_opaque): Fix alloc_lrecord.
743         (make_opaque_list): Fix alloc_lrecord_type.
744
745 1999-04-19  Hrvoje Niksic  <hniksic@srce.hr>
746
747         * process.c (Fstart_process_internal): Ditto.
748
749         * ntproc.c (sys_spawnve): Use Vlisp_EXEC_SUFFIXES when calling
750         locate_file().
751
752         * glyphs-x.c (x_locate_pixmap_file): Ditto.
753
754         * glyphs-msw.c (mswindows_locate_pixmap_file): Fix call to
755         locate_file().
756
757         * emodules.c (vars_of_module): New variable Vmodule_extensions.
758         (emodules_load): Use it when calling locate_file().
759
760         * emacs.c (main_1): Use Vlisp_EXEC_SUFFIXES when calling
761         locate_file().
762
763         * callproc.c: Vlisp_EXEC_SUFFIXES: New variable.
764         (vars_of_callproc): Initialize it.
765         (Fcall_process_internal): Use it when calling locate_file().
766
767         * alloc.c (disksave_object_finalization): Use
768         Flocate_file_clear_hashing().
769
770         * lread.c (Flocate_file_clear_hashing): Clear all hasing when
771         given `t' as argument.
772
773 1999-04-18  Hrvoje Niksic  <hniksic@srce.hr>
774
775         * lread.c (locate_file): Expand `pathel' when appropriate.
776         (Flocate_file_clear_hashing): Expand path elements.
777         (Flocate_file_clear_hashing): Use Vlocate_file_hash_table.
778
779         * dired.c (make_directory_hash_table): Create the hash-table only
780         if the directory open is successful.
781
782         * lread.c (decode_mode_1): New function.
783         (decode_mode): Ditto.
784         (Flocate_file): Use them.
785         (Flocate_file): Expand FILENAME.
786         (locate_file_map_suffixes): New function.
787         (locate_file_in_directory_mapper): New function.
788         (locate_file_in_directory): Use locate_file_in_directory_mapper()
789         and locate_file_map_suffixes().
790         (locate_file_construct_suffixed_files): Use
791         locate_file_map_suffixes().
792         (locate_file_without_hash): Don't GCPRO path.
793         (Flocate_file_clear_hashing): Use EXTERNAL_LIST_LOOP.
794         (syms_of_lread): Remove Qlocate_file_hash_table.
795         (locate_file_find_directory_hash_table): Use
796         Vlocate_file_hash_table.
797         (locate_file_refresh_hashing): Ditto.
798
799         * lread.c: Renamed read_objects to Vread_objects.
800
801 1999-04-16  Olivier Galibert  <galibert@pobox.com>
802
803         * mule-charset.c: Generally resync with fsf 20.3 charset
804         interface.
805         (make_charset): Add long and short name.  Use id instead of
806         leading byte.
807         (Fmake_charset): Ditto.
808         (Fmake_reverse_direction_charset): Ditto.
809         (Fcharset_property): Ditto.
810         (Fcharset_short_name): Added.
811         (Fcharset_long_name): Added.
812         (Fcharset_description): Renamed from charset-doc-string.
813         (syms_of_mule_charset): Synced symbols.
814         (complex_vars_of_mule_charset): Synced charsets.
815
816         * mule-charset.h: Removed leading byte (uses id instead), added
817         short and long name.
818
819 1999-04-15  Hrvoje Niksic  <hniksic@srce.hr>
820
821         * file-coding.c (Fdefine_coding_system_alias): New function.
822
823 1999-04-08  Olivier Galibert  <galibert@pobox.com>
824
825         * mule-charset.c (complex_vars_of_mule_charset): Allow all iso8859
826         and -ascii fonts for displaying ascii instead of iso8859-1 only.
827
828 1998-12-14  Hrvoje Niksic  <hniksic@srce.hr>
829
830         * extents.c (set_extent_glyph_1): Make sure that the glyph we
831         attach to the extent is valid.
832
833 1998-12-12  Hrvoje Niksic  <hniksic@srce.hr>
834
835         * dired.c (user_name_completion): Mule-ize.
836         (user_name_completion): Use xmalloc/xrealloc/xfree.
837         (user_name_completion): Use DO_REALLOC.
838         (user_name_completion): Cut down the number of static variables;
839         use a structure.
840         (user_name_completion): Username completion is always
841         case-sensitive.
842
843 1998-12-06  Hrvoje Niksic  <hniksic@srce.hr>
844
845         * fns.c (base64_decode_1): Remove COUNTER.
846         (base64_decode_1): Accept CRLF in addition to CR.
847         (base64_decode_1): Disallow a stray character after final EOF; the 
848         check was probably a remnant of buggy recode code.
849
850 1998-12-05  Hrvoje Niksic  <hniksic@srce.hr>
851
852         * fns.c (init_provide_once): Provide `base64'.
853
854 1998-12-04  Hrvoje Niksic  <hniksic@srce.hr>
855
856         * fns.c (XMALLOC_UNBIND): Include SPECCOUNT argument, for clarity.
857         (Fbase64_encode_region): If buffer is read-only, bail out early.
858         (Fbase64_decode_region): Ditto.
859         (Fbase64_encode_region): Initialize SPECCOUNT to pacify the
860         compiler.
861         (Fbase64_encode_string): Ditto.
862         (Fbase64_decode_region): Ditto.
863         (Fbase64_decode_string): Ditto.
864
865 1998-11-25  Hrvoje Niksic  <hniksic@srce.hr>
866
867         * dired.c (Fdirectory_files): Remove redundant code.
868
869 1999-03-05  Philip Aston  <philipa@parallax.co.uk>
870
871         * frame-msw.c Make raise-frame restore minimised windows.
872
873 1999-03-05  Philip Aston  <philipa@parallax.co.uk>
874
875         * device-msw.c: Fix DEFVAR format - Death to phantom quote, and
876         add magic newline.
877
878 1999-03-05  Philip Aston  <philipa@parallax.co.uk>
879
880         * toolbar-msw.c Consider captions when deciding whether to rebuild
881         toolbar. This fixes the initial toolbar display for those of us
882         who don't like captions. These patches applied by Andy Piper.
883
884 1999-03-12  XEmacs Build Bot <builds@cvs.xemacs.org>
885
886         * XEmacs 21.2.13 is released
887
888 1999-03-12  SL Baur  <steve@xemacs.org>
889
890         * file-coding.c: Guard ucs table initialization with ifdef MULE.
891
892 1999-03-10  Stephen J. Turnbull  <turnbull@sk.tsukuba.ac.jp>
893
894         * file-coding.c:  docstring and comment improvements.
895         (decode_ucs4)  flag possible data loss with comment.
896
897 1999-03-10  Martin Buchholz  <martin@xemacs.org>
898
899         * file-coding.c (Fset_ucs_char): add CHECK_INT, CHECK_CHAR
900         (ucs_to_char):
901         (Fucs_char):
902         (Fset_char_ucs):
903         (decode_coding_ucs4):
904         (encode_coding_ucs4):
905         (detect_coding_utf8):
906         (decode_coding_utf8):
907         (encode_utf8):
908         (encode_coding_utf8):
909         Add CHECK_* macros where needed to avoid crashes.
910         #ifdef out all composite character support using
911         #ifdef ENABLE_COMPOSITE_CHARS
912         Use normal XEmacs coding standards.
913         Fix docstrings.
914         Remove CODING_STREAM_COMPOSE, CODING_STREAM_DECOMPOSE.
915
916 1998-09-08  MORIOKA Tomohiko  <morioka@jaist.ac.jp>
917
918         * file-coding.c (make-coding-system): Add description about
919         `ucs-4' and `utf-8'.
920         (detection_state): Modify to implement ucs-4 and utf-8.
921         (detect_coding_type): Likewise.
922         (detect_coding_ucs4): New implementation.
923         (detect_coding_utf8): New implementation.
924         (encode_utf8): fixed.
925         (syms_of_mule_coding): Rename `ucs4' and `utf8' to `ucs-4' and
926         `utf-8'.
927
928 1998-09-08  MORIOKA Tomohiko  <morioka@jaist.ac.jp>
929
930         * file-coding.c (mule_char_to_ucs4): Encode 94x94 chars in ISO
931         2022 registry to private area.
932
933 1998-09-07  MORIOKA Tomohiko  <morioka@jaist.ac.jp>
934
935         * file-coding.c (encode_utf8): New function.
936         (encode_coding_utf8): New implementation.
937
938 1998-09-07  MORIOKA Tomohiko  <morioka@jaist.ac.jp>
939
940         * file-coding.c (ucs_to_mule_table): New variable; abolish
941         `Vucs_to_mule_table'
942         (mule_to_ucs_table): renamed from `Vmule_to_ucs_table'.
943         (set-ucs-char): New function.
944         (ucs_to_char): New function.
945         (ucs-char): New function.
946         (set-char-ucs): New function.
947         (char-ucs): New function.
948         (decode_ucs4): Use `ucs_to_char'.
949         (complex_vars_of_mule_coding): Abolish `ucs-to-mule-table' and
950         `mule-to-ucs-table'.
951
952 1998-09-06  MORIOKA Tomohiko  <morioka@jaist.ac.jp>
953
954         * chartab.h: EXFUN `Fget_char_table'.
955
956         * file-coding.c (encode_ucs4): New function.
957         (encode_coding_ucs4): Use `encode_ucs4'.
958
959 1998-09-06  MORIOKA Tomohiko  <morioka@jaist.ac.jp>
960
961         * file-coding.c (decode_coding_ucs4): New implementation.
962
963 1998-09-06  MORIOKA Tomohiko  <morioka@jaist.ac.jp>
964
965         * file-coding.c (decode_coding_ucs4): fixed.
966
967         * file-coding.c (Vmule_to_ucs_table): New variable.
968         (mule_char_to_ucs4): New function.
969         (encode_coding_ucs4): New implementation.
970         (complex_vars_of_mule_coding): Define variable
971         `mule-to-ucs-table'.
972
973 1998-09-06  MORIOKA Tomohiko  <morioka@jaist.ac.jp>
974
975         * file-coding.c (decode_coding_utf8): New implementation.
976
977 1998-09-06  MORIOKA Tomohiko  <morioka@jaist.ac.jp>
978
979         * file-coding.c (decode_coding_utf8): fixed.
980
981 1998-09-06  MORIOKA Tomohiko  <morioka@jaist.ac.jp>
982
983         * file-coding.c (Vucs_to_mule_table): New variable.
984         (decode_ucs4): Refer `Vucs_to_mule_table'.
985         (complex_vars_of_mule_coding): Define variable
986         `ucs-to-mule-table'.
987
988 1998-09-04  MORIOKA Tomohiko  <morioka@jaist.ac.jp>
989
990         * file-coding.c (detect_coding_ucs4): New function (not
991         implemented yet).
992         (decode_coding_ucs4): New function.
993         (encode_coding_ucs4): New function (not implemented yet).
994         (detect_coding_utf8): New function (not implemented yet).
995         (decode_coding_utf8): New function.
996         (encode_coding_utf8): New function (not implemented yet).
997         (make-coding-system): New type `ucs4' and `utf8'.
998         (coding-system-type): Likewise.
999         (detection_state): Add `ucs4' and `utf8'.
1000         (detect_coding_type): Likewise.
1001         (mule_decode): Use `decode_coding_ucs4' and `decode_coding_utf8'.
1002         (mule_encode): Use `encode_coding_ucs4' and `encode_coding_utf8'.
1003         (decode_ucs4): New function (very incomplete).
1004         (syms_of_mule_coding): Add `ucs4' and `utf8'.
1005
1006         * file-coding.h: Add definitions for UCS-4 and UTF-8.
1007
1008 1999-03-08  Martin Buchholz  <martin@xemacs.org>
1009
1010         * mule-charset.c:
1011         (non_ascii_valid_char_p):
1012         (lookup_composite_char):
1013         (composite_char_string):
1014         (make-composite-char):
1015         (composite-char-string):
1016         (syms_of_mule_charset): 
1017         (complex_vars_of_mule_charset): 
1018         * mule-charset.h (LEADING_BYTE_COMPOSITE):
1019         (CHAR_LEADING_BYTE):
1020         (MAKE_CHAR):
1021         * file-coding.h (CODING_STATE_COMPOSITE):
1022         (CODING_STATE_ISO2022_LOCK):
1023         (iso_esc_flag):
1024         (LEADING_BYTE_COMPOSITE):
1025         * file-coding.c (struct iso2022_decoder):
1026         (decoding_closer):
1027         (reset_iso2022):
1028         (parse_iso2022_esc):
1029         (encode_coding_iso2022):
1030         #ifdef out all composite character support using 
1031         #ifdef ENABLE_COMPOSITE_CHARS 
1032
1033         * alloc.c: Define lrecord_coding_system only if ! FILE_CODING
1034
1035 1999-03-04  Takeshi YAMADA <yamada@cslab.kecl.ntt.co.jp>
1036
1037         * fns.c (Fbase64_encode_string): Calculate `allength' in the same
1038         way of `Fbase64_encode_region'.
1039
1040 1999-02-18  Katsumi Yamaoka   <yamaoka@jpl.org>
1041
1042         * fns.c (base64_encode_1): Don't add a newline at the tail.
1043
1044 1999-03-08  Andy Piper  <andy@xemacs.org>
1045
1046         * menubar-msw.c (displayable_menu_item): correct off-by-one &
1047         handling.
1048
1049 1999-03-07  Martin Buchholz  <martin@xemacs.org>
1050
1051         * console-stream.h (struct stream_console):
1052         * event-unixoid.c (event_stream_unixoid_select_console):
1053         (event_stream_unixoid_unselect_console):
1054         * print.c (Fexternal_debugging_output):
1055         * sysdep.c (reset_one_device):
1056         * console-stream.c (stream_init_console):
1057         (stream_delete_console):
1058         (allocate_stream_console_struct): move into stream_init_console.
1059         (free_stream_console_struct): move into stream_delete_console.
1060         Use `fd' only for file descriptors.
1061         Therefore, rename members of struct stream_console.
1062
1063         * systime.h: Unix98 says sys/time.h should define select(), but
1064         some systems define that in unistd.h.  So include that file always.
1065
1066         * glyphs.h (MAYBE_IIFORMAT_METH): Don't use leading `_'.  Avoid
1067         multiple evaluation of first arg.  Do proper do {} while (0) wrapping.
1068         (HAS_IIFORMAT_METH_P): Prevent macro from being used in
1069         non-boolean context
1070         (MAYBE_IIFORMAT_DEVMETH): Use standard internal macro naming convention.
1071
1072         * EmacsShell.c:
1073         * balloon_help.c:
1074         Add #include <stdio.h>.
1075         Some versions of assert.h use printf() without #include'ing stdio.h
1076
1077         * free-hook.c (blocktype): Add gcpro5_type to blocktype.
1078         (log_gcpro): Remove unused variable FRAME.
1079         (show_gcprohist): Ansify.
1080         Comment the #endif's
1081
1082         * frame-x.c (x_delete_frame): Don't use FRAME_X_SHELL_WIDGET(f)
1083         after it's just been XtDestroy'ed!
1084
1085 1999-02-18  Martin Buchholz  <martin@xemacs.org>
1086
1087         * opaque.c (print_opaque):
1088         (sizeof_opaque):
1089         (equal_opaque):
1090         (hash_opaque):
1091         Egcs 1.1.1 seems to have a bug where
1092         INTP (p->size_or_chain)
1093         will crash XEmacs.  Fix by introducing intermediate variable.
1094
1095         * sound.c (Fdevice_sound_enabled_p): Fix compiler warning.
1096
1097         * dired.c (Fdirectory_files):
1098         (Ffile_name_completion):
1099         (Ffile_name_all_completions):
1100         (file_name_completion):
1101         - Use `directory' instead of `dirname' to sync with FSF Emacs and
1102         avoid compiler warnings.
1103         - Fix up docstrings so that C variables match documentation.
1104
1105 1999-03-05  Martin Buchholz  <martin@xemacs.org>
1106
1107         * alloc.c: (garbage_collect_1): Reorg code to make scope of local
1108         variables as small as possible to help out the compiler and the maintainer.
1109
1110         * alloc.c: (disksave_object_finalization):
1111         Set all the *-load-path variables to
1112         nil, not just load-path itself.  This gets the locate-file hash
1113         tables garbage collected BEFORE dump, and has the side effect of
1114         preventing crashes on OSF4.0+egcs.
1115
1116         * alloc.c:
1117         * gdbinit:
1118         * dbxrc:
1119         - Clean up gdb/dbx debugging support.
1120         - Storing an EMACS_INT in an enum is not 64-bit clean!
1121         - So change the enum to a set of separate variables.
1122         - Add test cases to help debug the debugging support!
1123         - Add `lisp-shadows' and `run-temacs' targets for dbx.
1124         - Both dbx and gdb have been tested now.
1125
1126 1999-03-05  XEmacs Build Bot <builds@cvs.xemacs.org>
1127
1128         * XEmacs 21.2.12 is released
1129
1130 1999-02-16  Kazuyuki IENAGA  <ienaga@jsys.co.jp>
1131
1132         * device-x.c: Support to find best visual without flashing.
1133
1134 1999-03-02  Paul Keusemann  <pkeusem@visi.com>
1135
1136         * database.c (berkdb_map): Add flags argument to cursor call (must
1137           be 0 according to docs) required for Berkeley DB 2.6.4 and later.
1138
1139 1999-03-03  Martin Buchholz  <martin@xemacs.org>
1140
1141         * hash.c:
1142         * hash.h:
1143         General cleanup.  Get free-hook.c working again.
1144         Remove unused functions:
1145         make_strings_hash_table, copy_hash, expand_hash_table.
1146
1147         * malloc.c:
1148         * mem-limits.h:
1149         Always use new ANSI-style function prototypes.
1150
1151         * unexalpha.c (unexec): Never use implicit int.
1152
1153         * sgiplay.c (close_sound_file):
1154         (play_sound_file):
1155         (restore_audio_port):
1156         (play_sound_data):
1157         (audio_initialize):
1158         (play_internal):
1159         (drain_audio_port):
1160         (write_mulaw_8_chunk):
1161         (write_linear_chunk):
1162         (write_linear_32_chunk):
1163         (initialize_audio_port):
1164         (open_audio_port):
1165         (set_channels):
1166         (set_output_format):
1167         (adjust_audio_volume):
1168         (get_current_volumes):
1169         (parse_snd_header):
1170         Always use new ANSI-style function prototypes.
1171         Use unistd.h for missing prototypes.
1172
1173         * unexelfsgi.c (round_up):
1174         (find_section):
1175         (unexec): Always use new ANSI-style function prototypes
1176
1177         * elhash.c (struct Lisp_Hash_Table): rename golden to golden_ratio
1178
1179         * console.h (struct console_methods): Always use full ANSI prototypes
1180
1181         * emacs.c (__sti__iflPNGFile_c___): Always use full ANSI prototypes
1182
1183 1999-03-02  Andy Piper  <andy@xemacs.org>
1184
1185         * event-stream.c (init_event_stream): make sure native mswindows
1186         gets an appropriate event loop.
1187
1188 1999-02-22  Andy Piper  <andy@xemacs.org>
1189
1190         * frame-msw.c (mswindows_make_frame_visible): use SW_SHOW rather
1191         than SW_SHOWNORMAL to prevent resizing of maximised frames.
1192         (mswindows_raise_frame): remove comment.
1193
1194 1999-03-01  XEmacs Build Bot <builds@cvs.xemacs.org>
1195
1196         * XEmacs 21.2.11 is released
1197
1198 1999-02-25  SL Baur  <steve@xemacs.org>
1199
1200         * mule-charset.c (Qleading_byte): New variable to implement
1201         charset-leading-byte function.
1202         (Fcharset_property): Use it.
1203         (syms_of_mule_charset): Initialize it.
1204         From Kazuyuki IENAGA <ienaga@jsys.co.jp>
1205
1206 1999-02-17  Kazuo Oishi <oishi@ae.agr.yamaguchi-u.ac.jp>
1207
1208         * glyphs-x.c (cononvert_EImage_to_XImage): correct
1209         bytes per pixel counting.
1210
1211 1999-02-15  Andy Piper  <andy@xemacs.org>
1212
1213         * s/cygwin32.h (BROKEN_SIGIO): don't define this as it causes
1214         major lockups.
1215
1216 1999-02-16  MORIOKA Tomohiko  <morioka@jaist.ac.jp>
1217
1218         * fns.c (Fbase64_encode_string): New optional argument
1219         `NO_LINE_BREAK'.
1220
1221 1999-02-16  Martin Buchholz  <martin@xemacs.org>
1222
1223         * gdbinit:  Fix up commands to run temacs.  Add lisp-shadows command.
1224         * alloc.c (xcalloc):  undef xcalloc, just like xmalloc
1225
1226 1999-02-10  Martin Buchholz  <martin@xemacs.org>
1227
1228         * s/bsdos4.h: New file.  Port to BSDI BSD/OS 4.0.
1229         * xintrinsic.h:  Redo CONST support for X11 R4 compatibility.
1230
1231 1999-02-05  XEmacs Build Bot <builds@cvs.xemacs.org>
1232
1233         * XEmacs 21.2.10 is released
1234
1235 1999-02-02  Gleb Arshinov  <gleb@cs.stanford.edu>
1236
1237         * process-nt.c (nt_send_process):
1238         Fix for process-send-region/process-send-string breaking when size
1239         of the input > 128 chars: change maximum chunk size for process
1240         stream from 512 to 128, thus guaranteeing that ntpipe_shove_writer
1241         succeeds.
1242
1243 1999-02-02  XEmacs Build Bot <builds@cvs.xemacs.org>
1244
1245         * XEmacs 21.2.9 is released
1246
1247 1999-01-30  Martin Buchholz  <martin@xemacs.org>
1248
1249         * bytecode.c (funcall_compiled_function): Call
1250         UNBIND_TO_GCPRO instead of UNBIND_TO_GCPRO_VARIABLES_ONLY.
1251
1252         * backtrace.h (UNBIND_TO_GCPRO_VARIABLES_ONLY):
1253         #ifdef 0 out unused macro.
1254
1255 1999-01-27  Martin Buchholz  <martin@xemacs.org>
1256
1257         * gui.c (gui_parse_item_keywords_internal): Make static.
1258
1259 1999-01-21  Andy Piper  <andy@xemacs.org>
1260
1261         * glyphs-msw.c: add xface support.
1262         (mswindows_xface_instantiate): new function copied from glyphs-x.c
1263         (image_instantiator_format_create_glyphs_mswindows): do device
1264         specific initialisation for xfaces.
1265         (xbm_create_bitmap_from_data): line data must be padded to a word
1266         boundary.
1267
1268         * glyphs-x.c (xface_validate): moved to glyphs.c
1269         (xface_normalize): ditto.
1270         (xface_possible_dest_types): ditto.
1271         (image_instantiator_format_create_glyphs_x): do device specific
1272         initialisation for xfaces.
1273
1274         * glyphs.h: declare xface symbol.
1275
1276         * glyphs.c: move generic xface support here.
1277         (xface_validate): moved from glyphs-x.c
1278         (xface_normalize): ditto.
1279         (xface_possible_dest_types): ditto.
1280         (image_instantiator_format_create): xface declarations moved from
1281         glyphs-x.c.
1282
1283 1999-01-14  Adrian Aichner  <aichner@ecf.teradyne.com>
1284
1285         * event-stream.c (vars_of_event_stream): Fixing documentation.
1286
1287 1999-01-17  Gunnar Evermann  <ge204@eng.cam.ac.uk>
1288
1289         * glyphs-eimage.c (gif_instantiate): Correct handling of
1290         interlaced gifs to avoid writing past the end of the eimage
1291         buffer.
1292
1293 1999-01-13  Hrvoje Niksic  <hniksic@srce.hr>
1294
1295         * search.c (Freplace_match): Handle single backslash at end of
1296         NEWTEXT correctly.
1297
1298 1999-01-12  William M. Perry  <wmperry@aventail.com>
1299
1300         * eldap.c (Fldap_open): slow down interrupts around ldap_open to
1301           avoid connection errors.
1302
1303 1999-01-12  Andy Piper  <andy@xemacs.org>
1304
1305         * redisplay-output.c (redisplay_update_line): backout change that
1306         shouldn't have gone ine.
1307
1308 1999-01-09  Oscar Figueiredo  <Oscar.Figueiredo@di.epfl.ch>
1309
1310         * eldap.c (vars_of_ldap): Do no provide `ldap' here since it may
1311         collide with ldap.el
1312
1313 1999-01-11  Andy Piper  <andy@xemacs.org>
1314
1315         * redisplay.h (DISPLAY_LINE_HEIGHT): new macro.
1316         (DISPLAY_LINE_YPOS): new macro.
1317
1318         * redisplay-msw.c (mswindows_output_string): use it.
1319         (mswindows_output_pixmap): ditto.
1320         (mswindows_output_display_block): ditto.
1321
1322         * redisplay-output.c (redisplay_output_display_block): new
1323         function. just call the devmeth, maybe insert some generic code
1324         here later.
1325         (compare_display_blocks): use it.
1326         (output_display_line): ditto.
1327         (redisplay_unmap_subwindows_maybe): new function. potentially
1328         unmap subwindows in the given area.
1329
1330         * glyphs.c (reset_subwindow_cachels): unmap subwindows that we are
1331         resetting.
1332
1333 1999-01-10  J. Kean Johnston  <jkj@sco.com>
1334
1335         * Makefile.in.in: Set value of moduledir
1336         - Changed DUMPENV to include $(MODULEPATH)
1337         - Added install rule to install header files for use by ellcc.
1338
1339         * config.h.in: Added INHIBIT_SITE_MODULES
1340         - Added HAVE__DLERROR
1341         - Added HAVE_DLFCN_H
1342         - Added DLSYM_NEEDS_UNDERSCORE
1343
1344         * dll.c: Removed.
1345
1346         * emodules.c: New file containing dynamic loading code.
1347
1348         * emodules.h: New file.
1349
1350         * emacs.c: Added variables Vmodule_directory,
1351         Vsite_module_directory, Vconfigure_module_directory and
1352         Vconfigure_site_module_directory.
1353         - (main_1): Added new variable inhibit_site_modules and command
1354         line options `-no-site-modules' and `--no-site-modules'.
1355         - (main_1): Call syms_of_module() instead of syms_of_dll().
1356         - (main_1): Call vars_of_module().
1357         - (vars_of_emacs): Introduce inhibit-site-modules,
1358         module-directory, configure-module-directory,
1359         site-module-directory, and configure-site-module-directory to the
1360         Lisp reader.
1361
1362         * lisp.h: Declare load_module and list_modules, as well as
1363         Vmodule_directory, Vsite_module_directory,
1364         Vconfigure_module_directory and Vconfigure_site_module_directory.
1365
1366         * paths.h.in: Added PATH_MODULESEARCH and PATH_SITE_MODULES.
1367         - Added correct support for site-lisp directory.
1368
1369         * symbols.c (defsubr): Modified to allow modules to add new subrs
1370         after dump time.
1371         - (defsubr_macro): Same.
1372         - (defvar_magick): Only use purespace when not initialized, so
1373         that loaded modules can still add symbols.
1374
1375         * symsinit.h: Add definitions for syms_of_module(),
1376         vars_of_module().  Removed syms_of_dll().
1377
1378         * sysdll.c: Include dlfcn.h if HAVE_DLFCN_H is defined.
1379         - (dll_variable): Take DLSYM_NEEDS_UNDERSCORE into account.
1380         - (dll_error): use _dlerror() if HAVE__DLERROR is defined.
1381
1382         * s/sco5-shr.h (C_SWITCH_SYSTEM): Correct for modern gcc and
1383         explicitly pass -belf for native cc.
1384
1385         * s/sco5.h (LIB_GCC): Use -print-libgcc-file-name instead of
1386         hard-coding the library name.
1387
1388 1999-01-01    <martin@xemacs.org>
1389
1390         * device-x.c (Fx_set_font_path):
1391         Add proper cast to permit compilation under C++.
1392
1393         * buffer.c (directory_is_current_directory):
1394         Add proper casts to permit compilation under C++.
1395
1396 1998-12-30  Damon Lipparelli  <lipp@primus.com>
1397
1398         * event-msw.c (mswindows_wnd_proc):
1399           Fixed failure when building with MSVC 5.
1400
1401 1998-12-29  Martin Buchholz  <martin@xemacs.org>
1402
1403         * file-coding.c (decode_coding_iso2022):
1404         - Prevent crash when decoding ISO7/Lock detected files
1405         - the usual martin fiddling
1406
1407 1998-12-29  Jonathan Harris  <jhar@tardis.ed.ac.uk>
1408
1409         * event-msw.c:
1410           glyphs-msw.c:
1411           Fixed failures when building with MSVC.
1412         * unexnt.c (dump_bss_and_heap):
1413           Removed compiler warning by removing bss_data variable.
1414
1415 1998-12-18  Jim Radford  <radford@robby.caltech.edu>
1416
1417         * device-x.c (Fx_set_font_path, Fx_get_font_path): New functions
1418         so that packages that distribute their own fonts can access them.
1419
1420 1998-12-28  Andy Piper  <andy@xemacs.org>
1421
1422         * glyphs-msw.c (mswindows_button_instantiate): cope with buttons
1423         that have an image provided.
1424
1425         * glyphs.h: add Q_image decl.
1426
1427         * glyphs-widget.c new functionality allowing images in
1428         widgets.
1429         (check_valid_glyph_or_image): new function to validate
1430         glyphs passed in through :image.
1431         (widget_normalize): new function. convert :image parameters into
1432         real glyphs if not already so.
1433         (widget_instantiate_1): mess with size parameters to be similar to
1434         :image if provided.
1435         (syms_of_glyphs_widget): new keyword :image.
1436         (image_instantiator_format_create_glyphs_widget): normalize
1437         buttons and allow :image.
1438
1439 1998-12-27  Andy Piper  <andy@xemacs.org>
1440
1441         * frame-msw.c (mswindows_init_frame_1): warning elimination.
1442
1443         * glyphs-widget.c (check_valid_anything): no-op function.
1444         (check_valid_callback): check callbacks in gui_items.
1445         (check_valid_symbol): as it sounds.
1446         (check_valid_string_or_vector): ditto.
1447         (widget_validate): modified for descriptors that are vectors or
1448         sequences of keyword/val pairs.
1449         (widget_instantiate_1): ditto.
1450         (image_instantiator_format_create_glyphs_widget): allow gui_item
1451         keywords in the instantiator.
1452
1453         * gui.c (gui_parse_item_keywords_internal): renamed from
1454         gui_parse_item_keywords but taking error behaviour.
1455         (gui_parse_item_keywords): use it.
1456         (gui_parse_item_keywords_no_errors): ditto.
1457         (gui_item_add_keyval_pair): add Error_behavior flag and only
1458         signal invalid keywords if required.
1459
1460         * gui.h: new gui signatures.
1461
1462         * menubar.c (menu_parse_submenu_keywords): use new
1463         gui_item_add_keyval_pair signature.
1464
1465         * s/cygwin32.h: modify PTY_ITERATION to eliminate warnings.
1466
1467 1998-12-28  Martin Buchholz <martin@xemacs.org>
1468
1469         * XEmacs 21.2.8 is released.
1470
1471 1998-12-28  Martin Buchholz  <martin@xemacs.org>
1472
1473         * editfns.c (get_home_directory):
1474         (user-home-directory): Simplify.
1475
1476
1477         * callproc.c (child_setup):
1478         - Environment variables were being passed to inferior processes
1479           using internal encoding.
1480         - Convert to external encoding.
1481         - Rename local var `tem' to better name `tail'.
1482         - Use Flength instead of `manual' calculation.
1483
1484         * buffer.c (kill-buffer):
1485         (record-buffer):
1486         (set-buffer-major-mode):
1487         (current-buffer):
1488         - Fix up parameter names to correspond to docstrings.
1489         - Don't use `bufname' when a buffer will do as well.
1490         - Remove one unneeded GCPRO.
1491
1492         * buffer.h (initial_directory):
1493         * buffer.c (init_initial_directory):
1494         - use correct conversions between internal and external format.
1495         (directory_is_current_directory): new function
1496         (init_buffer): convert initial_directory to internal format.
1497         - solve crashes when current working directory is non-ASCII.
1498
1499         * alloc.c (xmalloc):
1500         (xcalloc):
1501         (xrealloc):
1502         - remove stupid casts, since XEmacs requires an ANSI C system.
1503         (lrecord_type_index): replace abort() with more readable assert().
1504
1505         (reset_lcrecord_stats): remove.
1506         (sweep_lcrecords_1):
1507         - replace call to reset_lcrecord_stats() with call to xzero().
1508
1509 1998-12-27  Martin Buchholz  <martin@xemacs.org>
1510
1511         * process-unix.c (unix_create_process):
1512         - Fix crash invoking program with non-ASCII name.
1513           Try invoking xemacs with SHELL=/bin/sh, then M-x shell.
1514         - Remove unused variable `env'.
1515         - Rename `temp' to better name `save_errno'.
1516         - Reorganize code for clarity.  But still too chicken to nuke the
1517           BSD 4.2 support.
1518
1519 1998-12-24  Martin Buchholz <martin@xemacs.org>
1520
1521         * XEmacs 21.2.7 is released.
1522
1523 1998-12-23  Martin Buchholz  <martin@xemacs.org>
1524
1525         * glyphs.c (decode_device_ii_format):
1526         - Fix indentation.
1527         - Use GET_C_STRING_FILENAME_DATA_ALLOCA with char *, not Extbyte *.
1528
1529         * glyphs-x.c (x_subwindow_instantiate):
1530         - A image instance mask was being assigned to a image instance type!
1531         - X_SUBWINDOW_INSTANCE_DATA (ii) is not an lvalue in C++.
1532
1533         * glyphs-msw.c (mswindows_initialize_dibitmap_image_instance):
1534         Fix indentation.
1535         * glyphs-x.h: Make indentation consistent.
1536
1537         * emacs.c (Fdump_emacs): Remove Steve Martin merge artifacts.
1538
1539         * glyphs-widget.c (check_valid_glyph): Warning suppression.
1540         - Make it static
1541         - #ifdef it out, since it's not actually used yet (FIX THIS!)
1542
1543         * glyphs-widget.c:
1544         * glyphs.h:
1545         Move declarations of decode_device_ii_format and
1546         decode_image_instantiator_format into glyphs.h where they belong.
1547
1548 1998-12-22  Martin Buchholz  <martin@xemacs.org>
1549
1550         * frame-x.c (x_delete_frame): Revert part of my changes at the
1551         suggestion of Gunnar Evermann - unfortunately no one really
1552         understands this code.
1553
1554         * callproc.c (init_callproc): code cleanup.
1555
1556         * free-hook.c (malloc):
1557         (check_malloc):
1558         (__free_hook):
1559         (__malloc_hook):
1560         (__realloc_hook):
1561         (block_input_malloc):
1562         (block_input_realloc):
1563         * device-x.c (x_delete_device):
1564         * emacs.c (voodoo_free_hook):
1565         * events.c (print_event):
1566         (CHECK_EVENT_TYPE):
1567         (CHECK_EVENT_TYPE2):
1568         (CHECK_EVENT_TYPE3):
1569         Use proper prototypes.
1570         Make C_E_T macros a little faster.
1571         Pedantic fiddly little changes.  You really don't care.
1572
1573 1998-12-22  Andy Piper  <andy@xemacs.org>
1574
1575         * redisplay-output.c (redisplay_clear_region): make sure that
1576         fg/bg colors get set even when we are in the border area.
1577
1578 1998-12-13  Martin Buchholz  <martin@xemacs.org>
1579
1580         * console-msw.c: Function definitions follow coding standards
1581         - This prevents e.g. find-tag on Lisp_Event finding DEVENT
1582
1583 1998-12-11  Martin Buchholz  <martin@xemacs.org>
1584
1585         * events.h (struct timeout_data):
1586         * event-tty.c (tty_timeout_to_emacs_event):
1587         * event-msw.c (mswindows_wm_timer_callback):
1588         * event-Xt.c (Xt_timeout_to_emacs_event):
1589         * event-msw.c (mswindows_cancel_dispatch_event):
1590         Make sure Lisp_Objects inside events are initialized to Qnil, not
1591         Qnull_pointer, which is now illegal.
1592
1593 1998-12-10  Martin Buchholz  <martin@xemacs.org>
1594
1595         * lisp.h: Fix up prototypes to match alloc.c
1596
1597 1998-12-08  Martin Buchholz  <martin@xemacs.org>
1598
1599         * windowsnt.h: Remove `support' for using index and rindex
1600
1601         * filelock.c (current_lock_owner):
1602         - Change uses of index -> strchr, rindex -> strrchr
1603
1604 1998-12-07  Martin Buchholz  <martin@xemacs.org>
1605
1606         * sysdep.c (set_descriptor_non_blocking):
1607         Since O_NONBLOCK is now always #defined, make use of fcntl
1608         conditional on F_SETFL being defined.
1609
1610         * console-msw.c (DHEADgER):
1611         (DOPAQUE_DATA):
1612         (DEVENT):
1613         (DCONS):
1614         (DCONSCDR):
1615         (DSTRING):
1616         (DVECTOR):
1617         (DSYMBOL):
1618         (DSYMNAME):
1619         - max_align_t should not be visible to the user of the
1620           XOPAQUE_DATA macro.
1621         - use Bufbyte instead of char
1622         - parens around (FOOP (obj)) are always redundant.
1623           If they were necessary, we should fix the macro instead.
1624         - Always use string_data(foo) instead of foo->data.
1625
1626
1627 1998-12-06  Martin Buchholz  <martin@xemacs.org>
1628
1629         * frame-msw.c (mswindows_init_frame_1):
1630         - use make_lisp_hash_table, not Fmake_hash_table
1631         - include elhash.h
1632
1633         * lisp.h:
1634         * alloc.c (make_vector): remove travesty
1635         (Fmake_vector):
1636         (make_pure_vector):
1637         (pure_cons):
1638         (make_bit_vector_internal):
1639         (make_bit_vector):
1640         (make_bit_vector_from_byte_vector):
1641         (Fmake_bit_vector):
1642         - make vector_equal a little faster.
1643         - Don't use variable name `new'.
1644         - Use size_t instead of EMACS_INT.
1645         - usual Martin-style pointless bit-twiddling.
1646
1647         * fns.c (mapcar1):
1648         (Fmapconcat):
1649         (Fmapcar):
1650         (Fmapvector):
1651         Make mapcar faster.  In particular, make
1652           (mapc #'identity long-string)
1653         MUCH faster under Mule.
1654         * tests/automated/lisp-tests.el: Test 'em!
1655
1656         * bytecode.c (Ffetch_bytecode): Fix crash when loading lazy-loaded
1657         bytecode.
1658
1659 1998-12-01  Martin Buchholz  <martin@xemacs.org>
1660
1661         * menubar-x.c (menu_item_descriptor_to_widget_value_1): Always use
1662         Qnil, not NULL, to initialize `null' Lisp_Objects.
1663
1664 1998-11-29  Hrvoje Niksic  <hniksic@srce.hr>
1665
1666         * specifier.c (display_table_validate): Update.
1667
1668         * redisplay.c (create_text_block): Use them.
1669
1670         * glyphs.c (display_table_entry): New function.
1671         (get_display_tables): Ditto.
1672
1673 1998-12-15  Oscar Figueiredo  <Oscar.Figueiredo@di.epfl.ch>
1674
1675         * eldap.c (toplevel): Mention that eldap.c compiles with
1676         OpenLDAP libs
1677         (Fldap_open): Use `GET_C_STRING_OS_DATA_ALLOCA'
1678         (Fldap_search_internal): Ditto
1679
1680 1998-12-11  Martin Buchholz  <martin@xemacs.org>
1681
1682         * event-msw.c (mswindows_cancel_dispatch_event):
1683         Gratuitous code prettification
1684
1685
1686 1998-12-07  Hrvoje Niksic  <hniksic@srce.hr>
1687
1688         * fns.c (Fnconc): Fix use of wrong_type_argument().
1689
1690         * floatfns.c (Ffloat): Fix docstring.
1691         (Ffloat): Fix use of wrong_type_argument().
1692         (Fabs): Ditto.
1693         (extract_float): Ditto.
1694         (Fceiling): Ditto.
1695         (Fround): Ditto.
1696         (Ftruncate): Ditto.
1697
1698 1998-12-06  Martin Buchholz  <martin@xemacs.org>
1699
1700         * frame-msw.c (mswindows_init_frame_1):
1701         - use make_lisp_hash_table, not Fmake_hash_table
1702         - include elhash.h
1703
1704         * lisp.h:
1705         * alloc.c (make_vector): remove travesty
1706         (Fmake_vector):
1707         (make_pure_vector):
1708         (pure_cons):
1709         (make_bit_vector_internal):
1710         (make_bit_vector):
1711         (make_bit_vector_from_byte_vector):
1712         (Fmake_bit_vector):
1713         - make vector_equal a little faster.
1714         - Don't use variable name `new'.
1715         - Use size_t instead of EMACS_INT.
1716         - usual Martin-style pointless bit-twiddling.
1717
1718         * fns.c (mapcar1):
1719         (Fmapconcat):
1720         (Fmapcar):
1721         (Fmapvector):
1722         Make mapcar faster.  In particular, make
1723           (mapc #'identity long-string)
1724         MUCH faster under Mule.
1725         * tests/automated/lisp-tests.el: Test 'em!
1726
1727         * bytecode.c (Ffetch_bytecode): Fix crash when loading lazy-loaded
1728         bytecode.
1729
1730 1998-12-02  Didier Verna  <verna@inf.enst.fr>
1731
1732         * menubar-x.c (menu_item_descriptor_to_widget_value_1): set the
1733         accelerator field to nil for labels.
1734
1735 1998-12-16  Jonathan Harris  <jhar@tardis.ed.ac.uk>
1736
1737         * menubar-msw.c (displayable_menu_item):
1738           Escape occurrences of '&' and support occurrences of the
1739          '%_' accelerator indicator in menus.
1740
1741 1998-11-26  Didier Verna  <verna@inf.enst.fr>
1742
1743         * dired.c (Fdirectory_files): use make_string instead of
1744         make_ext_string on the filename. The conversion external->internal
1745         format is already done in sys_readdir.
1746
1747 1998-12-15  Gunnar Evermann  <ge204@eng.cam.ac.uk>
1748
1749         * glyphs.c (normalize_image_instantiator): GCPRO instantiator
1750
1751 1998-12-16  Jonathan Harris  <jhar@tardis.ed.ac.uk>
1752
1753         * event-msw.c
1754           (Belatedly) added Kirill to list of file's authors.
1755           emacs_mswindows_quit_p: Don't process WM_PAINT messages in
1756           quit checking. WM_PAINT messages cause redisplay, but
1757           windows' states are not necessarily stable when this function
1758           gets called.
1759
1760 1998-12-17  Andy Piper  <andy@xemacs.org>
1761
1762         * strftime.c (zone_name): CONSTify.
1763
1764 1998-12-15  Andy Piper  <andy@xemacs.org>
1765
1766         * glyphs-msw.c (mswindows_combo_instantiate): ditto.
1767         (mswindows_widget_property): return Qunbound when no property available.
1768         (mswindows_button_property): ditto.
1769         (mswindows_combo_property): ditto.
1770         (mswindows_widget_set_property): ditto.
1771
1772         * glyphs-widget.c (check_valid_item_list): use properties.
1773
1774         * glyphs.h (struct Lisp_Image_Instance): we have properties now.
1775
1776         * glyphs.c (Fset_image_instance_property): allow setting of arbitrary properties.
1777         (Fimage_instance_property): ditto.
1778         * glyphs-widget.c (widget_property): ditto.
1779         (widget_set_property): ditto.
1780
1781         * frame-msw.c (mswindows_set_frame_pointer): SetCursor() as well
1782         as setting the class cursor so that GC actually changes the
1783         cursor.
1784
1785         * config.h: don't undef MAIL_USE_POP.
1786
1787 1998-12-13  Andy Piper  <andy@xemacs.org>
1788
1789         * glyphs-msw.c
1790         (image_instantiator_format_create_glyphs_mswindows): line ->
1791         label.
1792         (mswindows_label_instantiate): ditto. Play with window flags.
1793         (image_instantiator_format_create_glyphs_mswindows): ditto.
1794         (vars_of_glyphs_mswindows): provide Qlabel as we support it now.
1795
1796         * glyphs-widget.c (widget_instantiate_1): re-jig autosizing to
1797         cope with lines and labels.
1798         (static_instantiate): use widget_instantiate_1.
1799         line -> label.
1800         (image_instantiator_format_create_glyphs_widget): ditto.
1801
1802 1998-12-10  Andy Piper  <andy@xemacs.org>
1803
1804         * Makefile.in.in (objs): add gui.o
1805
1806 1998-12-10  Andy Piper  <andy@xemacs.org>
1807
1808         * gui.c: adjust defines of HAVE_POPUPS so that we can build with
1809         no window system.
1810
1811 1998-12-09  Andy Piper  <andy@xemacs.org>
1812
1813         * glyphs.c (finalize_image_instance): mark glyphs changed when an
1814         image instance is removed so that the subwindow cache gets reset
1815         and thus destroyed images get GC'd.
1816
1817 1998-12-08  Andy Piper  <andy@xemacs.org>
1818
1819         * gui-msw.c (mswindows_handle_gui_wm_command): call
1820         MARK_SUBWINDOWS_CHANGED.
1821
1822         * glyphs-msw.c (mswindows_finalize_image_instance): make sure
1823         subwindows really get deleted.
1824
1825         * redisplay.c: new variable subwindows_changed[_set].
1826         (redisplay_window): use it.
1827         (redisplay_frame): ditto.
1828         (redisplay_device): ditto.
1829         (redisplay_without_hooks): ditto.
1830
1831         * device.h (MARK_DEVICE_SUBWINDOWS_CHANGED): new macro for
1832         subwindows redisplay as per glyphs equivalent.
1833         * redisplay.h: ditto.
1834         (MARK_SUBWINDOWS_CHANGED): ditto.
1835         (RESET_CHANGED_SET_FLAGS): ditto.
1836         * frame.h (MARK_FRAME_SUBWINDOWS_CHANGED): ditto.
1837
1838 1998-12-07  Andy Piper  <andy@xemacs.org>
1839
1840         * frame.c (Fmake_frame): reset subwindow cachels on non-stream
1841         frames.
1842
1843         * redisplay.c (redisplay_frame): invalidate subwindow cachels.
1844
1845         * event-msw.c (mswindows_wnd_proc): catch the various WM_CTLCOLOR*
1846         messages and paint widget glyphs as appropriate with their face fg
1847         & bg.
1848
1849 1998-12-06  Andy Piper  <andy@xemacs.org>
1850
1851         * glyphs-msw.c (vars_of_glyphs_mswindows): provide widget types
1852         here rather than in glyphs-widget - do this because we only want
1853         to provide what is really available.
1854
1855         * glyphs.c (Fimage_instance_property): new function to get the
1856         properties of image instances. wires through to console specific
1857         methods and then to widget specific methods.
1858         (Fset_image_instance_property): ditto but for setting widget properties.
1859         (check_valid_face): make extern so that it can be used elsewhere.
1860
1861         * glyphs-widget.c (widget_property): new function. gets the
1862         properties of widgets in general and wires the function through to
1863         widget specific ones.
1864         (widget_set_property): ditto but for setting widget properties.
1865
1866         * glyphs-msw.c (mswindows_combo_instantiate): Add functionality to
1867         add items to the list. Play with window styles a bit to get the
1868         desired effect.
1869         (mswindows_widget_property): break out specific widget properties.
1870         (mswindows_button_property): new function. gets the checked state
1871         of a button.
1872         (mswindows_combo_property): new function. gets the current
1873         selection in the combo box.
1874         (mswindows_widget_set_property): new function. sets specific
1875         properties of specific widgets.
1876
1877         * glyphs-widget.c (check_valid_item_list): new function. check
1878         that items for a combo-box are just a list of strings.
1879         (combo_validate): new function. check there is an item list.
1880         (widget_instantiate_1): new function. renamed from
1881         widget_instantiate so that we can do slightly different things for
1882         other widgets.
1883         (widget_instantiate): call widget_instantiate_1.
1884         (combo_instantiate): new function to instantiate combo boxes,
1885         defaults height to the pixel height of the number of items in the
1886         box.
1887         (syms_of_glyphs_widget): move widget keywords here.
1888         (image_instantiator_format_create_glyphs_widget): use new combo
1889         functions.
1890
1891 1998-12-04  Andy Piper  <andy@xemacs.org>
1892
1893         * event-msw.c (mswindows_wnd_proc): mule-ize.
1894
1895         * glyphs.c (pixmap_to_lisp_data): mule-ize.
1896
1897         * glyphs-msw.c (extract_xpm_color_names): mule-ize.
1898         (resource_name_to_resource): ditto.
1899         (mswindows_resource_instantiate): ditto.
1900         (mswindows_widget_instantiate): ditto.
1901         (mswindows_widget_set_property): ditto.
1902
1903         * redisplay-output.c (redisplay_output_subwindow): don't show
1904         subwindows if they are obscured at the edge of the frame, emacs
1905         gets into some sort of redisplay loop otherwise.
1906
1907         * gui.h: prototype gui_item_selected_p.
1908
1909         * gui.c (gui_item_selected_p): new function to determine the
1910         selected state of a gui_item.
1911
1912         * frame.h (struct frame): add subwindows_changed flag.
1913
1914         * redisplay.c (redisplay_frame): call update_frame_subwindows ().
1915
1916         * glyphs.c (update_subwindow): new function to update a
1917         subwindow's state.
1918         (update_frame_subwindows): new function to update all the
1919         subwindows on a frame.
1920
1921         * console.h (struct console_methods): add update_subwindow.
1922
1923         * glyphs-msw.c (mswindows_widget_property): return selected state
1924         for selected property.
1925         (mswindows_update_subwindow): new function. updates widget glyphs
1926         in redisplay as per menubars or toolbars e.g. selected state.
1927         (console_type_create_glyphs_mswindows): add update_subwindow.
1928
1929 1998-12-03  Andy Piper  <andy@xemacs.org>
1930
1931         * console-tty.c (syms_of_console_tty): MULE -> FILE_CODING since
1932         tty coding system things are such.
1933
1934         * glyphs-widget.c (widget_face_font_info): new function for
1935         pulling out height and width metrics for a widget's face.
1936         (widget_text_to_pixel_conversion): calculate pixel sizes of text
1937         for widgets.
1938
1939         * event-msw.c (mswindows_drain_windows_queue): translate messages
1940         that are destined for subwindows. This makes edit fields interact
1941         with the keyboard correctly.
1942         nuke warnings by #ifndef'ing out stuff not required by msg select().
1943
1944         * glyphs.h (INITIALIZE_IMAGE_INSTANTIATOR_FORMAT_NO_SYM): new
1945         macro defining the iiforma without the symbol required by widget.
1946         (INITIALIZE_IMAGE_INSTANTIATOR_FORMAT): use it.
1947
1948         * general.c (syms_of_general): add Qwidget, Qselected.
1949
1950         * faces.c (complex_vars_of_faces): add widget face inheriting from
1951         gui-element face.
1952
1953 1998-11-09  Andy Piper  <andy@xemacs.org>
1954
1955         * window.h (struct window): add a cache of subwindows on a
1956         per-window basis.
1957
1958         * window.c (mark_window): mark the subwindow_instance_cache.
1959         (allocate_window): initialise the subwindow instance_cache.
1960
1961         * toolbar-x.c (x_output_toolbar): call redisplay_clear_region
1962         instead of the devmeth.
1963         (x_clear_toolbar): ditto.
1964
1965         * redisplay-x.c (x_output_display_block): call
1966         redisplay_output_subwindow for subwindows and widgets.
1967
1968         * redisplay-tty.c (tty_output_display_block): add IMAGE_WIDGET to
1969         types to do nothing for.
1970
1971         * lisp.h: declare new widget/subwindow symbols.
1972
1973         * glyphs.c (image_instantiate): cache subwindows on a per-window
1974         basis.
1975         (subwindow_possible_dest_types): new function for subwindow dest
1976         types.
1977         (subwindow_instantiate): generic instantiation of a
1978         subwindow. specialised by device multi-methods.
1979         (Fsubwindowp): moved from glyphs-x.c. adapted for glyph-based
1980         subwindows.
1981         (Fimage_instance_subwindow_id): ditto.
1982         (Fresize_subwindow): ditto.
1983         (Fforce_subwindow_map): ditto.
1984
1985         * glyphs-x.c (x_print_image_instance): remove subwindow
1986         stuff. Handled genrically in glyphs.c.
1987         (x_image_instance_equal): ditto.
1988         (x_image_instance_hash): ditto.
1989         (x_finalize_image_instance): delete subwindows when required.
1990         (mark_subwindow) (print_subwindow) (finalize_subwindow)
1991         (subwindow_hash) (Fmake_subwindow): deleted because of new,
1992         glyph-based, subwindow implementation.
1993         (Fsubwindow_height) (Fsubwindow_width) (Fsubwindow_xid): aliased
1994         in glyphs.el
1995         (Fsubwindowp) (Fresize_subwindow) (Fforce_subwindow_map): moved to
1996         glyphs.c.
1997         (x_unmap_subwindow): new function to unmap X subwindows.
1998         (x_map_subwindow): new function to map X subwindows.
1999         (x_subwindow_instantiate): new function to instantiate X
2000         subwindows.
2001         (x_resize_subwindow): new function to resize X subwindows.
2002         (console_type_create_glyphs_x): add subwindow functions.
2003         (image_instantiator_format_create_glyphs_x): add device
2004         multi-methods for xpm, xbm and subwindow.
2005
2006         * glyphs.el (subwindow-xid): old alias for new subwindow functions.
2007         (subwindow-width): ditto.
2008         (subwindow-height): ditto.
2009
2010         * glyphs-msw.c (mswindows_widget_instantiate): new function for
2011         generally instantiating ms subwindows. Used by
2012         mswindows_*_instantiate.
2013         (mswindows_edit_instantiate): instantiate an edit field on a
2014         mswindows frame.
2015
2016 1998-11-04  Andy Piper  <andy@xemacs.org>
2017
2018         * symsinit.h: declare new functions.
2019
2020         * redisplay.h: declare new functions.
2021
2022         * redisplay-x.c (x_output_display_block): call
2023         redisplay_clear_region rather than x_clear_region.
2024         (x_output_string): ditto.
2025         (x_output_pixmap): ditto.
2026         (x_clear_to_window_end): ditto.
2027         (x_output_eol_cursor): ditto.
2028         (x_clear_region): only do X specific things. other duties handled
2029         in redisplay_clear_region.
2030
2031         * redisplay-tty.c (tty_clear_region): do tty specific things - some
2032         duties moved to redisplay_clear_region.
2033
2034         * redisplay-output.c (clear_left_border): use
2035         redisplay_clear_region instead of device method.
2036         (clear_right_border): ditto.
2037         (output_display_line): ditto.
2038         (redisplay_output_subwindow): ditto.
2039         (redisplay_clear_top_of_window): ditto.
2040         (redisplay_clear_region): perform duties previously handled by
2041         device methods. call the appropriate device method at the
2042         end. unmap subwindows if necessary.
2043
2044         * redisplay-msw.c (mswindows_output_string): use
2045         redisplay_clear_region instead of mswindows_clear_region.
2046         (mswindows_clear_to_window_end): ditto.
2047         (mswindows_output_display_block): output subwindows when required.
2048         (mswindows_clear_region): only do mswindows specific things,
2049         everything else is now handled in redisplay_clear_region.
2050
2051         * gui.h: add item id hash defines and declare function prototypes.
2052
2053         * gui.c (mark_gui_item): new function for marking gui_items.
2054         (gui_item_hash): generic hash function for generating command ids
2055         for gui_items.
2056
2057         * gui-msw.c: new file.
2058         (mswindows_handle_gui_wm_command): new function to handle widget
2059         callbacks.
2060
2061         * glyphs.h (MAYBE_IIFORMAT_DEVMETH): new function for device
2062         multi-methods.
2063         (IIFORMAT_HAS_SHARED_METHOD): ditto.
2064         (DEFINE_DEVICE_IIFORMAT): ditto.
2065         (INITIALIZE_DEVICE_IIFORMAT): ditto.
2066         (struct Lisp_Image_Instance): add widget and subwindow data plus
2067         appropriate access functions.
2068
2069         * glyphs.c (decode_device_ii_format): new function for decoding
2070         image instantiator functions based on a device type as well as an
2071         image format.
2072         (decode_image_instantiator_format): just call
2073         decode_device_ii_format with nil device.
2074         (add_entry_to_device_ii_format_list): new function for per device
2075         method instances.
2076         (add_entry_to_image_instantiator_format_list): just call
2077         add_entry_to_device_ii_format_list with nil device.
2078         (check_valid_vector): new function.
2079         (instantiate_image_instantiator): instantiate using per-format
2080         method and then per-format-per-device method (device
2081         multi-methods). signal an error if neither is possible.
2082         (mark_image_instance): cope with subwindows and widgets.
2083         (print_image_instance): ditto.
2084         (image_instance_equal): ditto.
2085         (image_instance_hash): ditto.
2086         (allocate_glyph): ditto.
2087         (glyph_width): ditto.
2088         (glyph_height_internal): ditto.
2089         (xpm_instantiate): removed because of device multi-methods.
2090         (mark_subwindow_cachels): new cachel functions for caching
2091         instantiated subwindows on a per-frame basis. mostly copied from
2092         glyph cachel functions.
2093         (update_subwindow_cachel_data): ditto.
2094         (add_subwindow_cachel): ditto.
2095         (get_subwindow_cachel_index): ditto.
2096         (reset_subwindow_cachels): ditto.
2097         (mark_subwindow_cachels_as_not_updated): ditto.
2098         (unmap_subwindow): generic unmapping of subwindows based on cachel
2099         data.
2100         (map_subwindow): ditto.
2101         (initialize_subwindow_image_instance): generic initialisation of
2102         subwindow data.
2103         (syms_of_glyphs): add widget keywords.
2104
2105         * glyphs-x.h (struct x_subwindow_data): convert Lisp_Subwindow to
2106         x_subwindow_data.
2107
2108 1998-11-04  Andy Piper  <andy@xemacs.org>
2109
2110         * glyphs-widget.c: new file for instantiating widget type glyphs.
2111         (widget_possible_dest_types): new general dest type function for
2112         widgets.
2113         (widget_validate): ditto.
2114         (initialize_widget_image_instance): ditto
2115         (widget_instantiate): ditto. Sets up fg/bg, gui_item parsing
2116         before handing on control to device multi-methods.
2117         (syms_of_glyphs_widget): new function.
2118         (image_instantiator_format_create_glyphs_widget): new function,
2119         added placeholders for button, edit, combo, scrollbar
2120         (vars_of_glyphs_widget): new function.
2121
2122         * glyphs-msw.h (WIDGET_INSTANCE_MSWINDOWS_HANDLE): new define for
2123         storing window ids of widgets.
2124
2125         * glyphs-msw.c (mswindows_finalize_image_instance): cope with
2126         deletion of widget and subwindow glyphs.
2127         (mswindows_unmap_subwindow): new device function for unmapping
2128         subwindows on a msw frame.
2129         (mswindows_map_subwindow): ditto.
2130         (mswindows_register_image_instance): register instantiated widgets
2131         with the widget hastable.
2132         (mswindows_button_instantiate): instantiate a button type widget
2133         on an msw frame.
2134         (mswindows_subwindow_instantiate): instanttiate a subwindow on a
2135         mswindows frame.
2136         (image_instantiator_format_create_glyphs_mswindows): add device
2137         multi-methods for xbm, xpm, subwindow, edit and button.
2138
2139         * frame.h (struct frame): add subwindow_cachels dynarr for caching
2140         information about subwindows visible on the current frame. used by
2141         redisplay_clear_region to unmap subwindows as required.
2142
2143         * frame.c (mark_frame): mark subwindow_cachels.
2144         (allocate_frame_core): instantiate subwindow_cachels.
2145
2146         * frame-msw.c (mswindows_init_frame_1): instntiate and mark the
2147         widget hashtable.
2148
2149         * event-msw.c (mswindows_wnd_proc): add call to
2150         mswindows_handle_gui_wm_command to handle widget callbacks.
2151
2152         * emacs.c (main_1): add calls to glyphs-widget initialisation
2153         routines.
2154
2155         * console.h (struct console_methods): add
2156         unmap/map_subwindow_method for use be redisplay_clear_region to
2157         map and unmap subwindows. Remove xpm and xbm stuff - now dealt
2158         with by image instantiator multi-methods. Add
2159         resize_subwindow_method.
2160
2161         * console-stream.c (stream_clear_region): change signature to
2162         match new generic clear region function.
2163
2164         * Makefile.in.in: add glyphs-widget.o to list of objects.
2165
2166         * console-msw.h (struct mswindows_frame): add widget hashtable for
2167         wiring command ids to callbacks.
2168
2169 1998-12-16  Andy Piper  <andy@xemacs.org>
2170
2171         * XEmacs 21.2.6 is released
2172
2173 1998-12-08  Hrvoje Niksic  <hniksic@srce.hr>
2174
2175         * md5.c (Fmd5): Correctly initiate string input stream.
2176
2177         * Makefile.in.in (tests): Add md5-tests.el.
2178
2179 1998-12-06  Martin Buchholz  <martin@xemacs.org>
2180
2181         * lisp.h:
2182         * alloc.c (make_vector): remove travesty
2183         (Fmake_vector):
2184         (make_pure_vector):
2185         (pure_cons):
2186         (make_bit_vector_internal):
2187         (make_bit_vector):
2188         (make_bit_vector_from_byte_vector):
2189         (Fmake_bit_vector):
2190         - make vector_equal a little faster.
2191         - Don't use variable name `new'.
2192         - Use size_t instead of EMACS_INT.
2193         - usual Martin-style pointless bit-twiddling.
2194
2195         * fns.c (mapcar1):
2196         (Fmapconcat):
2197         (Fmapcar):
2198         (Fmapvector):
2199         Make mapcar faster.  In particular, make
2200           (mapc #'identity long-string)
2201         MUCH faster under Mule.
2202         * tests/automated/lisp-tests.el: Test 'em!
2203
2204 1998-12-06  Martin Buchholz  <martin@xemacs.org>
2205
2206         * bytecode.c (Ffetch_bytecode): Fix crash when loading lazy-loaded
2207         bytecode.
2208
2209 1998-12-13  Martin Buchholz  <martin@xemacs.org>
2210
2211         * console-msw.c: Function definitions follow coding standards
2212         - This prevents e.g. find-tag on Lisp_Event finding DEVENT
2213
2214 1998-12-11  Martin Buchholz  <martin@xemacs.org>
2215
2216         * events.h (struct timeout_data):
2217         * event-tty.c (tty_timeout_to_emacs_event):
2218         * event-msw.c (mswindows_wm_timer_callback):
2219         * event-Xt.c (Xt_timeout_to_emacs_event):
2220         * event-msw.c (mswindows_cancel_dispatch_event):
2221         Make sure Lisp_Objects inside events are initialized to Qnil, not
2222         Qnull_pointer, which is now illegal.
2223
2224 1998-12-10  Martin Buchholz  <martin@xemacs.org>
2225
2226         * lisp.h: Fix up prototypes to match alloc.c
2227
2228 1998-12-09  Andy Piper  <andy@xemacs.org>
2229
2230         * glyphs-msw.c (init_image_instance_from_xbm_inline): don't use
2231         XSETINT for assigning lisp objects.
2232
2233 1998-12-07  Martin Buchholz  <martin@xemacs.org>
2234
2235         * opaque.h:
2236         * console-msw.c (DHEADER):
2237         (DOPAQUE_DATA):
2238         (DEVENT):
2239         (DCONS):
2240         (DCONSCDR):
2241         (DSTRING):
2242         (DVECTOR):
2243         (DSYMBOL):
2244         (DSYMNAME):
2245         - max_align_t should not be visible to the user of the
2246           XOPAQUE_DATA macro.
2247         - use Bufbyte instead of char
2248         - parens around (FOOP (obj)) are always redundant.
2249           If they were necessary, we should fix the macro instead.
2250         - Always use string_data(foo) instead of foo->data.
2251
2252 1998-12-07  Martin Buchholz  <martin@xemacs.org>
2253
2254         * sysdep.c (set_descriptor_non_blocking):
2255         Since O_NONBLOCK is now always #defined, make use of fcntl
2256         conditional on F_SETFL being defined.
2257
2258 1998-12-09  Andy Piper  <andy@xemacs.org>
2259
2260         * menubar-msw.c (mswindows_handle_wm_command): add back in checks
2261         that got removed in the merge
2262
2263 1998-11-30  Greg Klanderman  <greg@alphatech.com>
2264
2265         * dired.c (vars_of_dired): bugfix for previous conditionalization
2266         of user-name-completion on non- Windows NT.
2267
2268 1998-12-08  Martin Buchholz  <martin@xemacs.org>
2269
2270         * windowsnt.h: Remove `support' for using index and rindex
2271
2272         * filelock.c (current_lock_owner):
2273         - Change uses of index -> strchr, rindex -> strrchr
2274
2275 1998-12-06  Martin Buchholz  <martin@xemacs.org>
2276
2277         * frame-msw.c (mswindows_init_frame_1):
2278         - use make_lisp_hash_table, not Fmake_hash_table
2279         - include elhash.h
2280
2281 1998-12-05  XEmacs Build Bot <builds@cvs.xemacs.org>
2282
2283         * XEmacs 21.2.5 is released
2284
2285 1998-11-30  Martin Buchholz  <martin@xemacs.org>
2286
2287         * xselect.c (receive_incremental_selection):
2288         * xselect.c (x_get_window_property):
2289         * xmu.c (XmuReadBitmapDataFromFile):
2290         * xmu.c (XmuCursorNameToIndex):
2291         * xgccache.c (describe_gc_cache):
2292         * xgccache.c (gc_cache_lookup):
2293         * xgccache.c (free_gc_cache):
2294         * xgccache.c (make_gc_cache):
2295         * window.h:
2296         * window.c (map_windows_1):
2297         * window.c (Fother_window_for_scrolling):
2298         * window.c (window_scroll):
2299         * window.c (change_window_height):
2300         * window.c (Fsplit_window):
2301         * window.c (window_left_gutter_width):
2302         * window.c (window_modeline_height):
2303         * window.c (invalidate_vertical_divider_cache_in_window):
2304         * window.c (window_needs_vertical_divider_1):
2305         * window.c (update_mirror_internal):
2306         * window.c (SET_LAST_FACECHANGE):
2307         * widget.c (Fwidget_plist_member):
2308         * unexec.c (copy_text_and_data):
2309         * unexcw.c (copy_executable_and_dump_data_section):
2310         * tooltalk.doc:
2311         * tooltalk.c (struct Lisp_Tooltalk_Pattern):
2312         * tooltalk.c (struct Lisp_Tooltalk_Message):
2313         * toolbar.h (struct toolbar_button):
2314         * toolbar.c (default_toolbar_visible_p_changed_in_window):
2315         * toolbar.c (recompute_overlaying_specifier):
2316         * toolbar.c (toolbar_validate):
2317         * toolbar.c (toolbar_button_at_pixpos):
2318         * toolbar.c (get_toolbar_coords):
2319         * toolbar.c (update_frame_toolbars):
2320         * toolbar-x.c:
2321         * toolbar-msw.c (mswindows_handle_toolbar_wm_command):
2322         * toolbar-msw.c (mswindows_find_toolbar_pos):
2323         * toolbar-msw.c (mswindows_output_toolbar):
2324         * toolbar-msw.c (mswindows_clear_toolbar):
2325         * toolbar-msw.c:
2326         * systty.h:
2327         * syssignal.h:
2328         * sysproc.h:
2329         * sysfile.h:
2330         * sysdll.c:
2331         * sysdep.h:
2332         * sysdep.c (rmdir):
2333         * sysdep.c (sys_fopen):
2334         * sysdep.c (sys_open):
2335         * sysdep.c (tty_init_sys_modes_on_device):
2336         * sysdep.c (get_eof_char):
2337         * sysdep.c (child_setup_tty):
2338         * sysdep.c (set_descriptor_non_blocking):
2339         * syntax.h:
2340         * syntax.c (scan_words):
2341         * syntax.c:
2342         * symsinit.h:
2343         * symeval.h (struct symbol_value_varalias):
2344         * symeval.h (struct symbol_value_forward):
2345         * symbols.c (syms_of_symbols):
2346         * symbols.c (init_symbols_once_early):
2347         * symbols.c (Fbuilt_in_variable_type):
2348         * symbols.c (Fsymbol_value_in_buffer):
2349         * symbols.c (default_value):
2350         * symbols.c (Fset):
2351         * symbols.c (find_symbol_value_quickly):
2352         * symbols.c (store_symval_forwarding):
2353         * symbols.c (set_default_console_slot_variable):
2354         * symbols.c (set_default_buffer_slot_variable):
2355         * symbols.c (verify_ok_for_buffer_local):
2356         * symbols.c (symbol_is_constant):
2357         * symbols.c (oblookup):
2358         * symbols.c (Funintern):
2359         * symbols.c (Fintern):
2360         * symbols.c (check_obarray):
2361         * sunplay.c:
2362         * specifier.h (struct specifier_methods):
2363         * specifier.h:
2364         * specifier.c (specifier_instance):
2365         * specifier.c (specifier_instance_from_inst_list):
2366         * specifier.c (decode_locale_type):
2367         * specifier.c (specifier_equal):
2368         * specifier.c (finalize_specifier):
2369         * specifier.c (prune_specifiers):
2370         * specifier.c (kill_specifier_buffer_locals):
2371         * sound.c (init_native_sound):
2372         * sound.c:
2373         * signal.c (alarm):
2374         * search.c (Fmatch_data):
2375         * search.c (match_limit):
2376         * search.c (Freplace_match):
2377         * search.c (skip_chars):
2378         * search.c (scan_buffer):
2379         * search.c:
2380         * scrollbar.c (specifier_vars_of_scrollbar):
2381         * scrollbar.c (Fscrollbar_set_hscroll):
2382         * scrollbar.c (vertical_scrollbar_changed_in_window):
2383         * scrollbar.c (release_window_mirror_scrollbars):
2384         * scrollbar.c (free_scrollbar_instance):
2385         * scrollbar-x.c:
2386         * scrollbar-msw.c:
2387         * s/msdos.h (O_BINARY):
2388         * s/linux.h:
2389         * s/freebsd.h (LIBS_TERMCAP):
2390         * regex.c (re_match_2_internal):
2391         * regex.c (compile_extended_range):
2392         * regex.c (POP_FAILURE_POINT):
2393         * regex.c (PUSH_FAILURE_POINT):
2394         * redisplay.h (RESET_CHANGED_SET_FLAGS):
2395         * redisplay.h:
2396         * redisplay.h (struct display_line):
2397         * redisplay.h (struct rune):
2398         * redisplay.c (vars_of_redisplay):
2399         * redisplay.c (redisplay_variable_changed):
2400         * redisplay.c (UPDATE_CACHE_RETURN):
2401         * redisplay.c (validate_line_start_cache):
2402         * redisplay.c (mark_redisplay_structs):
2403         * redisplay.c (mark_glyph_block_dynarr):
2404         * redisplay.c (window_line_number):
2405         * redisplay.c (redisplay_frame):
2406         * redisplay.c (redisplay_window):
2407         * redisplay.c (generate_modeline):
2408         * redisplay.c (create_right_glyph_block):
2409         * redisplay.c (create_left_glyph_block):
2410         * redisplay.c (create_text_block):
2411         * redisplay.c:
2412         * redisplay-x.c (x_output_hline):
2413         * redisplay-x.c (x_output_vertical_divider):
2414         * redisplay-tty.c (tty_output_display_block):
2415         * redisplay-output.c (output_display_line):
2416         * redisplay-output.c:
2417         * redisplay-msw.c (mswindows_output_vertical_divider):
2418         * redisplay-msw.c (mswindows_ring_bell):
2419         * redisplay-msw.c (mswindows_output_cursor):
2420         * redisplay-msw.c:
2421         * rangetab.c:
2422         * ralloc.c:
2423         * puresize.h (RAW_PURESIZE):
2424         * profile.c (syms_of_profile):
2425         * profile.c (Fstart_profiling):
2426         * profile.c (sigprof_handler):
2427         * profile.c:
2428         * procimpl.h:
2429         * process.c (vars_of_process):
2430         * process.c (read_process_output):
2431         * process.c (get_process):
2432         * process.c:
2433         * process-unix.c (unix_open_multicast_group):
2434         * process-unix.c (unix_get_tty_name):
2435         * process-unix.c (unix_send_process):
2436         * process-unix.c (unix_reap_exited_processes):
2437         * process-unix.c (unix_create_process):
2438         * process-unix.c (unix_init_process_io_handles):
2439         * process-unix.c (allocate_pty):
2440         * process-unix.c:
2441         * process-nt.c (nt_open_network_stream):
2442         * process-nt.c (nt_update_status_if_terminated):
2443         * process-nt.c (nt_finalize_process_data):
2444         * process-nt.c:
2445         * print.c (debug_short_backtrace):
2446         * print.c (debug_backtrace):
2447         * print.c (print_symbol):
2448         * print.c (print_internal):
2449         * print.c (print_cons):
2450         * print.c (Fwrite_char):
2451         * print.c (print_prepare):
2452         * print.c (canonicalize_printcharfun):
2453         * print.c (output_string):
2454         * print.c:
2455         * opaque.h:
2456         * opaque.c (allocate_managed_opaque):
2457         * opaque.c:
2458         * offix.c (DndSetData):
2459         * objects.c (face_boolean_create):
2460         * objects.c (font_instantiate):
2461         * objects.c (font_create):
2462         * objects.c (color_create):
2463         * objects.c (finalize_font_instance):
2464         * objects.c (finalize_color_instance):
2465         * objects.c:
2466         * objects-x.c (x_font_instance_truename):
2467         * objects-x.c:
2468         * objects-x.c (x_initialize_font_instance):
2469         * objects-x.c (allocate_nearest_color):
2470         * objects-tty.c (tty_initialize_font_instance):
2471         * objects-tty.c (tty_initialize_color_instance):
2472         * objects-msw.c (mswindows_initialize_color_instance):
2473         * ntproc.c (syms_of_ntproc):
2474         * ntproc.c (Fwin32_set_process_priority):
2475         * ntproc.c (sys_spawnve):
2476         * ntproc.c:
2477         * ntheap.c (get_data_end):
2478         * nt.c (period):
2479         * nt.c:
2480         * nt.c (stat):
2481         * nt.c (generate_inode_val):
2482         * nt.c (sys_rename):
2483         * nas.c:
2484         * mule-wnnfns.c (Fwnn_hinsi_number):
2485         * mule-wnnfns.c (Fwnn_yuragi):
2486         * mule-wnnfns.c (Fwnn_common_learn):
2487         * mule-wnnfns.c (Fwnn_suffix_learn):
2488         * mule-wnnfns.c (Fwnn_prefix_learn):
2489         * mule-wnnfns.c (Fwnn_okuri_learn):
2490         * mule-wnnfns.c (Fwnn_complex_conv):
2491         * mule-wnnfns.c (Fwnn_last_is_first):
2492         * mule-wnnfns.c (Fwnn_bmodify_dict_add):
2493         * mule-wnnfns.c (Fwnn_notrans_dict_add):
2494         * mule-wnnfns.c (Fwnn_fiusr_dict_add):
2495         * mule-wnnfns.c (Fwnn_fisys_dict_add):
2496         * mule-wnnfns.c (Fwnn_hinsi_list):
2497         * mule-wnnfns.c (Fwnn_fuzokugo_set):
2498         * mule-wnnfns.c (Fwnn_dict_search):
2499         * mule-wnnfns.c (Fwnn_word_toroku):
2500         * mule-wnnfns.c (Fwnn_hindo_update):
2501         * mule-wnnfns.c (Fwnn_bunsetu_henkou):
2502         * mule-wnnfns.c (Fwnn_kakutei):
2503         * mule-wnnfns.c (Fwnn_begin_henkan):
2504         * mule-wnnfns.c (Fwnn_dict_comment):
2505         * mule-wnnfns.c (Fwnn_dict_add):
2506         * mule-wnnfns.c (Fwnn_open):
2507         * mule-mcpath.c (mc_getcwd):
2508         * mule-coding.c (vars_of_mule_coding):
2509         * mule-coding.c (convert_to_external_format):
2510         * mule-coding.c (encoding_marker):
2511         * mule-coding.c (decoding_marker):
2512         * mule-coding.c (Fcopy_coding_system):
2513         * mule-coding.c (Fmake_coding_system):
2514         * mule-coding.c (Fcoding_system_list):
2515         * mule-coding.c (Ffind_coding_system):
2516         * mule-coding.c (symbol_to_eol_type):
2517         * mule-coding.c:
2518         * mule-charset.c (complex_vars_of_mule_charset):
2519         * mule-charset.c (vars_of_mule_charset):
2520         * mule-charset.c (Fset_charset_ccl_program):
2521         * mule-charset.c (struct charset_list_closure):
2522         * mule-charset.c (Ffind_charset):
2523         * mule-charset.c (make_charset):
2524         * mule-charset.c (non_ascii_valid_char_p):
2525         * mule-charset.c:
2526         * mule-ccl.c (ccl_driver):
2527         * mule-canna.c (c2mu):
2528         * mule-canna.c (Fcanna_henkan_begin):
2529         * mule-canna.c (Fcanna_parse):
2530         * mule-canna.c (Fcanna_store_yomi):
2531         * mule-canna.c (Fcanna_touroku_string):
2532         * mule-canna.c (Fcanna_initialize):
2533         * minibuf.c:
2534         * menubar.c (menu_parse_submenu_keywords):
2535         * menubar-x.c (make_dummy_xbutton_event):
2536         * menubar-x.c (set_frame_menubar):
2537         * menubar-x.c (menu_item_descriptor_to_widget_value_1):
2538         * menubar-x.c:
2539         * menubar-msw.h:
2540         * menubar-msw.c (mswindows_popup_menu):
2541         * menubar-msw.c (mswindows_update_frame_menubars):
2542         * menubar-msw.c (mswindows_handle_wm_command):
2543         * menubar-msw.c (unsafe_handle_wm_initmenu_1):
2544         * menubar-msw.c (unsafe_handle_wm_initmenupopup_1):
2545         * menubar-msw.c (update_frame_menubar_maybe):
2546         * menubar-msw.c (populate_or_checksum_helper):
2547         * menubar-msw.c (empty_menu):
2548         * menubar-msw.c:
2549         * md5.c:
2550         * marker.c (set_marker_internal):
2551         * marker.c (print_marker):
2552         * malloc.c:
2553         * make-src-depend:
2554         * lstream.c (lisp_buffer_rewinder):
2555         * lstream.c (mark_lstream):
2556         * lrecord.h:
2557         * lrecord.h (struct lrecord_header):
2558         * lread.c (readevalloop):
2559         * lread.c (locate_file):
2560         * lread.c (locate_file_in_directory):
2561         * lread.c (Flocate_file):
2562         * lread.c (load_force_doc_string_unwind):
2563         * lread.c (ebolify_bytecode_constants):
2564         * lread.c:
2565         * lisp.h:
2566         * lisp-union.h:
2567         * lisp-disunion.h:
2568         * linuxplay.c (linux_play_data_or_file):
2569         * linuxplay.c (audio_init):
2570         * line-number.c:
2571         * keymap.h:
2572         * keymap.c (describe_map):
2573         * keymap.c (describe_map_mapper):
2574         * keymap.c (Fdescribe_bindings_internal):
2575         * keymap.c (Fsingle_key_description):
2576         * keymap.c (map_keymap_sorted):
2577         * keymap.c (get_relevant_keymaps):
2578         * keymap.c (Flookup_key):
2579         * keymap.c (raw_lookup_key_mapper):
2580         * keymap.c (Fdefine_key):
2581         * keymap.c (Fevent_matches_key_specifier_p):
2582         * keymap.c (key_desc_list_to_event):
2583         * keymap.c (define_key_parser):
2584         * keymap.c (define_key_check_and_coerce_keysym):
2585         * keymap.c (keymap_submaps):
2586         * keymap.c (keymap_store_internal):
2587         * keymap.c (keymap_delete_inverse_internal):
2588         * keymap.c (keymap_store_inverse_internal):
2589         * keymap.c (print_keymap):
2590         * keymap.c (Lisp_Keymap):
2591         * keymap.c:
2592         * intl.c:
2593         * insdel.c (convert_bufbyte_string_into_emchar_dynarr):
2594         * insdel.c (make_gap):
2595         * input-method-xlib.c (get_XIM_input):
2596         * input-method-xlib.c (XIM_init_frame):
2597         * imgproc.c:
2598         * hash.h:
2599         * hash.c:
2600         * gui.c:
2601         * gui-x.c (button_item_to_widget_value):
2602         * gui-x.c (popup_selection_callback):
2603         * glyphs.h (struct image_instantiator_methods):
2604         * glyphs.c (mark_glyph_cachels):
2605         * glyphs.c (Fglyph_type):
2606         * glyphs.c (image_instantiate):
2607         * glyphs.c (image_create):
2608         * glyphs.c (make_image_instance_1):
2609         * glyphs.c (finalize_image_instance):
2610         * glyphs.c:
2611         * glyphs-x.c (finalize_subwindow):
2612         * glyphs-x.c (xface_validate):
2613         * glyphs-x.c (x_locate_pixmap_file):
2614         * glyphs-x.c (convert_EImage_to_XImage):
2615         * glyphs-msw.c:
2616         * glyphs-msw.c (mswindows_resource_instantiate):
2617         * glyphs-msw.c (xpm_to_eimage):
2618         * glyphs-msw.c (convert_EImage_to_DIBitmap):
2619         * glyphs-eimage.c (tiff_instantiate):
2620         * glyphs-eimage.c (png_instantiate):
2621         * glyphs-eimage.c (struct png_error_struct):
2622         * glyphs-eimage.c (gif_memory_storage):
2623         * glyphs-eimage.c:
2624         * gifrlib.h:
2625         * getloadavg.c (getloadavg):
2626         * getloadavg.c:
2627         * gdbinit:
2628         * free-hook.c (log_gcpro):
2629         * free-hook.c (check_malloc):
2630         * free-hook.c (check_free):
2631         * free-hook.c (ROUND_UP_TO_PAGE):
2632         * free-hook.c:
2633         * frame.h (struct frame):
2634         * frame.h:
2635         * frame.c (change_frame_size_1):
2636         * frame.c (allocate_frame_core):
2637         * frame.c:
2638         * frame-x.c (x_focus_on_frame):
2639         * frame-x.c (x_init_frame_2):
2640         * frame-x.c (x_popup_frame):
2641         * frame-x.c (xemacs_XtPopup):
2642         * frame-x.c:
2643         * frame-x.c (Foffix_start_drag_internal):
2644         * frame-x.c (x_cde_destroy_callback):
2645         * frame-x.c (x_wm_hack_wm_protocols):
2646         * frame-tty.c (tty_frame_visible_p):
2647         * frame-msw.c (mswindows_make_frame_invisible):
2648         * frame-msw.c (mswindows_after_init_frame):
2649         * frame-msw.c (mswindows_init_frame_1):
2650         * fns.c (syms_of_fns):
2651         * fns.c (Fbase64_decode_string):
2652         * fns.c (Fnconc):
2653         * fns.c (Ffillarray):
2654         * fns.c (Fobject_plist):
2655         * fns.c (Fget):
2656         * fns.c (Fcanonicalize_lax_plist):
2657         * fns.c (Fcanonicalize_plist):
2658         * fns.c (Fplist_remprop):
2659         * fns.c (Fplist_get):
2660         * fns.c (advance_plist_pointers):
2661         * fns.c (internal_plist_put):
2662         * fns.c (Fnreverse):
2663         * fns.c (Fremassq):
2664         * fns.c (Felt):
2665         * fns.c (Fsubstring):
2666         * fns.c (Fbvconcat):
2667         * fns.c (Flength):
2668         * fns.c (length_with_bytecode_hack):
2669         * fns.c (print_bit_vector):
2670         * fns.c:
2671         * floatfns.c (Ffloor):
2672         * floatfns.c:
2673         * floatfns.c (in_float_error):
2674         * fileio.c (Ffile_modes):
2675         * fileio.c (Fexpand_file_name):
2676         * fileio.c (Fmake_temp_name):
2677         * fileio.c (Ffile_name_nondirectory):
2678         * fileio.c (Ffile_name_directory):
2679         * file-coding.h:
2680         * file-coding.c (vars_of_mule_coding):
2681         * file-coding.c (convert_to_external_format):
2682         * file-coding.c (encoding_marker):
2683         * file-coding.c (decoding_marker):
2684         * file-coding.c (Fcopy_coding_system):
2685         * file-coding.c (Fmake_coding_system):
2686         * file-coding.c (struct coding_system_list_closure):
2687         * file-coding.c (Ffind_coding_system):
2688         * file-coding.c (symbol_to_eol_type):
2689         * file-coding.c:
2690         * faces.h (struct face_cachel):
2691         * faces.c (vars_of_faces):
2692         * faces.c (face_property_was_changed):
2693         * faces.c (mark_face_cachels):
2694         * faces.c (temporary_faces_list):
2695         * faces.c (struct face_list_closure):
2696         * faces.c:
2697         * extents.h (struct extent):
2698         * extents.c (vars_of_extents):
2699         * extents.c (struct copy_string_extents_1_arg):
2700         * extents.c (add_string_extents_mapper):
2701         * extents.c (Fextent_property):
2702         * extents.c (Fset_extent_property):
2703         * extents.c (symbol_to_glyph_layout):
2704         * extents.c (properties_equal):
2705         * extents.c (print_extent):
2706         * extents.c (print_extent_1):
2707         * extents.c (extent_in_region_p):
2708         * extents.c (gap_array_make_gap):
2709         * extents.c:
2710         * events.h (struct Lisp_Event):
2711         * events.h:
2712         * events.c (Fevent_properties):
2713         * events.c (format_event_object):
2714         * events.c (Fmake_event):
2715         * events.c (event_equal):
2716         * events.c (print_event):
2717         * events.c (mark_event):
2718         * event-stream.c ((read-char)
2719         * event-stream.c (vars_of_event_stream):
2720         * event-stream.c (syms_of_event_stream):
2721         * event-stream.c (Fset_recent_keys_ring_size):
2722         * event-stream.c (Fsit_for):
2723         * event-stream.c (Fnext_event):
2724         * event-stream.c (execute_help_form):
2725         * event-stream.c (maybe_kbd_translate):
2726         * event-stream.c:
2727         * event-msw.c (vars_of_event_mswindows):
2728         * event-msw.c (mswindows_wnd_proc):
2729         * event-msw.c (mswindows_need_event):
2730         * event-msw.c (mswindows_drain_windows_queue):
2731         * event-msw.c (mswindows_pump_outstanding_events):
2732         * event-msw.c:
2733         * event-msw.c (slurp_thread):
2734         * event-msw.c (struct ntpipe_slurp_stream):
2735         * event-msw.c (HANDLE_TO_USID):
2736         * event-Xt.c (emacs_Xt_handle_magic_event):
2737         * event-Xt.c (x_event_to_emacs_event):
2738         * event-Xt.c (x_reset_modifier_mapping):
2739         * event-Xt.c (x_reset_key_mapping):
2740         * event-Xt.c:
2741         * eval.c (syms_of_eval):
2742         * eval.c (warn_when_safe):
2743         * eval.c (warn_when_safe_lispobj):
2744         * eval.c (Fbacktrace_frame):
2745         * eval.c (Fbacktrace):
2746         * eval.c (top_level_set):
2747         * eval.c (unbind_to_hairy):
2748         * eval.c (specbind_magic):
2749         * eval.c (specbind_unwind_wasnt_local):
2750         * eval.c (call2_trapping_errors):
2751         * eval.c (call1_trapping_errors):
2752         * eval.c (catch_them_squirmers_call2):
2753         * eval.c (call0_trapping_errors):
2754         * eval.c (run_hook_trapping_errors):
2755         * eval.c (catch_them_squirmers_eval_in_buffer):
2756         * eval.c (call4_in_buffer):
2757         * eval.c (call3_in_buffer):
2758         * eval.c (call2_in_buffer):
2759         * eval.c (call1_in_buffer):
2760         * eval.c (call0_in_buffer):
2761         * eval.c (run_hook):
2762         * eval.c (run_hook_with_args_in_buffer):
2763         * eval.c (Fapply):
2764         * eval.c (Feval):
2765         * eval.c (do_autoload):
2766         * eval.c (un_autoload):
2767         * eval.c (Fautoload):
2768         * eval.c (Finteractive_p):
2769         * eval.c (Fcommand_execute):
2770         * eval.c (signal_quit):
2771         * eval.c (call_with_suspended_errors):
2772         * eval.c (signal_error):
2773         * eval.c (return_from_signal):
2774         * eval.c (Fcall_with_condition_handler):
2775         * eval.c (run_condition_case_handlers):
2776         * eval.c (condition_case_1):
2777         * eval.c (Funwind_protect):
2778         * eval.c (unwind_to_catch):
2779         * eval.c (internal_catch):
2780         * eval.c (Fmacroexpand_internal):
2781         * eval.c (Fuser_variable_p):
2782         * eval.c (Fdefconst):
2783         * eval.c (Fdefvar):
2784         * eval.c (Ffunction):
2785         * eval.c (signal_call_debugger):
2786         * eval.c (call_debugger):
2787         * eval.c:
2788         * emacs.c (main):
2789         * emacs.c (sort_args):
2790         * emacs.c (main_1):
2791         * elhash.h:
2792         * elhash.c:
2793         * editfns.c (Fencode_time):
2794         * editfns.c (Fdecode_time):
2795         * editfns.c (Fuser_full_name):
2796         * editfns.c:
2797         * editfns.c (save_excursion_restore):
2798         * ecrt0.c:
2799         * dynarr.c:
2800         * doprnt.c (emacs_doprnt_1):
2801         * doc.c (verify_doc_mapper):
2802         * doc.c (Fsnarf_documentation):
2803         * doc.c (Fdocumentation):
2804         * dll.c:
2805         * dired.c (user_name_completion):
2806         * dired.c (Fdirectory_files):
2807         * dialog-x.c:
2808         * dialog-msw.c:
2809         * dgif_lib.c (FreeSavedImages):
2810         * dgif_lib.c (DGifGetImageDesc):
2811         * device.h:
2812         * device.h (struct device):
2813         * device.c (Fselect_device):
2814         * device.c (allocate_device):
2815         * device.c:
2816         * device-x.c (Fx_keysym_on_keyboard_p):
2817         * device-x.c (Fx_valid_keysym_name_p):
2818         * device-x.c (x_IO_error_handler):
2819         * device-x.c (x_delete_device):
2820         * device-x.c (x_finish_init_device):
2821         * device-x.c (x_init_device):
2822         * device-x.c:
2823         * device-msw.c (mswindows_init_device):
2824         * dbxrc:
2825         * database.c (vars_of_database):
2826         * database.c (Fput_database):
2827         * database.c (Fopen_database):
2828         * database.c (berkdb_remove):
2829         * database.c (berkdb_put):
2830         * database.c (Fdatabasep):
2831         * database.c (print_database):
2832         * database.c:
2833         * data.c (vars_of_data):
2834         * data.c (syms_of_data):
2835         * data.c (init_errors_once_early):
2836         * data.c (prune_weak_lists):
2837         * data.c (finish_marking_weak_lists):
2838         * data.c (print_weak_list):
2839         * data.c (Fmod):
2840         * data.c (Fstring_to_number):
2841         * data.c (Fnumber_to_string):
2842         * data.c (Findirect_function):
2843         * data.c (Fsetcdr):
2844         * data.c (Ffloatp):
2845         * data.c (Fsubr_interactive):
2846         * data.c (Farrayp):
2847         * data.c (Fkeywordp):
2848         * data.c (Fnull):
2849         * data.c:
2850         * console.h (CONSOLE_NAME):
2851         * console.h:
2852         * console.c (vars_of_console):
2853         * console.c (Fselect_console):
2854         * console.c:
2855         * console-x.h (DEVICE_X_COLORMAP):
2856         * console-x.h (struct x_device):
2857         * console-x.c (x_device_to_console_connection):
2858         * console-tty.h (CONSOLE_TTY_FINAL_CURSOR_Y):
2859         * console-tty.c (tty_init_console):
2860         * console-tty.c:
2861         * console-msw.h (struct mswindows_frame):
2862         * conslots.h:
2863         * config.h.in:
2864         * cmds.c (internal_self_insert):
2865         * cmds.c (Fforward_line):
2866         * cmds.c (Fforward_char):
2867         * cmds.c:
2868         * cmdloop.c:
2869         * chartab.c (mark_char_table_entry):
2870         * chartab.c:
2871         * casefiddle.c (casify_word):
2872         * callproc.c (child_setup):
2873         * callproc.c (Fcall_process_internal):
2874         * callproc.c:
2875         * callint.c (Fcall_interactively):
2876         * bytecode.h:
2877         * bytecode.c (execute_rare_opcode):
2878         * bytecode.c (execute_optimized_program):
2879         * bytecode.c:
2880         * bufslots.h:
2881         * buffer.h (BUFFER_REALLOC):
2882         * buffer.h (GET_CHARPTR_INT_DATA_ALLOCA):
2883         * buffer.h (GET_CHARPTR_EXT_DATA_ALLOCA):
2884         * buffer.h:
2885         * buffer.h (MAP_INDIRECT_BUFFERS):
2886         * buffer.h (CHECK_LIVE_BUFFER):
2887         * buffer.c (init_initial_directory):
2888         * buffer.c (complex_vars_of_buffer):
2889         * buffer.c (vars_of_buffer):
2890         * buffer.c (finish_init_buffer):
2891         * buffer.c (Fget_file_buffer):
2892         * buffer.c (Fbuffer_list):
2893         * buffer.c (mark_buffer):
2894         * balloon_help.c (balloon_help_move_to_pointer):
2895         * balloon_help.c (show_help):
2896         * balloon_help.c:
2897         * backtrace.h:
2898         * alloc.c (garbage_collect_1):
2899         * alloc.c (sweep_strings):
2900         * alloc.c (sweep_compiled_functions):
2901         * alloc.c (sweep_bit_vectors_1):
2902         * alloc.c (sweep_vectors_1):
2903         * alloc.c (sweep_lcrecords_1):
2904         * alloc.c (tick_lcrecord_stats):
2905         * alloc.c (pure_string_sizeof):
2906         * alloc.c (mark_conses_in_list):
2907         * alloc.c (mark_object):
2908         * alloc.c (report_pure_usage):
2909         * alloc.c (make_pure_float):
2910         * alloc.c (make_pure_string):
2911         * alloc.c (free_managed_lcrecord):
2912         * alloc.c (mark_string):
2913         * alloc.c (noseeum_make_marker):
2914         * alloc.c (allocate_event):
2915         * alloc.c (Fbit_vector):
2916         * alloc.c (Fvector):
2917         * alloc.c (make_float):
2918         * alloc.c (Fmake_list):
2919         * alloc.c (Flist):
2920         * alloc.c (FREE_FIXED_TYPE_WHEN_NOT_IN_GC):
2921         * alloc.c (PUT_FIXED_TYPE_ON_FREE_LIST):
2922         * alloc.c (DECLARE_FIXED_TYPE_ALLOC):
2923         * alloc.c (dbg_constants):
2924         * alloc.c (gc_record_type_p):
2925         * alloc.c (free_lcrecord):
2926         * alloc.c (xmalloc):
2927         * alloc.c (NOSEEUM_INCREMENT_CONS_COUNTER):
2928         * abbrev.c:
2929         * Makefile.in.in (mostlyclean):
2930         * Makefile.in.in (external_client_xlib_objs_nonshared):
2931         * Makefile.in.in (temacs_link_args):
2932         * Makefile.in.in (release):
2933         * Makefile.in.in (dnd_objs):
2934         * Makefile.in.in (objs):
2935         * Makefile.in.in (PROGNAME):
2936         * EmacsShell.c: cast strings to (XtPointer)
2937         * EmacsFrame.c: cast strings to (XtPointer)
2938         - mega patch
2939         - rewrite basic lisp functions for speed
2940         - rewrite bytecode interpreter for speed
2941         - rewrite list looping constructs for speed and safety using
2942           tortoise/hare.
2943         - use size_t where appropriate.
2944         - new hashtable implementation
2945         - cleanup implementation of opaques
2946         - opaques can now be purecopy'ed
2947         - move some cl functionality into C for speed.
2948         - remove last remaining VMS support
2949         - spelling fixes
2950         - improve gdb/dbx debugger support
2951         - move pure.c back into alloc.c for performance
2952         - enable report_pure_usage() if --memory-usage-stats
2953         - remove remnants of Energize support (EMACS_BTL, cadillac...)
2954         - don't use symbols with leading `_' or embedded `__'
2955         - globally cleanup duplicated semicolons `;;'
2956         - I give in on %p vs %lx - we use printf("%lx",(long) p)
2957           globally.
2958         - globally replace O_NDELAY with O_NONBLOCK.
2959         - globally replace CDISABLE with _POSIX_VDISABLE.
2960         - use O_RDONLY and O_RDWR instead of magic `0' and `2'.
2961         - define (and maybe use!) STDERR_FILENO and friends.
2962         - add support for macros defined in C
2963         - `when', `unless', `not' and `defalias' now defined in C,
2964           so that they are universally available.
2965         - rename defvar_mumble to defvar_magic
2966         - rename RETURN__ to RETURN_SANS_WARNINGS
2967         - use consistent style of initial caps in error messages
2968         - implement last, butlast, nbutlast, copy-list in C.
2969         - provide typedefs for all struct Lisp_foo types
2970         - Lisp_Objects must be initialized to Qnil rather than 0.
2971         - make sure XEmacs runs (slowly) with always_gc == 1;
2972         - fast and safe LOOP_* macros
2973         - change calls to XSETOBJ to XSETFOO
2974         - replace calls to XSETINT by make_int()
2975         - plug up memory leaks
2976         - use style markobj (foo), not silly ((markobj) (foo))
2977         - use XFLOAT_DATA (obj) instead of float_data (XFLOAT (obj))
2978
2979 1998-12-02  P. E. Jareth Hein  <jareth@camelot.co.jp>
2980
2981         * unexec.c: Changed a #ifndef statement to fix XEmacs on BSDI 3.0
2982
2983 1998-11-28  SL Baur  <steve@altair.xemacs.org>
2984
2985         * XEmacs 21.2-beta4 is released.
2986
2987 1998-11-27  SL Baur  <steve@altair.xemacs.org>
2988
2989         * mule-charset.c (complex_vars_of_mule_charset): Fix graphic
2990         property in control-1 charset.
2991         From Julian Bradfield <jcb@daimi.au.dk>
2992
2993 1998-11-26  Jan Vroonhof  <vroonhof@math.ethz.ch>
2994
2995         * gui-x.c (button_item_to_widget_value): Ignore :key-sequence
2996         keyword.
2997         Add stub for :label.
2998
2999         * gui.c (gui_item_add_keyval_pair): ditto.
3000
3001         * menubar-x.c (menu_item_descriptor_to_widget_value_1): Ignore
3002         :key-sequence keyword.
3003         Add stub for:label.
3004         Support :active for submenus like the Windows code and FSF Emacs.
3005
3006 1998-11-27  Hrvoje Niksic  <hniksic@srce.hr>
3007
3008         * dired.c (make_directory_hash_table): make_string() is OK because
3009         readdir() Mule-encapsulates.
3010
3011 1998-11-26  Hrvoje Niksic  <hniksic@srce.hr>
3012
3013         * fns.c (Fbase64_encode_string): Fix docstring.
3014         (Fbase64_decode_string): Ditto.
3015
3016 1998-11-26  Hrvoje Niksic  <hniksic@srce.hr>
3017
3018         * editfns.c (Ftranslate_region): Use
3019         convert_bufbyte_string_into_emchar_string().
3020
3021 1998-11-25  Hrvoje Niksic  <hniksic@srce.hr>
3022
3023         * editfns.c (Ftranslate_region): Accept vectors and char-tables as
3024         well as strings.
3025         (Ftranslate_region): Turn table into an array of Emchars for
3026         larger regions.
3027
3028 1998-11-25  Hrvoje Niksic  <hniksic@srce.hr>
3029
3030         * chartab.c (Freset_char_table): Fix wrong placement of #endif.
3031
3032 1998-11-24  Hrvoje Niksic  <hniksic@srce.hr>
3033
3034         * chartab.c (Freset_char_table): Don't blindly fill chartables of
3035         type `char' with nils.
3036
3037         * chartab.c (canonicalize_char_table_value): Coerce ints to chars
3038         for tables of type `char'.
3039
3040 1998-11-26  Didier Verna  <verna@inf.enst.fr>
3041
3042         * input-method-xlib.c (Initialize_Locale): don't call
3043         XtSetLanguageProc. We've done the whole work here.
3044         * input-method-xfs.c (Initialize_Locale): ditto.
3045         * input-method-motif.c (Initialize_Locale): ditto.
3046
3047 1998-11-26  Didier Verna  <verna@inf.enst.fr>
3048
3049         * process-unix.c (unix_create_process): handle properly
3050         Vfile_name_coding_system for converting the program and directory
3051         names.
3052
3053 1998-11-27  SL Baur  <steve@altair.xemacs.org>
3054
3055         * m/arm.h: New file.
3056         From James LewisMoss <dres@ioa.com>
3057
3058 1998-11-27  Takeshi Hagiwara  <hagiwara@ie.niigata-u.ac.jp>
3059
3060         * m/mips-nec.h:
3061         Fix the realpath() problem of UnixWare2.1.3.
3062         Patches for NEC's sysv4.2 machine.
3063
3064 1998-11-25  Hrvoje Niksic  <hniksic@srce.hr>
3065
3066         * dired.c (Fdirectory_files): Remove redundant code.
3067
3068 1998-11-25  Hrvoje Niksic  <hniksic@srce.hr>
3069
3070         * fns.c (free_malloced_ptr): New function.
3071         (XMALLOC_OR_ALLOCA): New macro.
3072         (XMALLOC_UNBIND): Ditto.
3073         (Fbase64_encode_region): Use malloc() for large blocks; arrange it
3074         to be freed in case of non-local exit.
3075         (Fbase64_encode_string): Ditto.
3076         (Fbase64_decode_region): Ditto.
3077         (Fbase64_decode_string): Ditto.
3078         (STORE_BYTE): New macro.
3079         (base64_decode_1): Use it.
3080
3081 1998-11-25  Hrvoje Niksic  <hniksic@srce.hr>
3082
3083         * fns.c (base64_value_to_char): Base64 stuff.
3084
3085 1998-11-24  Hrvoje Niksic  <hniksic@srce.hr>
3086
3087         * editfns.c (Fbuffer_substring): New function.
3088
3089         * lisp.h: Declare make_string_from_buffer_no_extents().
3090
3091         * insdel.c (make_string_from_buffer_1): New function.
3092         (make_string_from_buffer_no_extents): Ditto.
3093
3094 1998-11-15  Michael Sperber [Mr. Preprocessor]  <sperber@informatik.uni-tuebingen.de>
3095
3096         * linuxplay.c: Including <fcntl.h> instead of <sys/fcntl.h> makes
3097         sound work on AIX with OSS installed.  Linux should still work.
3098
3099 1998-11-03  Andy Piper  <andyp@parallax.co.uk>
3100
3101         * config.h.in: name change for cygwin/version.h
3102
3103         * configure.in: check for cygwin/version.h now.
3104
3105         * cygwin32.h: track CYGWIN_DLL_VERSION_MAJOR ->
3106         CYGWIN_VERSION_DLL_MAJOR name change in cygwin b20.
3107         move cygwin32/version.h to cygwin/version.h
3108
3109 1998-11-03  Olivier Galibert  <galibert@pobox.com>
3110
3111         * lisp.h  (struct  Lisp_Bit_Vector): Fix declaration of  bits from
3112         int to long.
3113
3114 1998-10-22  Andy Piper  <andyp@parallax.co.uk>
3115
3116         * cygwin32.h: track CYGWIN_DLL_VERSION_MAJOR ->
3117         CYGWIN_VERSION_DLL_MAJOR name change in cygwin b20.
3118         enable BROKEN_SIGIO under b20 to make QUIT work.
3119
3120 1998-10-22  Andy Piper  <andyp@parallax.co.uk>
3121
3122         * frame-msw.c (mswindows_size_frame_internal): force frame sizing
3123         to fit within the constraints of the screen size. I.e. make the
3124         frame small enough to fit and move it if some of it will be
3125         off-screen.
3126
3127 1998-10-19  Greg Klanderman  <greg@alphatech.com>
3128
3129         * dired.c: conditionalize inclusion of user-name-completion
3130         primitives on non-Windows NT.  The needed functions don't exist on NT.
3131
3132 1998-11-24  SL Baur  <steve@altair.xemacs.org>
3133
3134         * gifrlib.h: Clean up types for 64 bit compile.
3135         * dgif_lib.c (DGifInitRead): Ditto.
3136         (MakeSavedImage): Ditto.
3137         * emacs.c (decode_path): Ditto.
3138         From Steve Carney <carney@pa.dec.com>
3139
3140 1998-10-16  William M. Perry  <wmperry@aventail.com>
3141
3142         * glyphs-msw.c (bitmap_table): Fixed typo in builtin bitmaps
3143           (cehckboxes instead of checkboxes).
3144
3145 1998-10-15  SL Baur  <steve@altair.xemacs.org>
3146
3147         * XEmacs 21.2-beta3 is released.
3148
3149 1998-10-13  Raymond Toy  <toy@rtp.ericsson.se>
3150
3151         * runemacs.c (WinMain): If the basename is "rungnuclient.exe", run
3152         gnuclient.  Otherwise, we run xemacs as we always did.  This gets
3153         rid of the annoying DOS window when running gnuclient.
3154
3155 1998-10-13  Andy Piper  <andyp@parallax.co.uk>
3156
3157         * dragdrop.c (vars_of_dragdrop): rename HAVE_MSWINDOWS ->
3158         HAVE_MS_WINDOWS typo.
3159
3160 1998-10-13  SL Baur  <steve@altair.xemacs.org>
3161
3162         * process-unix.c (unix_send_process): Set closed flag on writable
3163         pipe after SIGPIPE is received and before we call deactivate_process.
3164
3165 1998-10-03  Gunnar Evermann  <ge204@eng.cam.ac.uk>
3166
3167         * window.c (Fset_window_start): respect narrowing when
3168         checking wheter start is at the beginning of a line.
3169         (Fset_window_buffer): Ditto
3170         Fixes repeatable crash in VM.
3171
3172 1998-10-09  SL Baur  <steve@altair.xemacs.org>
3173
3174         * window.c (specifier_vars_of_window): Set default vertical
3175         divider width to 1 on ttys.
3176
3177 1998-10-08  Martin Buchholz  <martin@xemacs.org>
3178
3179         * alloc.c:
3180         * unexec.c:
3181         * malloc.c:
3182         Add <stddef.h> to get ptrdiff_t declaration
3183
3184 1998-10-07  Jonathan Harris  <jhar@tardis.ed.ac.uk>
3185
3186         * scrollbar-msw.c: Use the same vertical scrollbar drag hack as
3187           is used for Motif or Lucid scrollbars under X.
3188
3189 1998-10-08  Pierre Wendling  <pw@ebc.vbe.dec.com>
3190
3191         * m/alpha.h (UNEXEC): quoted to avoid bad expansion when running
3192         `configure'
3193
3194 1998-10-06  Takeshi Hagiwara  <hagiwara@ie.niigata-u.ac.jp>
3195
3196         * frame-x.c (x_delete_frame): Fix an argument of XtDestroyWidget.
3197
3198 1998-10-05  Andy Piper  <andyp@parallax.co.uk>
3199
3200         * s/cygwin32.h: more cygwin b20 reorganisation.
3201
3202 1998-10-01  Raymond Toy  <toy@rtp.ericsson.se>
3203
3204         * nas.c: Added necessary support functions to be able to handle
3205         WAVE files in memory, just like the support for SND files in
3206         memory.
3207
3208 1998-09-30  SL Baur  <steve@altair.xemacs.org>
3209
3210         * callproc.c (child_setup): Fix spelling typo.
3211
3212 1998-09-29  SL Baur  <steve@altair.xemacs.org>
3213
3214         * XEmacs 21.2-beta2 is released.
3215
3216 1998-09-27  P. E. Jareth Hein  <jareth@camelot.co.jp>
3217
3218         * regex.c (re_match_2_internal): Add in code to reset lowest_active_reg
3219         to prevent memory corruption in the case of jumping out of a series of
3220         nested match patterns. This is a rather brute force approach, though.
3221
3222 1998-09-02  Andy Piper  <andyp@parallax.co.uk>
3223
3224         * config.h.in: ditto.
3225
3226         * s/cygwin32.h: rearrange declarations to cope with cygwin
3227         b20. Include cygwin32/version.h if it exists.
3228
3229 1998-09-20  Jonathan Harris  <jhar@tardis.ed.ac.uk>
3230
3231         * device-msw.c (mswindows_init_device): Call new
3232           mswindows_enumerate_fonts() function in objects-msw.c instead
3233           of font_enum_callback_1() to enumerate fonts.
3234
3235           font_enum_callback_1() and _2() moved to objects-msw.c.
3236
3237         * faces.c (complex_vars_of_faces): Make the mswindows default
3238           face font fully specified and provide some fallbacks.
3239
3240         * objects-msw.c: font_enum_callback_1() and _2() moved here
3241           from objects-msw.c. Obtain the enumerated font's character
3242           sets by table lookup instead of using the locale-specific
3243           string provided by Windows.
3244
3245           New public non-method mswindows_enumerate_fonts() that fills
3246           in the supplied mswindows device's font list.
3247
3248           mswindows_initialize_font_instance: Use the supplied name
3249           variable instead of f->name when signalling errors. Match font
3250           weights and character sets using lookup tables which handle
3251           spaces instead of by frobbing.
3252
3253 1998-09-20  Jonathan Harris  <jhar@tardis.ed.ac.uk>
3254
3255         * process-nt.c: Define an arbitrary limit, FRAGMENT_CODE_SIZE,
3256           on the size of code fragments passed to run_in_other_process.
3257
3258           run_in_other_process(): Use FRAGMENT_CODE_SIZE to determine
3259           the amount of memory to allocate in the other process.
3260
3261           Removed sigkill_code_end(), sigint_code_end() and
3262           sig_enable_code_end() since they are now redundant.
3263
3264           send_signal() and enable_child_signals(): Don't try to work
3265           out the end of the code fragments passed to
3266           run_in_other_process()
3267
3268 1998-09-10  Kazuyuki IENAGA  <ienaga@jsys.co.jp>
3269
3270         * src/s/freebsd.h: Added __ELF__ and compiler/liker flags for
3271         FreeBSD-current.
3272
3273         * src/unexelf.c: Partially synched with FSF's 20.3.
3274
3275 1998-09-10  Hrvoje Niksic  <hniksic@srce.hr>
3276
3277         * insdel.c (signal_after_change): Map across indirect buffers
3278         here, and not in the upper-level functions.
3279         (signal_first_change): Don't check for Armageddon.
3280         (signal_before_change): Map across indirect buffers here.
3281         (prepare_to_modify_buffer): ...and here.
3282
3283 1998-09-09  Hrvoje Niksic  <hniksic@srce.hr>
3284
3285         * insdel.c (signal_after_change): Add return value.
3286         (buffer_insert_string_1): Use it.
3287         (buffer_delete_range): Ditto.
3288         (buffer_replace_char): Ditto.
3289         (cancel_multiple_change): Map the indirect buffers.
3290
3291 1998-09-06  Hrvoje Niksic  <hniksic@srce.hr>
3292
3293         * insdel.c (init_buffer_text): Remove INDIRECT_P parameter.
3294         (uninit_buffer_text): Ditto.
3295
3296         * buffer.c (Fmake_indirect_buffer): Implement stricter
3297         error-checking.
3298
3299 1998-09-04  Hrvoje Niksic  <hniksic@srce.hr>
3300
3301         * insdel.c (change_function_restore): Reverse order of
3302         function-call and assignment.
3303         (first_change_hook_restore): Ditto.
3304
3305         * extents.c (mark_extent_auxiliary): Mark them.
3306         (Fset_extent_property): Set them.
3307         (Fextent_property): Get them.
3308         (Fextent_properties): Ditto.
3309         (vars_of_extents): Set their default.
3310
3311         * extents.h (struct extent_auxiliary): Add before_change_functions
3312         and after_change_functions.
3313
3314         * insdel.c (signal_before_change): Use it.
3315         (signal_after_change): Ditto.
3316
3317         * extents.c (report_extent_modification): New function.
3318
3319         * insdel.c (signal_before_change): Don't check for Armageddon.
3320         (signal_after_change): Ditto.
3321
3322 1998-09-11  Gunnar Evermann  <Gunnar.Evermann@nats.informatik.uni-hamburg.de>
3323
3324         * redisplay.c (redisplay_window): make sure a new starting point
3325         is chosen if it somehow got moved from the beginning of the line
3326         -- this can happen because Fwiden was called recently.
3327
3328         * window.c (Fset_window_start): set start_at_line_beg correctly
3329         (Fset_window_buffer): Ditto
3330
3331 1998-09-06  Hrvoje Niksic  <hniksic@srce.hr>
3332
3333         * insdel.c (init_buffer_text): Remove INDIRECT_P parameter.
3334         (uninit_buffer_text): Ditto.
3335
3336         * buffer.c (Fmake_indirect_buffer): Implement stricter
3337         error-checking.
3338
3339 1998-05-14  Jan Vroonhof  <vroonhof@math.ethz.ch>
3340
3341         * emacs.c (main_1): Removed references to *vars_of_filelock.
3342
3343         * lisp.h: Added Fsystem_name.
3344
3345         * filelock.c: Replaced by version from FSF 20.2. Now implements
3346         locking by using symlinks which is NFS safe. However keep the
3347         GCPRO's in lock_file and the calls to callx_in_buffer like our old
3348         version (and of course use ansi C, acessor macros, etc).
3349
3350 1998-09-06  Jan Vroonhof  <vroonhof@math.ethz.ch>
3351
3352         * process-unix.c (unix_create_process): Reset SIGHUP handler to
3353         SIG_DFL. We now try to conserve any inherted SIG_IGN settings
3354         in init_signals_very_early. However these should not be passed
3355         on to children attached to the new pty.
3356
3357 1998-08-28  Andy Piper  <andyp@parallax.co.uk>
3358
3359         * glyphs-eimage.c (png_instantiate_unwind): clean up eimage after use.
3360
3361 1998-09-07  Jonathan Harris  <jhar@tardis.ed.ac.uk>
3362
3363         * fileio.c (file-name-directory, file_name_as_directory):
3364           Don't call CORRECT_DIR_SEPS, even when #defined WINDOWSNT.
3365
3366 1998-09-02  Andy Piper  <andyp@parallax.co.uk>
3367
3368         * emacs.c (main_1): init_ralloc() if initialised and we have REL_ALLOC
3369
3370         * ralloc.c: uncomment __morecore.
3371
3372 1998-09-92  Jonathan Harris  <jhar@tardis.ed.ac.uk>
3373
3374         * event-msw.c(winsock_writer): Supply a dummy 4th argument to
3375           WriteFile() to fix a winsock 1.x bug on Win95.
3376
3377 1998-08-28  Hrvoje Niksic  <hniksic@srce.hr>
3378
3379         * event-Xt.c (emacs_Xt_mapping_action): Check for device being
3380         deleted.
3381         (x_event_to_emacs_event): Ditto.
3382         (emacs_Xt_handle_focus_event): Ditto.
3383         (emacs_Xt_handle_magic_event): Ditto.
3384
3385         * console-x.h (struct x_device): New flag being_deleted.
3386         (DEVICE_X_BEING_DELETED): New macro.
3387
3388         * device-x.c (x_IO_error_handler): Throw to top-level instead of
3389         returning.  Before doing that, set the being_deleted flag on the
3390         device.
3391
3392 1998-08-27  Hrvoje Niksic  <hniksic@srce.hr>
3393
3394         * device-x.c (x-seppuku-on-epipe): Removed.
3395
3396 1998-08-26  Gunnar Evermann  <Gunnar.Evermann@nats.informatik.uni-hamburg.de>
3397
3398         * frame-x.c (x_delete_frame): Flush the X output buffer after
3399         calling XtDestroyWidget to ensure that the windows are really
3400         killed right now.
3401
3402 1998-08-26  Hrvoje Niksic  <hniksic@srce.hr>
3403
3404         * menubar-x.c (my_run_hook): New unused function.
3405         (pre_activate_callback): Use run_hook for Qactivate_menubar_hook,
3406         since we ignore the results of the contained functions anyway.
3407
3408 1998-08-26  P. E. Jareth Hein  <jareth@camelot.co.jp>
3409
3410         * glyphs-eimage.c (gif_instantiate): Fix a crash in handling
3411         interlaced GIF files that are smaller than 4 lines high...
3412
3413 1998-08-31  Hrvoje Niksic  <hniksic@srce.hr>
3414
3415         * buffer.c (map_over_sharing_buffers): Deleted.
3416
3417         * insdel.c (MAP_INDIRECT_BUFFERS): Move to buffer.h.
3418
3419         * buffer.c (Fkill_buffer): Keep indirect_children updated while
3420         killing them.
3421
3422 1998-08-31  Hrvoje Niksic  <hniksic@srce.hr>
3423
3424         * insdel.c (buffer_insert_string_1): Advance the point bytind in
3425         all the buffers.
3426         (buffer_delete_range): Ditto.
3427
3428         * marker.c (init_buffer_markers): Set point-marker to the value of
3429         point in an indirect buffer.
3430
3431 1998-08-30  Hrvoje Niksic  <hniksic@srce.hr>
3432
3433         * undo.c (undo_prelude): Test last-undo-buffer against base
3434         buffer.
3435
3436         * insdel.c (MAP_INDIRECT_BUFFERS): Use it.
3437
3438         * buffer.h (BUFFER_BASE_BUFFER): New macro.
3439
3440 1998-08-30  Hrvoje Niksic  <hniksic@srce.hr>
3441
3442         * insdel.c (init_buffer_text): Initialize it here.
3443
3444         * line-number.c: Address line_number_cache through buffer->text.
3445
3446         * buffer.c (mark_buffer): Mark line number cache.
3447
3448         * bufslots.h (line_number_cache): Move to struct buffer_text.
3449
3450         * insdel.c (buffer_insert_string_1): Propagate signals and changes
3451         across the children buffers.
3452         (buffer_delete_range): Ditto.
3453         (buffer_replace_char): Ditto.
3454         (gap_left): Ditto.
3455         (gap_right): Ditto.
3456
3457         * insdel.c (MAP_INDIRECT_BUFFERS): New macro.
3458
3459         * buffer.c (Fmake_indirect_buffer): Uncomment.
3460
3461 1998-08-31  Hrvoje Niksic  <hniksic@srce.hr>
3462
3463         * macros.c (Fend_kbd_macro): Remove trailing period from error
3464         message.
3465         (Fexecute_kbd_macro): Ditto.
3466
3467 1998-08-21  Greg Klanderman  <greg@alphatech.com>
3468
3469         * dired.c (Fuser_name_completion): remove optional 2nd argument.
3470         (Fuser_name_completion_1): new function to return uniqueness
3471         indication in addition to the user name completion.
3472         (user_name_completion): change type of `uniq' argument.
3473
3474 1998-08-19  Michael Sperber [Mr. Preprocessor]  <sperber@informatik.uni-tuebingen.de>
3475
3476         * lread.c (vars_of_lread): Removed `source-directory' variable.
3477
3478 1998-08-22  Hrvoje Niksic  <hniksic@srce.hr>
3479
3480         * fileio.c (Ffile_readable_p): Apply the DOS/Windows logic to
3481         Cygwin.
3482
3483 1998-08-19  SL Baur  <steve@altair.xemacs.org>
3484
3485         * dired.c (vars_of_dired): Fix misapplied patch.
3486
3487 1998-08-16  Martin Buchholz  <martin@xemacs.org>
3488
3489         * fns.c (Fremrassq, remrassq_no_quit):
3490         A XCAR that should have been an XCDR turned Fremrassq into Fremassq
3491
3492 1998-07-17  Didier Verna  <verna@inf.enst.fr>
3493
3494         * redisplay-x.c (x_get_gc): returns a GC with a FillStipple fill
3495         style as foreground GC for faces that have the `dim' property.
3496         (x_output_string): when the `dim' face property is set,
3497         ensure the gray pixmap has been created, and get a proper
3498         foreground GC to draw the text.
3499
3500 1998-08-09  Jonathan Harris  <jhar@tardis.ed.ac.uk>
3501
3502         * event-msw.c (mswindows_wnd_proc): Workaround for a Win95 bug:
3503           Manually track the state of the left and right Ctrl and Alt
3504           modifiers.
3505
3506 1998-08-07 Matt Stupple <matts@tibco.com>
3507
3508         * ntproc.c: don't wait on char_consumed at thread entry.
3509         Additionally, to get the 'process' marked as finished, ensure
3510         that the CHILD_ACTIVE macro returns false, so before exiting
3511         close char_avail and set it to NULL, and close other handles
3512         to reduce handle leak problems.
3513
3514 1998-08-09  Jonathan Harris  <jhar@tardis.ed.ac.uk>
3515
3516         * menubar-msw.c (displayable_menu_item): take account of menu
3517           depth when deciding whether to try to display accelerators.
3518
3519 1998-08-04  Andy Piper  <andyp@parallax.co.uk>
3520
3521         * event-msw.c: use MsgWaitForMultipleObjects if there are no
3522         subprocesses.
3523
3524         * glyphs-msw.c: fix a couple of potential handle leaks.
3525
3526 1998-08-04  P. E. Jareth Hein  <jareth@camelot.co.jp>
3527
3528         * dgif_lib.c gif_io.c gifrlib.h: New files to put GIF
3529           *decoding ONLY* back into the core.
3530         * glyphs-eimage.c: Change referenced header file for GIF
3531           reading to point to the incore version.
3532
3533 1998-07-20  Martin Buchholz  <martin@xemacs.org>
3534
3535         * casefiddle.c (casify_object):
3536         Change algorithm from O(N**2) to O(N).
3537         Code cleanup.
3538         Doc string cleanup.
3539
3540 1998-07-22  Greg Klanderman  <greg@alphatech.com>
3541
3542         * dired.c (file_name_completion_unwind): don't leak the cons.
3543
3544 1998-07-20  Greg Klanderman  <greg@alphatech.com>
3545
3546         * dired.c (Fuser_name_completion): new function.
3547         (Fuser_name_all_completions): new function.
3548         (user_name_completion): new function.
3549         (syms_of_dired): 2 new DEFSUBRs.
3550         (vars_of_dired): initialize user name cache vars.
3551
3552 1998-07-29  P. E. Jareth Hein  <jareth@camelot.co.jp>
3553
3554         * glyphs-eimage.c (png_instantiate): Add proper handling for background
3555         colors taken from the default face.  Also correct a thinko in
3556         transparency (not alpha) handling.
3557
3558 1998-07-23  Martin Buchholz  <martin@xemacs.org>
3559
3560         * s/decosf4-0.h:  Use a perfectly ordinary link.  Nuke BSD crap.
3561         * unexalpha.c: ANSI C-ize.  Clean compiler warnings.
3562         * lread.c (Fload_internal):  Be very careful with printfs of
3563         size_t's
3564         * gui-x.c (menu_name_to_accelerator): tolower wants an `int'
3565         argument.
3566
3567 1998-07-27  Gunnar Evermann  <Gunnar.Evermann@nats.informatik.uni-hamburg.de>
3568
3569         * callint.c (Fcall_interactively): GCPRO prompt string before
3570         passing it to Fread_key_sequence
3571
3572 1998-07-27  SL Baur  <steve@altair.xemacs.org>
3573
3574         * keymap.c (vars_of_keymap): Initialize Vkey_translation_map and
3575         Vvertical_divider_map.
3576
3577         * mule-canna.c (vars_of_mule_canna): Initialize every symbol to
3578         Qnil or 0, none were initialized prior to this change.
3579
3580         Rename misnamed `V' prefixed integer variables:
3581         Vcanna_empty_info, Vcanna_through_info, Vcanna_underline,
3582         Vcanna_inhibit_hankakukana, Vcanna_henkan_length, Vcanna_henkan_revPos,
3583         Vcanna_henkan_revLen, Vcanna_ichiran_length, Vcanna_ichiran_revPos,
3584         Vcanna_ichiran_revLen.
3585
3586         Rename misnamed `V' prefixed integer variables and initialize
3587         properly in the vars_of routine.
3588         Vcanna_mode_AlphaMode, Vcanna_mode_EmptyMode, Vcanna_mode_KigoMode,
3589         Vcanna_mode_YomiMode, Vcanna_mode_JishuMode, Vcanna_mode_TankouhoMode,
3590         Vcanna_mode_IchiranMode, Vcanna_mode_YesNoMode, Vcanna_mode_OnOffMode,
3591         Vcanna_mode_AdjustBunsetsuMode, Vcanna_mode_ChikujiYomiMode,
3592         Vcanna_mode_ChikujiTanMode, Vcanna_mode_HenkanMode,
3593         Vcanna_mode_HenkanNyuryokuMode, Vcanna_mode_ZenHiraHenkanMode,
3594         Vcanna_mode_HanHiraHenkanMode, Vcanna_mode_ZenKataHenkanMode,
3595         Vcanna_mode_HanKataHenkanMode, Vcanna_mode_HanKataHenkanMode,
3596         Vcanna_mode_ZenAlphaHenkanMode, Vcanna_mode_HanAlphaHenkanMode,
3597         Vcanna_mode_ZenHiraKakuteiMode, Vcanna_mode_HanHiraKakuteiMode,
3598         Vcanna_mode_ZenKataKakuteiMode, Vcanna_mode_HanKataKakuteiMode,
3599         Vcanna_mode_ZenAlphaKakuteiMode, Vcanna_mode_HanAlphaKakuteiMode,
3600         Vcanna_mode_HexMode, Vcanna_mode_BushuMode, Vcanna_mode_ExtendMode,
3601         Vcanna_mode_RussianMode, Vcanna_mode_GreekMode, Vcanna_mode_LineMode,
3602         Vcanna_mode_ChangingServerMode, Vcanna_mode_HenkanMethodMode,
3603         Vcanna_mode_DeleteDicMode, Vcanna_mode_TourokuMode,
3604         Vcanna_mode_TourokuEmptyMode, Vcanna_mode_TourokuHinshiMode,
3605         Vcanna_mode_TourokuDicMode, Vcanna_mode_QuotedInsertMode,
3606         Vcanna_mode_BubunMuhenkanMode, Vcanna_mode_MountDicMode,
3607         Vcanna_fn_SelfInsert, Vcanna_fn_FunctionalInsert,
3608         Vcanna_fn_QuotedInsert, Vcanna_fn_JapaneseMode, Vcanna_fn_AlphaMode,
3609         Vcanna_fn_HenkanNyuryokuMode, Vcanna_fn_Forward, Vcanna_fn_Backward,
3610         Vcanna_fn_Next, Vcanna_fn_Prev, Vcanna_fn_BeginningOfLine,
3611         Vcanna_fn_EndOfLine, Vcanna_fn_DeleteNext, Vcanna_fn_DeletePrevious,
3612         Vcanna_fn_KillToEndOfLine, Vcanna_fn_Henkan, Vcanna_fn_Kakutei,
3613         Vcanna_fn_Extend, Vcanna_fn_Shrink, Vcanna_fn_AdjustBunsetsu,
3614         Vcanna_fn_Quit, Vcanna_fn_ConvertAsHex, Vcanna_fn_ConvertAsBushu,
3615         Vcanna_fn_KouhoIchiran, Vcanna_fn_BubunMuhenkan, Vcanna_fn_Zenkaku,
3616         Vcanna_fn_Hankaku, Vcanna_fn_ExtendMode, Vcanna_fn_ToUpper,
3617         Vcanna_fn_Capitalize, Vcanna_fn_ToLower, Vcanna_fn_Hiragana,
3618         Vcanna_fn_Katakana, Vcanna_fn_Romaji, Vcanna_fn_BaseHiragana,
3619         Vcanna_fn_BaseKatakana, Vcanna_fn_BaseEisu, Vcanna_fn_BaseZenkaku,
3620         Vcanna_fn_BaseHankaku, Vcanna_fn_BaseKana, Vcanna_fn_BaseKakutei,
3621         Vcanna_fn_BaseHenkan, Vcanna_fn_BaseHiraKataToggle,
3622         Vcanna_fn_BaseZenHanToggle, Vcanna_fn_BaseKanaEisuToggle,
3623         Vcanna_fn_BaseKakuteiHenkanToggle, Vcanna_fn_BaseRotateForward,
3624         Vcanna_fn_BaseRotateBackward, Vcanna_fn_Touroku, Vcanna_fn_HexMode,
3625         Vcanna_fn_BushuMode, Vcanna_fn_KigouMode, Vcanna_fn_Mark,
3626         Vcanna_fn_TemporalMode, Vcanna_key_Nfer, Vcanna_key_Xfer,
3627         Vcanna_key_Up, Vcanna_key_Left, Vcanna_key_Right, Vcanna_key_Down,
3628         Vcanna_key_Insert, Vcanna_key_Rollup, Vcanna_key_Rolldown,
3629         Vcanna_key_Home, Vcanna_key_Help, Vcanna_key_KP_Key,
3630         Vcanna_key_Shift_Nfer, Vcanna_key_Shift_Xfer, Vcanna_key_Shift_Up,
3631         Vcanna_key_Shift_Left, Vcanna_key_Shift_Right, Vcanna_key_Shift_Down,
3632         Vcanna_key_Cntrl_Nfer, Vcanna_key_Cntrl_Xfer, Vcanna_key_Cntrl_Up,
3633         Vcanna_key_Cntrl_Left, Vcanna_key_Cntrl_Right, Vcanna_key_Cntrl_Down
3634
3635 1998-07-16  Jan Vroonhof  <vroonhof@math.ethz.ch>
3636
3637         * event-Xt.c (x_to_emacs_keysym): Return nil for modifier keysyms.
3638         (x_event_to_emacs_event): Let x_to_emacs_keysym check for modifier
3639         keys thus no longer considering all keysyms on a key.
3640
3641 1998-07-19  SL Baur  <steve@altair.xemacs.org>
3642
3643         * XEmacs 21.2-beta1 is released.
3644
3645 1998-07-12  Oscar Figueiredo  <Oscar.Figueiredo@di.epfl.ch>
3646
3647         * eldap.c (Fldap_search_internal): When converting the list of
3648         attributes to search Copy the final 0 from Lisp strings to C
3649         strings.
3650         Check base, not Vldap_default_base as a a string
3651
3652 1998-07-13  Jonathan Harris  <jhar@tardis.ed.ac.uk>
3653
3654         * nt.c: Remove Vstdio_str; already defined in console-stream.c.
3655
3656         * unexnt.c: Unconditionally define bss_start and bss_size, and
3657           ensure that they don't go in the .bss section.
3658
3659 1998-07-17  Olivier Galibert  <galibert@pobox.com>
3660
3661         * glyphs-x.c (convert_EImage_to_XImage):  Fix previous patch (conv
3662         byte order is dependant  of  the local  byte order).
3663         From Takeshi Hagiwara <hagiwara@ie.niigata-u.ac.jp>
3664
3665 1998-07-18  SL Baur  <steve@altair.xemacs.org>
3666
3667         * glyphs-msw.c (mswindows_resource_normalize): Qresource ->
3668         Qmswindows_resource.
3669         From Jonathan Harris <jhar@tardis.ed.ac.uk>
3670
3671 1998-07-12  SL Baur  <steve@altair.xemacs.org>
3672
3673         * general.c (syms_of_general): Add defsymbol for Qresource.
3674
3675         * glyphs-msw.c (vars_of_glyphs_mswindows): Rename Qresource to
3676         Qmswindows_resource.
3677         (TopLevel): Rename 'resource image format to 'mswindows_resource.
3678         (mswindows_resource_validate): Rename.
3679         (mswindows_resource_normalize): Rename.
3680         (mswindows_resource_possible_dest_types): Rename.
3681         (mswindows_resource_instantiate): Rename.
3682         (image_instantiator_format_create_glyphs_mswindows): Replace
3683         `resource' with `mswindows.resource'.
3684
3685         * XEmacs 21.0-pre5 is released.
3686
3687 1998-07-10  SL Baur  <steve@altair.xemacs.org>
3688
3689         * mule-wnnfns.c (Fwnn_open): Correctly trap on misdefined Wnn
3690         server type in environment.
3691         Use alloca-ed strings instead of tiny fixed size ones.
3692
3693 1998-07-09  SL Baur  <steve@altair.xemacs.org>
3694
3695         * XEmacs 21.0-pre4 is released.
3696
3697 1998-07-01  James N. Potts  <jnpotts@plutonium.net>
3698
3699         * fileio.c: (expand_file_name): under win32: Don't treat names
3700         as UNC names if a drive letter has been specified.  If a drive
3701         has been specified, strip out extra directory-seperators that
3702         reportedly cause problems under Win95.
3703
3704 1998-07-09  Jonathan Harris  <jhar@tardis.ed.ac.uk>
3705
3706         * windowsnt.h: Define DUMP_SEPARATE_SECTION when building with
3707           MSVC >= 5.0. Put emacs init and zero-init data in a special
3708           section of the executable when this is defined.
3709
3710         * unexnt.c, ntheap.h:
3711           Removed unused find_section() and get_section_size().
3712
3713         * unexnt.c:
3714           Fix up the executable's checksum after dumping otherwise the
3715           profiler complains.
3716           When DUMP_SEPARATE_SECTION is defined, don't need to dump
3717           zero-init data separately from init data. Dump emacs data
3718           into a special section of the executable.
3719           When DUMP_SEPARATE_SECTION not defined, dump .bss up to
3720           my_ebss instead of up to the end of bss.
3721
3722 1998-07-09  Jonathan Harris  <jhar@tardis.ed.ac.uk>
3723
3724         * filelock.c: Removed Vconfigure_lock_directory - already
3725           defined in emacs.c.
3726
3727         * frame-msw.c: Removed Qinitially_unmapped and Qpopup - already
3728           defined in frame.c and general.c respectively.
3729
3730         * glyphs-msw.c: Removed Qresource - already defined in
3731           general.c.
3732
3733 1998-07-05  Oscar Figueiredo  <Oscar.Figueiredo@di.epfl.ch>
3734
3735         * eldap.c (Fldap_search_internal): Docstring fixes
3736
3737 1998-07-04  Jonathan Harris  <jhar@tardis.ed.ac.uk>
3738
3739         * nt.c (init_environment): Removed unused PRELOAD_WINSOCK,
3740           EMACSDOC and TERM variables. Added EMACSDEBUGPATHS,
3741           EMACSPACKAGEPATH and INFOPATH variables.
3742           Removed unused get_emacs_configuration function.
3743
3744         * s/windowsnt.h: Don't define EMACS_CONFIGURATION here because
3745           it is now defined at build-time by the makefile.
3746
3747 1998-07-01  James N. Potts  <jnpotts@plutonium.net>
3748
3749         * fileio.c: (expand_file_name): under win32: Don't treat names as
3750         UNC names if a drive letter has been specified.  If a drive has
3751         been specified, strip out extra directory-seperators that
3752         reportedly cause problems under Win95.
3753
3754 1998-07-05  Andy Piper  <andyp@parallax.co.uk>
3755
3756         * faces.c (complex_vars_of_faces): for the gui-element face don't
3757         fallback to the default face, instead provide reasonable default
3758         fallbacks that were previously hardcoded elsewhere.
3759
3760 1998-07-06  Olivier Galibert  <galibert@pobox.com>
3761
3762         * glyphs-x.c (convert_EImage_to_XImage): Fix pixel writing problem
3763         when the X server endianness is different than the client's one.
3764
3765 1998-06-29  Kyle Jones  <kyle_jones@wonderworks.com>
3766
3767         * eval.c (run_hook_with_args_in_buffer): Check
3768           default (non-buffer-local) value of hook for
3769           nil before treating it as a function.  Don't initialize
3770           the `globals' variable twice.
3771
3772 1998-06-24  Jonathan Harris  <jhar@tardis.ed.ac.uk>
3773
3774         * fileio.c: Don't do directory seperator canonicalisation in
3775           substitute-in-file-name because we don't know that the
3776           filename refers to a local file.
3777
3778 1998-06-24  Adrian Aichner  <aichner@ecf.teradyne.com>
3779
3780         * process-nt.c (nt_create_process): Try appending the standard
3781           executable file extensions to the filename if none supplied.
3782
3783 1998-06-29  SL Baur  <steve@altair.xemacs.org>
3784
3785         * fileio.c (Fsubstitute_in_file_name): Enable double slash notation
3786         for cygwin32.
3787         From Keisuke Mori <ksk@ntts.com>
3788
3789 1998-06-24  Andy Piper  <andyp@parallax.co.uk>
3790
3791         * toolbar-msw.c (mswindows_output_toolbar): only enable masked
3792         images if we have masks. This handles the xbm case (have masks)
3793         and avoids overuse of resources in the xpm case (generally no masks).
3794         Don't output small toolbars.
3795
3796 1998-06-29  Kyle Jones  <kyle_jones@wonderworks.com>
3797
3798         * eval.c (run_hook_with_args_in_buffer): Don't treat
3799           the default value of a buffer local hook as a list of
3800           hooks unless it is both a cons and the car of that cons
3801           is not Qlambda.
3802
3803 1998-06-29  SL Baur  <steve@altair.xemacs.org>
3804
3805         * extents.c: Email address for Ben Wing is ben@xemacs.org.
3806         * process-unix.c: Ditto.
3807         * mule-coding.h: Ditto.
3808         * mule-coding.c: Ditto.
3809         * mule-charset.c: Ditto.
3810         * mule-charset.h: Ditto.
3811         * file-coding.c: Ditto.
3812         * file-coding.h: Ditto.
3813
3814 1998-06-22  Jonathan Harris  <jhar@tardis.ed.ac.uk>
3815
3816         * event-msw.c: Guard against recursion when freeing
3817           FRAME_MSWINDOWS_TARGET_RECT struture in WM_SIZE processing.
3818
3819         * frame-msw.c: Don't set WS_VISIBLE attribute on first frame.
3820           Call ShowWindow twice in init_frame_3 to get round runemacs
3821           weirdness.
3822
3823 1998-06-27  Hrvoje Niksic  <hniksic@srce.hr>
3824
3825         * scrollbar.c (vertical_scrollbar_changed_in_window): Ditto.
3826
3827         * winslots.h: Rename.
3828
3829         * window.c (specifier_vars_of_window): Renamed
3830         vertical-divider-draggable-p to vertical-divider-always-visible-p,
3831         as suggested by Ben Wing.
3832         (specifier_vars_of_window): Fix docstrings.
3833
3834 1998-06-22  Michael Sperber [Mr. Preprocessor]  <sperber@informatik.uni-tuebingen.de>
3835
3836         * unexaix.c: Line number information works correctly again.
3837
3838 1998-06-22  Olivier Galibert  <galibert@pobox.com>
3839
3840         * emacs.c (__sti__iflPNGFile_c___): Added. See comment. Cry.
3841
3842 1998-06-21  Martin Buchholz  <martin@xemacs.org>
3843
3844         * editfns.c (get_home_directory): ANSIfy.
3845         XEmacs is compilable under C *and* C++.
3846         It's XEmacs, not Xemacs!
3847
3848 1998-06-19  Jonathan Harris  <jhar@tardis.ed.ac.uk>
3849
3850         * console-msw.h: added a list of fonts to device data.
3851
3852         * device-msw.c: enumerate list of available fonts in
3853           mswindows_init_device. Free list in mswindows_delete_device.
3854
3855         * objects-msw.c: Added helper function match_font used by
3856           mswindows_initialize_font_instance and mswindows_list_fonts.
3857           Allow a charset to be specified in a font string, even if
3858           previous fields havn't been specified.
3859
3860 1998-06-23  Greg Klanderman  <greg@alphatech.com>
3861
3862         * indent.c (column_at_point): column cache bugfix.
3863         Set last_known_column_point to the buffer position for
3864         which the column was requested, not buffer's point.
3865
3866         * redisplay.c (decode_mode_spec): for current-column, show
3867         window's point's column, not buffer's point's column.
3868
3869 1998-06-23  Andy Piper  <andyp@parallax.co.uk>
3870
3871         * menubar-msw.c (mswindows_handle_wm_command): use
3872         enqueue_misc_user event rather than
3873         mswindows_enqueue_msic_user_event to fix customize problems. Add some
3874         checks that X does.
3875
3876         * console-msw.h: declare mswindows_enqueue_magic_event.
3877
3878         * event-msw.c (mswindows_enqueue_magic_event): make global.
3879
3880 1998-06-24  Hrvoje Niksic  <hniksic@srce.hr>
3881
3882         * line-number.c (LINE_NUMBER_FAR): Reverted to 16384.
3883         (buffer_line_number): Use EMACS_INT_MAX instead of random LOTS.
3884         (add_position_to_cache): Use EMACS_INT instead of int.
3885
3886 1998-06-21  Olivier Galibert  <galibert@pobox.com>
3887
3888         * lisp-disunion.h (XMARKBIT): Have XMARKBIT return something
3889         suitable for an int used as a boolean (btw, C sucks.).
3890
3891 1998-06-18  Andy Piper  <andyp@parallax.co.uk>
3892
3893         * object-msw.c: remove warnings.
3894
3895         * device-msw.c: #define wrongly named cygwin structure elements.
3896
3897         * s/cygwin32.h: define DEMI_BOLD
3898
3899 1998-06-19  Jonathan Harris  <jhar@tardis.ed.ac.uk>
3900
3901         * redisplay-msw.c: new function mswindows_apply_face_effects.
3902           This is called by output_string and output_cursor to display
3903           underline and strikeout on faces.
3904
3905 1998-06-19  Jonathan Harris  <jhar@tardis.ed.ac.uk>
3906
3907         * console-msw.h: added a list of fonts to device data.
3908
3909         * device-msw.c: enumerate list of available fonts in
3910           mswindows_init_device. Free list in mswindows_delete_device.
3911
3912         * objects-msw.c: Added helper function match_font used by
3913           mswindows_initialize_font_instance and mswindows_list_fonts.
3914           Allow a charset to be specified in a font string, even if
3915           previous fields havn't been specified.
3916
3917 1998-06-15  Jonathan Harris  <jhar@tardis.ed.ac.uk>
3918
3919         * objects-msw.c:
3920           Removed compilation warnings from mswindows_string_to_color.
3921           mswindows_list_fonts returns a more general bogus font.
3922           New lisp-visible function mswindows-color-list.
3923
3924 1998-06-19  David Bush <david.bush@adn.alcatel.com>
3925
3926         * editfns.c (Fuser_login_name): Modify to user new function
3927         user_login_name.
3928         (user_login_name): C only function to avoid Lisp object overhead
3929         Returns "unknown" instead of nil in Cygwin environment
3930
3931         * fileio.c (Fexpand_file_name): Treat "~" and "~user" as
3932         equivalent for current user in Cygwin environment. Use new
3933         function user_login_name to get username.
3934
3935         * lisp.h: Declare user_login_name
3936
3937 1998-06-18  Michael Sperber [Mr. Preprocessor]  <sperber@informatik.uni-tuebingen.de>
3938
3939         * unexaix.c (make_hdr): Fixed bias computations so debugging info
3940         works again.
3941         Some other insignificant nitpicks.
3942
3943 1998-06-18  Andy Piper  <andyp@parallax.co.uk>
3944
3945         * toolbar-msw.c (mswindows_output_toolbar): specify ILC_MASK when
3946         creating the image list and make sure he bk color is transparent.
3947
3948 1998-06-18  Jan Vroonhof  <vroonhof@math.ethz.ch>
3949
3950         * event-Xt.c (emacs_Xt_remove_timeout): Also remove timeout from
3951         completed_timeouts. The timer could have expired.
3952
3953 1998-06-17  Andy Piper  <andyp@parallax.co.uk>
3954
3955         * console-msw.h: move XEMACS_RECT_WH inside frame
3956         parameters. define macors to access it.
3957
3958         * frame-msw.c (mswindows_init_frame_1): use new target_rect
3959         parameter to intialise desired sizing. (mswindows_init_frame_2):
3960         enable and size the frame to something sensible when we get
3961         here. (mswindows_set_frame_properites): use new
3962         mswindows_size_frame_internal function and size frame if frame
3963         parameters not just if init is finished - WM_SIZE happens too
3964         early for some specs. (mswindows_size_frame_internal): new
3965         function abstracted from mswindows_set_frame_properties.
3966         (Vmswindows_use_system_frame_size_defaults):
3967         new variable controls whether to allow the system to pick frame
3968         size defaults, defaults to nil.
3969
3970         * event-msw.c: in WM_SIZE use mswindows_size_frame_internal rather
3971         than duplicated code.
3972
3973 1998-06-15  Colin Rafferty <colin@xemacs.org>
3974
3975         * Makefile.in.in: Made EXTW_LINK expand properly.
3976
3977 1998-06-12  Martin Buchholz  <martin@xemacs.org>
3978
3979         * redisplay.c (vars_of_redisplay): default value of
3980         column-number-start-at-one should be NIL!
3981
3982 1998-06-11  Martin Buchholz  <martin@xemacs.org>
3983
3984         * casefiddle.c:
3985         (upcase-initials "fooBar") ==> "FooBar" instead of "Foobar"
3986
3987 1998-06-05  Hrvoje Niksic  <hniksic@srce.hr>
3988
3989         * eldap.c (Fldap_search_internal): Use build_ext_string instead of
3990         build_string to avoid crashes under Mule.
3991
3992 1998-06-13  Andy Piper  <andyp@parallax.co.uk>
3993
3994         * ntplay.c (play_sound_data_1): don't delete the sound data until
3995         the next sound is played and the previous one finished.
3996
3997 1998-06-10  Samuel Mikes  <smikes@alumni.hmc.edu>
3998
3999         * fileio.c (directory-sep-char): Escape backslashes.
4000
4001 1998-06-10  Hrvoje Niksic  <hniksic@srce.hr>
4002
4003         * event-stream.c: Fix docstring reference.
4004
4005 1998-06-12  Hrvoje Niksic  <hniksic@srce.hr>
4006
4007         * alloc.c (make_float): Remove useless initialization of `next'
4008         field.
4009         (make_pure_float): Ditto.
4010
4011         * lisp.h (struct Lisp_Float): Rename `next' to `__unused__next'.
4012
4013 1998-06-08  Kirill M. Katsnelson  <kkm@kis.ru>
4014
4015         * fileio.c (Fmake_directory_internal): Remove conditionals
4016         on WINDOWSNT when calling mkdir.
4017
4018         * ntproc.c: Deleted the following unused functions:
4019         register_child, reap_subprocess, sys_wait.
4020
4021         * nt.c (sys_rename): Ifzeroed this implementation.
4022         Deleted the following unused functions:
4023         sys_access, sys_chdir, sys_chmod, sys_creat, sys_link, sys_mkdir,
4024         sys_mktemp, sys_rmdir, sys_unlink, sys_close, sys_dup, sys_dup2,
4025         sys_read, sys_write.
4026         Merger sys_fopen and sys_open with sysdep.c implementation.
4027
4028         * sysdep.c: Removed MS-DOS code.
4029         (sys_rename): Deal with Microsoft rename weirdness.
4030         (sys_open): Implemented for Windows.
4031         (sys_fopen): Ditto.
4032         (sys_mkdir): Ditto.
4033
4034 1998-06-08  Kirill M. Katsnelson  <kkm@kis.ru>
4035
4036         * buffer.c (complex_vars_of_buffer): Removed %t description from
4037         the docstring.
4038
4039 1998-06-04  Rick Rankin  <Rick_Rankin-P15254@email.mot.com>
4040
4041         * scrollbar-msw.c: initialize the cbSize element of the
4042         SCROLLINFO struct before calling SetScrollInfo. WinNT seems
4043         to ignore the value of cbSize, but Win95 (and I presume Win98)
4044         appear to want it set to sizeof(SCROLLINFO).
4045
4046 1998-06-04  Kirill M. Katsnelson  <kkm@kis.ru>
4047
4048         * event-stream.c: Defined Qcancel_mode_internal.
4049         (syms_of_event_stream): defsymbol'ed it.
4050
4051         * events.h: Externed it.
4052
4053         * event-msw.c (mswindows_wnd_proc, WM_CANCELMODE): Added this handler.
4054
4055 1998-06-04  Oliver Graf <ograf@fga.de>
4056
4057         * frame-x.c (x_cde_destroy_callback): free the data
4058         (cde-start-drag-internal) corrected root position, 21.1 needs this
4059         hardcoded in Button events
4060         (offix-start-drag-internal) corrected root position
4061
4062 1998-06-03  Kirill M. Katsnelson  <kkm@kis.ru>
4063
4064         * process-nt.c (signal_cannot_launch): Use signal_simple_error()
4065         instead of error().
4066
4067 1998-06-03  Kirill M. Katsnelson  <kkm@kis.ru>
4068
4069         * dialog-msw.c (button_width): Removed `inline' from the function
4070         declaration.
4071
4072 1998-06-03  Rick Rankin  <Rick_Rankin-P15254@email.mot.com>
4073
4074         * frame-msw.c: add WS_VISIBLE flag to the first frame created.
4075         Note that adding this flag to subsequent frames causes problems.
4076
4077 1998-06-03  Gunnar Evermann  <Gunnar.Evermann@nats.informatik.uni-hamburg.de>
4078
4079         * glyphs-eimage.c (png_instantiate) move 'struct
4080         png_memory_storage tbr' out of nested block to avoid dangling
4081         reference
4082
4083 1998-06-02  Andy Piper  <andyp@parallax.co.uk>
4084
4085         * faces.h:
4086         * faces.c: rename 3d-object -> gui-element. add toolbar face which
4087         inherits from gui-element.
4088
4089         * glyphs-msw.c: use DIBitmaps for xbm bitmaps to be consistent
4090         with existing code, generate masks correctly.
4091
4092 1998-06-03  P. E. Jareth Hein  <jareth@camelot-soft.com>
4093
4094         * glyphs-eimage.c: Changed included header for gifs to use
4095         Gifreader instead of giflib.
4096
4097         * glyphs-x.c: removed the image-related functions that were
4098         moved into glyphs-eimage.
4099
4100 1998-06-02  David Bush  <david.bush@adnb.alcatel.com>
4101
4102         * glyphs.c (bitmap_to_lisp_data) Define XFree to be free
4103         if built without X Windows support.
4104
4105 1998-06-02  Hrvoje Niksic  <hniksic@srce.hr>
4106
4107         * fns.c (Fconcat): Synch docstring with new reality.
4108
4109 1998-06-03  SL Baur  <steve@altair.xemacs.org>
4110
4111         * frame.c: Remove reference to msdos.h (which is going away).
4112         Suggested by Hrvoje Niksic and Kirill Katsnelson.
4113
4114 1998-06-02  P. E. Jareth Hein  <jareth@camelot-soft.com>
4115
4116         * glyphs-eimage.c (jpeg_instantiate): Fix handling of
4117         grayscale images/
4118
4119
4120 1998-05-30  Kirill M. Katsnelson  <kkm@kis.ru>
4121
4122         * events.h: Fixed commentary about misc-user scrollbar events.
4123
4124         * scrollbar-x.c (x_update_vertical_scrollbar_callback): Use frame
4125         object as an event channel, instead of window object.
4126         (x_update_horizontal_scrollbar_callback): Ditto.
4127
4128 1998-05-29  Andy Piper  <andyp@parallax.co.uk>
4129
4130         * ntplay.c (play_sound_data_1) new function. convert alloca data
4131         to malloc if necessary.
4132         (play_sound_file): if the file is not in our path then convert to
4133         data and play.
4134
4135 1998-06-01  SL Baur  <steve@altair.xemacs.org>
4136
4137         * mule-mcpath.c (mc_chdir): Reverse parameters in call to memcpy.
4138         * msdos.c (Frecent_doskeys): Ditto.
4139
4140         * unexalpha.c (unexec): Reverse parameters in call to memcpy.
4141         Suggested by Reggie Perry <perry@zso.dec.com>
4142
4143         * buffer.h: Eliminate size in declaration.
4144
4145 1998-06-01  Olivier Galibert  <galibert@pobox.com>
4146
4147         * unexelfsgi.c (unexec): Cleanup n/nn and remove useless kludge.
4148
4149 1998-06-01  Kirill M. Katsnelson  <kkm@kis.ru>
4150
4151         * gui.c (gui_item_init): Changed the default value for config member
4152         from Qunbound to Qnil.
4153
4154 1998-06-01  Greg Klanderman  <greg@alphatech.com>
4155
4156         * indent.c (vmotion_pixels): Don't #define abs().
4157
4158 1998-05-30  Kirill M. Katsnelson  <kkm@kis.ru>
4159
4160         * s/windowsnt.h: Defined popen and pclose to be _popen and _pclose
4161         respectively.
4162
4163 1998-05-30  Andy Piper  <andyp@parallax.co.uk>
4164
4165         * glyphs.h: add xbm declarations.
4166
4167         * console.h: add xbm_instantiate_method device method.
4168
4169         * glyphs.c (check_valid_xbm_inline) (xbm_validate)
4170         (bitmap_to_lisp_data) (xbm_mask_file_munging) (xbm_normalize)
4171         (xbm_possible_dest_types): moved here from glyphs-x.c. use
4172         locate_pixmap_file device method and read_bitmap_data_from_file
4173         instead of XmuReadBitmapDataFromFile.
4174         (xbm_instatntiate): make a device method.
4175
4176         * glyphs-x.c: see glyphs.c changes. (read_bitmap_data_from_file)
4177         new function that just calls XmuReadBitmapDataFromFile.
4178         (x_xbm_instatntiate): device method from xbm_instantiate.
4179
4180         * glyphs-msw.c (read_bitmap_data) (NextInt)
4181         (read_bitmap_data_from_file): new functions copied from Xmu
4182         sources.
4183         (xbm_create_bitmap_from_data) from Ben <ben@666.com> convert
4184         inline data to an mswindows bitmap.
4185         (init_image_instance_from_xbm_inline) (xbm_instantiate_1)
4186         (mswindows_xbm_instantiate): mswindows-ized versions of the X
4187         functions.
4188
4189 1998-05-30  Kirill M. Katsnelson  <kkm@kis.ru>
4190
4191         * window.c (specifier_vars_of_window): Renamed `has_modeline-p' to
4192         `modeline-visible-p'.
4193         Declared specifier lisp variables at the beginning oh the file
4194         as static.
4195
4196         * procimpl.h (struct process_methods): Changed semantics of
4197         create_process method so it accepts lisp strings instead of
4198         char pointers.
4199
4200         * process.c (Fstart_process_internal): Moved building of
4201         unix style argv from here to process-unix.c, ...
4202
4203         * process-unix.c (unix_create_process): ... right here.
4204
4205         * process-nt.c (nt_create_process): Changed this function to
4206         support new semantics, so avoided a GC problem.
4207
4208         * events.c (Fmake_event): Document misc-user events properties.
4209         (Fmake_event): Do not allow arbitrary objects for channel property
4210         of misc-user events.
4211         (Fmake_event): Change misc-user event validation: it is function
4212         which is required, not button.
4213
4214         * event-msw.c (mswindows_user_event_p): Recognize misc user events as
4215         user events.
4216         (mswindows_enqueue_misc_user_event): Added function.
4217         (mswindows_bump_queue): Removed function.
4218         (mswindows_enqueue_magic_event): Support NULL HWND parameter.
4219         (mswindows_wnd_proc, WM_CLOSE): Use mswindows_enqueue_misc_user_event().
4220         (mswindows_wnd_proc, WM_EXITSIZEMOVE): Ditto.
4221         (emacs_mswindows_handle_magic_event): Handle XM_BUMPQUEUE, by doing
4222         really nothing, which is my personal favorite thing.
4223
4224         * console-msw.h: Removed prototype for mswindows_bump_queue().
4225         Added prototype for mswindows_enqueue_misc_user_event().
4226
4227         * menubar-msw.c (mswindows_handle_wm_command): Use
4228         mswindows_enqueue_misc_user_event().
4229
4230         * toolbar-msw.c (mswindows_handle_toolbar_wm_command): Ditto.
4231
4232         * dialog-msw.c (dialog_proc): Ditto.
4233
4234         * scrollbar-msw.c (mswindows_handle_scrollbar_event): Ditto.
4235          (mswindows_handle_scrollbar_event): Use frame, not window, for misc
4236         user events channel.
4237
4238 1998-05-29  Greg Klanderman  <greg@alphatech.com>
4239
4240         * window.c (Fwindow_displayed_text_pixel_height): was relying on
4241         incorrect semantics of vmotion_pixels which has been fixed.  don't
4242         use it anymore as it can't easily be used.
4243
4244         * indent.c (vmotion_pixels): fix off by one bug moving up.  also
4245         the motion was reported incorrectly if you tried to go past end of
4246         buffer.
4247
4248 1998-05-30  Kirill M. Katsnelson  <kkm@kis.ru>
4249
4250         * toolbar.h: Removed misleading commentary, as Martin suggested.
4251
4252 1998-05-30  Kirill M. Katsnelson  <kkm@kis.ru>
4253
4254         * lisp.h: Extern Qactivate_menubar_hook.
4255
4256         * menubar-msw.c (unsafe_handle_wm_initmenu_1): Pass correct value to
4257         run_hook ().
4258
4259 1998-05-29  Andy Piper  <andyp@parallax.co.uk>
4260
4261         * glyphs-msw.c: use BPLINE macro.
4262
4263         * select-msw.c (mswindows-selection-exists-p)
4264         (mswindows-delete-selection): doc string fixes.
4265
4266         * toolbar-msw.c (mswindows_output_toolbar): make disabled buttons
4267         unpressable. warning elimination.
4268
4269 1998-05-28  Martin Buchholz  <martin@xemacs.org>
4270
4271         * alloc.c (dbg_constants):
4272         * dbxrc:
4273         * gdbinit:
4274         Remove toolbar_data debugging code, since that lrecord has
4275         also been removed.
4276
4277 Wed May 27, 1998  Darryl Okahata  <darrylo@sr.hp.com>
4278
4279         * alloc.c: zap cached value of (user-home-directory), so that
4280           it's not undumped.
4281
4282         * buffer.c: From init_buffer(), separated out code that
4283           determined the initial directory for the *scratch* buffer, and
4284           put them into a function called "init_initial_directory()".
4285           The initial directory is now available as a global "char *"
4286           called initial_directory.
4287
4288         * buffer.h: Added extern entries for initial_directory[] and
4289           init_initial_directory().
4290
4291         * editfns.c: added new elisp function "user-home-directory",
4292         which basically returns getenv("HOME"), but attempts to use
4293         other values if $HOME isn't set.This may have to be tweaked in
4294         the future as, under Unix, "/" is used if $HOME isn't set (this
4295         probably should be set to the current directory).  To support
4296         this, a new C function, "get_home_directory()", now exists,
4297         which returns the "home directory", as a "char *" string.
4298
4299         * emacs.c: Rearrange NT initialization order so that
4300         environment/registry variables will be properly entered into
4301         Vprocess_enviroment.
4302
4303         * fileio.c: replaced egetenv("HOME") with calls to the new
4304           get_home_directory().
4305
4306         * lisp.h: Added function prototypes for uncache_home_directory()
4307           and get_home_directory(), along with lisp prototypes for
4308           Fuser_home_directory() and friends.
4309
4310         * nt.c: replaced getenv("HOME") with calls to the new
4311           get_home_directory().
4312
4313         * sysfile.h: for WINDOWSNT, #include <direct.h>, to suppress
4314           warnings about getcwd(), etc. not having prototypes.
4315
4316 1998-05-28  Kirill M. Katsnelson  <kkm@kis.ru>
4317
4318         * process-nt.c (send_signal): Emulate SIGHUP.
4319         (validate_signal_number): Ditto.
4320
4321         * event-msw.c (mswindows_wnd_proc, WM_KEYDOWN): Unconditionally
4322         remove MOD_SHIFT from ASCII characters.
4323         (mswindows_wnd_proc, WM_KEYDOWN): Do not activate the menubar when
4324         F10 is pressed.
4325
4326 1998-05-24  Oliver Graf <ograf@fga.de>
4327
4328         * frame-x.c (cde-start-drag-internal): added filename and multi-
4329         data transfers
4330         (x_cde_convert_callback) dito
4331
4332 1998-05-26  Oliver Graf <ograf@fga.de>
4333
4334         * frame-x.c: include event-mod.h also with CDE
4335         (x_cde_convert_callback) made the thing working
4336         (cde-start-drag-internal) also debugging
4337
4338 1998-05-25  Hans Guenter Weigand  <hgweigand@wiesbaden.netsurf.de>
4339
4340         * m/sparc.h:
4341         * getloadavg.c:
4342         * malloc.c:
4343         * unexec.c:
4344         * mem-limits.h:
4345           - add __OpenBSD__ where __NetBSD__ was found.
4346           - TODO: replace platform-specific conditional compilation by
4347             feature tests in configure.in.
4348
4349 1998-05-15  Greg Klanderman  <greg@alphatech.com>
4350
4351         * window.c (Fwindow_displayed_text_pixel_height): New function.
4352         (syms_of_window): DEFSUBR it.
4353
4354         * indent.c (Fvertical_motion_pixels): New function - request
4355         movement in pixels.
4356         (vmotion_pixels): helper.
4357         (syms_of_indent): DEFSUBR.
4358         * lisp.h: declaration for vmotion_pixels().
4359
4360         * indent.c (Fvertical_motion): Add optional third argument PIXELS,
4361         to request returning motion in pixels.
4362         (Fvertical_motion_pixels): Remove, functionality merged into
4363         Fvertical_motion.
4364         * window.c (window_scroll): call Fvertical_motion with 3 arguments.
4365         (Fmove_to_window_line): ditto.
4366         * lisp.h: Change declaration for Fvertical_motion.
4367
4368         * window.c: rename window-text-pixel-{height,width,edges} to
4369         window-text-area-pixel-*.
4370
4371 1998-05-26  Gunnar Evermann  <Gunnar.Evermann@nats.informatik.uni-hamburg.de>
4372
4373         * tooltalk.c (vars_of_tooltalk) added staticpro for
4374         Tooltalk_Message_plist_str and Tooltalk_Pattern_plist_str
4375
4376 1998-05-27  Andy Piper  <andyp@parallax.co.uk>
4377
4378         * faces.c: create a new 3d_object_face, make modeline and
4379         vertical_divider faces fallback to this rather than the default.
4380
4381 1998-05-21  Andy Piper  <andyp@parallax.co.uk>
4382
4383         * s/cygwin32.h: define charsets for cygwin.
4384
4385 1998-05-25  Andy Piper  <andyp@parallax.co.uk>
4386
4387         * toolbar-msw.c (mswindows_output_toolbar): fix up button sizes
4388         and coordinates. resize bitmaps if we have already settled on a
4389         different size.
4390
4391         * glyphs-msw.c (xpm_to_eimage): add ';' for mswindows compiler.
4392
4393 1998-05-25  Hrvoje Niksic  <hniksic@srce.hr>
4394
4395         * toolbar-msw.c (mswindows_handle_toolbar_wm_command): Ditto.
4396
4397         * menubar-msw.c (mswindows_handle_wm_command): Ditto.
4398
4399         * gui.h: Ditto.
4400
4401         * gui-x.c (popup_selection_callback): Ditto.
4402
4403         * dialog-msw.c (dialog_proc): get_callback -> get_gui_callback.
4404
4405         * gui.c (get_callback): Renamed to get_gui_callback.
4406
4407 1998-05-17  Martin Buchholz  <martin@xemacs.org>
4408
4409         * glyphs.h: order rearrangement.
4410
4411         * device-tty.c (tty_asynch_device_change): Warning suppression.
4412         * device-x.c (x_device_system_metrics): Warning suppression.
4413         Make Doc strings consistent with coding standards.
4414
4415 1998-05-24  Martin Buchholz  <martin@xemacs.org>
4416
4417         * general.c: multiple definition of `Qicon'.  general.c seems
4418           like a good home for Qicon.
4419
4420 1998-05-20  Kirill M. Katsnelson  <kkm@kis.ru>
4421
4422         * This patch is to fix compilation warnings under Windows.
4423
4424         * s/windowsnt.h: Encapsulate getpid with sys_getpid.
4425         Added prototypes for FSF inherited functions, with which XEmacs is
4426         sprinkled thoroughly.
4427         Removed some #if 0 code. Bracketed some more definitions, probably
4428         related to Visual C versions prior to 4 (we do not support them).
4429
4430         * sysfloat.h (logb): Finally, get logb() prototyped.
4431
4432         * sysfile.h: Added Windows specific includes.
4433         Removed old Windows specific code bracketed with #if 0.
4434
4435         * sysdep.h: Added prototype for xrealpath().
4436
4437         * sysdep.c (sys_getpid): Added function, to support '95 negative pids.
4438
4439         * symsinit.h: Added prototypes for syms_of_dired_mswindows,
4440         vars_of_dired_mswindows and init_ntproc (Grrr).
4441
4442         * realpath.c: Added Windows specific include files.
4443         (xrealpath): Conditionalized declaration of some auto variables on
4444         S_IFLNK, to avoid warnings.
4445
4446         * ntproc.c: Disabled some compiler warnings. This file is going to
4447         die, so I have not cleaned it up much.
4448         (set_process_dir): Const parameter.
4449         (Fwin32_short_file_name): Down CHECK_* macros to one argument.
4450         (Fwin32_long_file_name): Ditto.
4451         (Fwin32_set_process_priority): Ditto. Why didn't I remove these
4452         three functions?
4453
4454         * nt.h: Added prototypes for set_process_dir and convert_time.
4455
4456         * nt.c: More include files.
4457         (getpwnam): Consted char* argument.
4458         (get_emacs_configuration): Const return value.
4459         (opendir): Const argument.
4460         (stat): Casted converstion long->short.
4461         (stat): Removed ad hoc and questionable support for non-MSC compile.
4462         (sys_pipe): Removed unused auto variable.
4463         (_sys_read_ahead): Removed calls to DebPrint.
4464         (sys_read): Ditto, in 2 places.
4465         (term_ntproc): Added unused int parameter to signal handler, to
4466         avoid a warning when compiling a call to signal().
4467         (msw_sigset): Properly return old signandler or NULL instead of void.
4468
4469         * floatfns.c (Flogb): Casted arguments to unary minus to signed.
4470
4471         * gmalloc.c (morecore): Ditto.
4472         (_free_internal): Ditto.
4473
4474         * lread.c (parse_integer): Ditto.
4475
4476         * dired-msw.c: Added several include files.
4477
4478         * cmdloop.c (Fcommand_loop_1): Added Microsoft C to the Big List
4479         of Compilers to Shut Up.
4480
4481         * callproc.c: Added #includes to suppress warnings under Windows.
4482         (init_callproc): Removed #if0'ed code and unused variables.
4483
4484 1998-05-25  Andy Piper  <andyp@parallax.co.uk>
4485
4486         * device-msw.c (mswindows_device_system_metrics): do planes in a
4487         way consistent with X.
4488
4489         * glyphs-msw.c (mswindows_initialize_image_instance_mask): don't
4490         use SetPixel, use DIBits functions.
4491         (xpm_to_eimage): frob colors more closely like xpm deos.
4492
4493         * toolbar-msw.c: only resize bitmaps when shrinking. Adjust look
4494         to be closer to X version.
4495
4496         * event-msw.c: use tooltip string directly.
4497
4498         * redisplay-msw.c: reinstate Kirill's bg pixmap change.
4499
4500         * objects-msw.c: frob rgb colors that only Kyle uses.
4501
4502         * dialog-msw.c (button_width): INLINE -> inline.
4503
4504 1998-05-23  SL Baur  <steve@altair.xemacs.org>
4505
4506         * getloadavg.c (getloadavg): Fix typo.
4507
4508 1998-05-23  Kirill M. Katsnelson  <kkm@kis.ru>
4509
4510         * objects-msw.c (mswindows_initialize_font_instance): Added support
4511         for font character sets.
4512         Replaced 'XXX' with '####' in comments throughout the file.
4513
4514 1998-05-23  Kirill M. Katsnelson  <kkm@kis.ru>
4515
4516         * emacs.c (main_1): Added calls to vars_of_dialog_mswindows() and
4517         console_type_create_dialog_mswindows(), to initialize Windows dialog
4518         support.
4519
4520         * symsinit.h: Prototyped the above functions.
4521
4522         * dialog-x.c (x_popup_dialog_box): Moved dialog descriptor consistency
4523         checks to dialog.c...
4524
4525         * dialog.c (Fpopup_dialog_box): ...right here. Added more checks: a
4526         device must support dialog boxes, and the descriptor must supply at
4527         least one button.
4528
4529         * dialog-msw.c: New file, dialogs for Windows.
4530
4531 1998-05-21  Oscar Figueiredo  <Oscar.Figueiredo@di.epfl.ch>
4532
4533         * eldap.c (ldap_search_unwind): Return Qnil instead of nothing
4534         (Fldap_search_internal): Removed unused variable `err'
4535
4536         * eldap.h: Moved Lisp_LDAP declaration here instead of using a
4537         forward declaration
4538
4539 1998-05-17  Martin Buchholz  <martin@xemacs.org>
4540
4541         * eldap.h: eldap.[ch] should never be used unless HAVE_LDAP is
4542         defined.  Therefore there is no need to handle the case when
4543         HAVE_LDAP is undefined.  Similarily, there is no reason to have
4544         any code wrapped within `#ifdef emacs', since this code is only
4545         useful within an emacs.  This simplifies the code significantly.
4546
4547         * inline.c: Include eldap.h only if HAVE_LDAP.
4548         * inline.c: Don't bother including TT_C_H_PATH, since tooltalk.h
4549         already does that.
4550
4551 1998-05-21  Kirill M. Katsnelson  <kkm@kis.ru>
4552
4553         * unexnt.c (copy_executable_and_dump_data_section): Suppress
4554         printing dump stats when building without DEBUG_XEMACS.
4555         (dump_bss_and_heap): Ditto.
4556
4557 1998-05-21  Andy Piper  <andyp@parallax.co.uk>
4558
4559         * gnuclient.c: don't suppress window system if there is no display
4560         and we are running under mswindows. send 'mswindows device type if
4561         we are in this situation.
4562
4563 1998-05-20  Andy Piper  <andyp@parallax.co.uk>
4564
4565         * general.c:
4566         * lisp.h: Qbitmap, Qcursor, Qicon moved here from glyphs-msw.c.
4567
4568         * glyphs-msw.c: change cursor imgae type name to resource. Fix
4569         some nits.
4570
4571 1998-05-20  Kirill M. Katsnelson  <kkm@kis.ru>
4572
4573         * EmacsFrame.c (Xt_StringToScrollBarPlacement):  Added support for
4574         {top,bottom}-{left,right} values in addition to
4575         {top,bottom}_{left,right}.
4576
4577 1998-05-18  Hrvoje Niksic  <hniksic@srce.hr>
4578
4579         * fileio.c (Fmake_temp_name): Remove unreached code.
4580
4581         * process-nt.c (validate_signal_number): Use
4582         signal_simple_error().
4583
4584 1998-05-19  Martin Buchholz  <martin@xemacs.org>
4585
4586         * unexhp9k800.c:
4587         * sound.c (vars_of_sound):
4588         * sysdep.c (reset_sigio_on_device):
4589         * window.c (window_bottom_gutter_height):
4590         unexhp9k800.c:258: warning: implicit declaration of function
4591         `calculate_checksum'
4592         sound.c:604: warning: implicit declaration of function `vars_of_hpplay'
4593         sysdep.c:1012: warning: unused variable `owner'
4594         window.c:993: warning: `window_right_toolbar_width' defined but not used
4595
4596 1998-05-19  Andy Piper  <andyp@parallax.co.uk>
4597
4598         * glyphs-msw.c (mswindows_create_resized_mask)
4599         (mswindows_create_resized_bitmap): new funnctions split out from
4600         mswindows_resize_dibitmap_instance.
4601
4602         * glyphs-msw.h: declare new resize functions.
4603
4604         * toolbar-msw.c (mswindows_output_toolbar): use new bitmap resize
4605         functions so that the original bitmaps are preserved.
4606
4607         * sheap.c: fixup static heap exhausted error to avoid FAQs.
4608
4609         * redisplay-msw.c (mswindows_output_blank): fixup brush from bg
4610         color if we are trying to output 0 depth bg pixmap.
4611
4612         * scrollbar-msw.c: warning elimination.
4613
4614 1998-05-18  Martin Buchholz  <martin@xemacs.org>
4615
4616         * frame-x.c (x_update_frame_external_traits): Start preprocessor
4617         directives in column 1.
4618
4619         * search.c (skip_chars): Avoid using xzero with arrays, since some
4620         compilers get confused by the construct &array.
4621
4622 1998-05-18  Kirill M. Katsnelson  <kkm@kis.ru>
4623
4624         * objects-msw.h:
4625         * objects-msw.c: Changed the charset value for a new font from
4626         "don't care" to "ansi".
4627
4628         * glyphs-msw.c (convert_EImage_to_DIBitmap): Warnings fix.
4629
4630 1998-05-18  Kirill M. Katsnelson  <kkm@kis.ru>
4631
4632         * event-msw.c (mswindows_wnd_proc, WM_KEYDOWN): Do not clear shift
4633         modifier on control chars.
4634         Use IsCharAlpha() instead of isaplha().
4635
4636 1998-05-19  Kazuyuki IENAGA <ienaga@jsys.co.jp>
4637
4638         * s/freebsd.h: FreeBSD 2.2.6 now supports setlocale(LC_ALL, "").
4639
4640 1998-05-18  Kirill M. Katsnelson  <kkm@kis.ru>
4641
4642         * objects-msw.c (mswindows_initialize_font_instance): Use ANSI
4643         charset when creating font.
4644         (mswindows_initialize_color_instance): Do not create brush along
4645         with a color.
4646         (mswindows_finalize_color_instance): Do not delete it then.
4647
4648         * objects-msw.h (struct mswindows_color_instance_data): Removed
4649         brush slot, and corresponding accessor macro.
4650
4651 1998-05-18  Kirill M. Katsnelson  <kkm@kis.ru>
4652
4653         * toolbar.c: Removed toolbar_data lrecord implementation.
4654         (mark_frame_toolbar_buttons_dirty): Replase usage of toolbar_data
4655         with toolbar_buttons (via FRAME_TOOLBAR_BUTTONS).
4656         (compute_frame_toolbar_buttons): Ditto.
4657         (CHECK_TOOLBAR): Ditto.
4658         (set_frame_toolbar): Removed allocation of toolbar_data lrecord.
4659         (update_frame_toolbars): Do not check for changed buffer
4660         here. Toolbar information is provided by cached specs in
4661         windows. The check for buffer is eliminated becuase toolbars are
4662         marked changed in set_frame_selected_window() in frame.c
4663         Added check for changed toolbars geometry.
4664         (compute_frame_toolbars_data): Removed unused second parameter;
4665         Adjusted callers of this static function throughout the file.
4666         (init_frame_toolbars): Initialize current_toolbar_size.
4667         (update_frame_toolbars): Use DEVICE_SUPPORTS_TOOLBARS_P instead of
4668         what is its current expansion, for clarity.
4669         (init_frame_toolbars): Ditto.
4670         (init_device_toolbars): Ditto.
4671         (init_global_toolbars): Ditto.
4672
4673         * toolbar.h: Removed definition of toolbar_data lrecord.
4674         Added accessor macros FRAME_TOOLBAR_BUTTONS and
4675         FRAME_CURRENT_TOOLBAR_SIZE.
4676         Added macro DEVICE_SUPPORTS_TOOLBARS_P.
4677
4678         * toolbar-x.c (x_output_toolbar): The same change as in
4679         toolbar-msw.c
4680         (x_output_toolbar): Ditto.
4681         (x_redraw_exposed_toolbar): Ditto.
4682
4683         * toolbar-msw.c (mswindows_output_toolbar): Retrieve current
4684         buttons from toolbar_buttons using FRAME_TOOLBAR_BUTTONS macro.
4685         (mswindows_output_toolbar): Ditto.
4686         (mswindows_output_toolbar): Ditto.
4687
4688         * frame.c (mark_frame): Removed marking of arrays, according to
4689         frameslots.h change.
4690         (nuke_all_frame_slots): Ditto.
4691         (set_frame_selected_window): Mark toolbars changed when
4692         last_nonminibuf_window changes.
4693
4694         * frame.h (struct frame): Moved some slots to frameslots.h.
4695         Added current_toolbar_size array.
4696         Changed references from toolbar_data to toolbar_buttons in macros
4697         FRAME_RAW_THEORETICAL_TOOLBAR_VISIBLE,
4698         FRAME_RAW_THEORETICAL_TOOLBAR_SIZE and
4699         FRAME_RAW_THEORETICAL_TOOLBAR_BORDER_WIDTH.
4700
4701         * frameslots.h: Added macro MARKED_SLOT_ARRAY a la winslots.h
4702         Moved arrays of lisp objects here from frame.h: toolbar_size,
4703         toolbar_visible_p, toolbar_border_width.
4704         Removed toolbar_data slot and added toolbar_buttons.
4705
4706 1998-05-17  Kirill M. Katsnelson  <kkm@kis.ru>
4707
4708         * symsinit.h: Externed syms_of_process_nt()
4709
4710         * emacs.c (main_1): Call syms_of_process_nt()
4711
4712         * process-nt.c: Quote process arguments by a call to Lisp function
4713         `nt-quote-process-args'.
4714         (syms_of_process_nt): New function.
4715         (nt_send_process): Flush data stream after each write, to avoid
4716         leaving buffered data.
4717         (nt_send_process): When blocked on process output, wait for
4718         process to slurp more for progressively increasing time intervals.
4719
4720 1998-05-17  Martin Buchholz  <martin@xemacs.org>
4721
4722         * window.c (have_undivided_common_edge): Make file-local function
4723         static.
4724         (map_windows): Return 0 if all map functions successful.
4725         Fix typos.
4726
4727         * winslots.h: Use unlikely names for local variables in macros to
4728         avoid shadowing warnings.
4729
4730 1998-05-17  Andy Piper  <andyp@parallax.co.uk>
4731
4732         * toolbar-msw.c (mswindows_output_toolbar): hash on toolbar width
4733         so that we re-output if the toolbar size has changed.
4734
4735 1998-05-17  Michael Sperber [Mr. Preprocessor]  <sperber@informatik.uni-tuebingen.de>
4736
4737         * s/aix4-2.h (ALIGN_DATA_RELOC): Undefined to support new unexaix.c.
4738
4739         * s/aix3-1.h (ALIGN_DATA_RELOC): Defined to support new unexaix.c.
4740
4741         * unexaix.c: Massive cleanup and support of AIX 4.2 (and hopefully
4742         greater).
4743
4744 1998-05-16  Kirill M. Katsnelson  <kkm@kis.ru>
4745
4746         * glyphs-msw.c: Defined OEMRESOURCE before including windows.h to
4747         get bitmap manifest constants defined.
4748
4749         * console-msw.h: Include system files in angle brackets, not in
4750         quotes.
4751
4752         * window.c (specifier_vars_of_window): Fixed a typo in
4753         `vertical-divider-line-width' docstirng.
4754
4755 1998-05-16  Olivier Galibert  <galibert@pobox.com>
4756
4757         * line-number.c (delete_invalidate_line_number_cache): Use an
4758         EMACS_INT.
4759         (buffer_line_number): Remove dangerous, plain wrong when using
4760         64bits emacs ints, cast.
4761
4762         * insdel.c (buffer_delete_range): Use an EMACS_INT.
4763
4764         * cmds.c (Fforward_line): Use EMACS_INTs.
4765
4766         * search.c (bi_scan_buffer): Change to use EMACS_INTs.
4767         (scan_buffer): Ditto.
4768         (bi_find_next_newline_no_quit): Remove useless cast.
4769         (find_next_newline_no_quit): Ditto.
4770         (find_next_newline): Ditto.
4771         (find_before_next_newline): Use an EMACS_INT.
4772
4773         * lisp.h: Change scan_buffer to pass EMACS_INTs.
4774
4775 1998-05-16  Hrvoje Niksic  <hniksic@srce.hr>
4776
4777         * menubar-msw.c (mswindows_handle_wm_command): Ditto.
4778
4779         * toolbar-msw.c (mswindows_handle_toolbar_wm_command): Ditto.
4780
4781         * gui-x.c (popup_selection_callback): Use it.
4782
4783         * gui.h (get_callback): Declare it.
4784
4785         * gui.c (get_callback): New function.
4786
4787 1998-05-15  SL Baur  <steve@altair.xemacs.org>
4788
4789         * window.c (have_undivided_common_edge): Guard scrollbar specific
4790         stuff.
4791         (window_needs_vertical_divider_1): Ditto.
4792
4793 1998-05-16  Hrvoje Niksic  <hniksic@srce.hr>
4794
4795         * emacs.c (decode_path): Eliminate compiler warning.
4796         (Fdecode_path): Renamed to Fsplit_path.
4797         (Fsplit_string_by_char): New function.
4798
4799 1998-05-14  Damon Lipparelli  <lipp@primus.com>
4800
4801         * winslots.h: close comment
4802
4803 1998-05-16  Kirill M. Katsnelson  <kkm@kis.ru>
4804
4805         * callproc.c: Removed declared and unused variable Qbuffer_file_type.
4806
4807         * bufslots.h: Removed buffer_file_type slot.
4808
4809         * buffer.c (complex_vars_of_buffer): Removed buffer_file_type from
4810         buffer local flags.
4811         (complex_vars_of_buffer): Removed buffer-file-type variable and
4812         its default reference.
4813
4814 1998-05-15  Kirill M. Katsnelson  <kkm@kis.ru>
4815
4816         * faces.c (complex_vars_of_faces): Defined
4817         Vvertical_divider_face.
4818         (vars_of_faces): Staticpro it.
4819
4820         * faces.h: Externed Vvertical_divider_face.
4821
4822         * redisplay-x.c (x_output_vertical_divider): Use
4823         Vvertical_divider_face to draw the divider instead of modeline
4824         face.
4825
4826         * redisplay-msw.c (mswindows_output_vertical_divider): Draw
4827         divider face using Vvertical_divider_face background.
4828         Fix drawing spacing gaps around the divider.
4829
4830 1998-05-14  Didier Verna  <verna@inf.enst.fr>
4831
4832         * redisplay-x.c (x_output_vertical_divider): removed hard-wired
4833         values for the vertical divider line width and spacing. Use the
4834         cached values from the window structure instead.
4835         (x_divider_width): ditto.
4836
4837         * window.c (specifier_vars_of_window): new specifiers:
4838         vertical-divier -line-width and -spacing.
4839         (vertical_divider_global_width_changed): formerly known as
4840         vertical_divider_shadow_thickness_changed.
4841
4842         * winslots.h: new slots: vertical_specifier _line_width and
4843         _spacing. Plus corrected a comment typo.
4844
4845 1998-05-15  Kirill M. Katsnelson  <kkm@kis.ru>
4846
4847         * window.h: Declared window_divider_width().
4848
4849         * console-stream.c (stream_divider_width): Removed method.
4850         (console_type_create_stream): And declaration for it.
4851
4852         * redisplay.c (pixel_to_glyph_translation): Use
4853         window_divider_width() instead of divider_width redisplay method.
4854         (pixel_to_glyph_translation): Fix top divider edge calculation
4855         when scrollbar is on top.
4856
4857         * window.c (window_divider_width): New function, an outphaser for
4858         divider_width redisplay method.
4859         (window_right_gutter_width): Use it.
4860         (specifier_vars_of_window): For vertical-divider-{spacing,line-width}
4861         specifiers, set fallback values differently on TTYs, and document
4862         the behavior of these on TTYs in the docstrings.
4863
4864         * scrollbar.c (update_scrollbar_instance): Use
4865         window_divider_width() instead of divider_width redisplay method.
4866
4867         * console.h (struct console_methods): Removed divider_width_method.
4868
4869         * redisplay-tty.c (tty_divider_width): Removed device method.
4870         (console_type_create_redisplay_tty): Removed definition for it.
4871         (tty_output_vertical_divider): Respect the value returned by
4872         window_divider_width thus divider line width specification.
4873
4874         * redisplay-msw.c (mswindows_divider_width): Removed device method.
4875         (console_type_create_redisplay_mswindows): Removed definition for it.
4876         (mswinodws_output_vertical_divider): Respect the value returned by
4877         window_divider_width thus divider line width specification.
4878
4879 1998-05-15  Andy Piper  <andyp@parallax.co.uk>
4880
4881         * toolbar-msw.c: guess toolbar frame size a bit more accurately.
4882
4883 1998-05-15  Andy Piper  <andyp@parallax.co.uk>
4884
4885         * glyphs-msw.c: resource loading implementation.
4886         (cursor_normalize): new function.
4887         (cursor_validate): ditto.
4888         (cursor_instantiate): ditto.
4889         (cursor_name_to_resource): ditto.
4890         (cursor_possible_dest_types): ditto.
4891         (check_valid_symbol): ditto.
4892         (check_valid_string_or_int): ditto.
4893
4894 1998-05-14  Martin Buchholz  <martin@xemacs.org>
4895
4896         * sysdep.c (tty_init_sys_modes_on_device): Treat VSUSP just like
4897         VINTR and VQUIT.
4898
4899         * process-unix.c (process_signal_char): Use VSUSP instead of
4900         non-standard VSWTCH.  Always prefer VSUSP to VSWTCH.
4901
4902 1998-05-14  Kirill M. Katsnelson  <kkm@kis.ru>
4903
4904         * specifier.c (specifier_instance): Change locale precedence of
4905         instantiation so window locale has higher priority than buffer
4906         locale.
4907         (Fspecifier_instance): Reflect this in docstring.
4908         (Fadd_spec_list_to_specifier): Ditto.
4909         (Fadd_spec_to_specifier): Ditto.
4910         (Fremove_specifier): Ditto.
4911
4912 1998-05-15  Kirill M. Katsnelson  <kkm@kis.ru>
4913
4914         ** Dialog separation into a device method from Andy Piper
4915
4916         * emacs.c (main_1): Call console_type_create_dialog_x().
4917
4918         * dialog-x.c (x_popup_dialog_box): Old Fpopup_dialog_box converted
4919         into this device method.
4920         (console_type_create_dialog_x): New function.
4921
4922         * dialog.c (Fpopup_dialog_box): New function.
4923         (syms_of_dialog): Defsubr it.
4924
4925         * console.h (struct console_methods): Declared
4926         popup_dialog_box_method().
4927
4928         * symsinit.h: Defined console_type_create_dialog_{x,mswindows}
4929
4930 1998-05-14  Oliver Graf <ograf@fga.de>
4931
4932         * dragdrop.c (vars_of_dragdrop): dragdrop-protocols created
4933         * frame-x.c (x_cde_transfer_callback): checked for merge errors
4934
4935 1998-05-13  Oliver Graf <ograf@fga.de>
4936
4937         * dragdrop.c (vars_of_dragdrop): provide dragdrop-api
4938
4939 1998-05-15  Kirill M. Katsnelson  <kkm@kis.ru>
4940
4941         * console.h (device_metrics): Removed dbcs, input-method-editor
4942         and right-to-left metrics.
4943
4944         * device.c (Fdevice_system_metric): Ditto.
4945         (Fdevice_system_metrics): Ditto.
4946         (syms_of_device): Ditto.
4947         (Fdevice_system_metric): Swapped DEVICE and METRIC parameters back
4948         again.
4949
4950 1998-05-14  Hrvoje Niksic  <hniksic@srce.hr>
4951
4952         * line-number.h (mark_line_number_cache): Remove unused
4953         declaration.
4954
4955         * line-number.c (LINE_NUMBER_FAR): Increase to 32768.
4956         (get_nearest_line_number): Simplify.
4957         (add_position_to_cache): Make the old marker point nowhere.
4958
4959 1998-05-14  Kirill M. Katsnelson  <kkm@kis.ru>
4960
4961         ** Renamed window-divider-map => vertical-divider-map
4962         and event-over-divider-p => event-over-vertical-divider-p,
4963         in the following files/functions:
4964         * events.h:
4965         * events.c (Fevent_over_divider_p):
4966         * keymap.c (get_relevant_keymaps):
4967         (vars_of_keymap):
4968
4969         * redisplay.h (OVER_V_DIVIDER): Renamed so from OVER_DIVIDER.
4970
4971         * redisplay.c (pixel_to_glyph_translation): Use OVER_V_DIVIDER.
4972
4973 1998-05-14  Kirill M. Katsnelson  <kkm@kis.ru>
4974
4975         * window.c (vertical_divider_changed_in_window): Renamed so.
4976         (specifier_vars_of_window): Defined Vvertical_divider_draggable_p.
4977         (window_needs_vertical_divider_1): Decide whether we need it based
4978         on the value of the above specifier. If separators are unwanted,
4979         put them only if there's no scrollbar between this window and its
4980         right neighbor.
4981         (have_undivided_common_edge): New function, helper for the above.
4982         (window_needs_vertical_divider): Return either a cached value,
4983         or clauclate and cache one.
4984         (invalidate_vertical_divider_cache_in_window): Implemented.
4985         (map_windows): Changed return type to int, return the value from
4986         MAPFUN.
4987
4988         * window.h: Prototype invalidate_vertical_divider_cache_in_window.
4989         (struct window): Added need_vertical_divider_p and
4990         need_vertical_divider_valid_p.
4991
4992         * winslots.h: Added vertical_divider_draggable_p slot.
4993
4994         * scrollbar.c (vertical_scrollbar_changed_in_window): Implemented.
4995         (specifier_vars_of_scrollbar): Used it in all vertical specifiers.
4996
4997         * frame.c (invalidate_vertical_divider_cache_in_frame): New function.
4998
4999         * frame.h (MARK_FRAME_WINDOWS_STRUCTURE_CHANGED): Call
5000         invalidate_vertical_divider_cache_in_frame().
5001         Prototype it.
5002
5003 1998-05-14  Andy Piper  <andyp@parallax.co.uk>
5004
5005         * toolbar-msw.c: provide correct parameters to TB_SETROWS.
5006
5007         * glyphs-msw.c (mswindows_initialize_image_instance_mask): size
5008         masks correctly and don't select 0.
5009
5010 1998-05-14  Kirill M. Katsnelson  <kkm@kis.ru>
5011
5012         * winslots.h: New file, declaration of some struct window and
5013         struct saved_window members.
5014
5015         * window.h (struct window): Include it, with required preprocessor
5016         magic.
5017
5018         * window.c (mark_window): Ditto.
5019         (allocate_window): Ditto.
5020         (struct saved_window): Ditto.
5021         (mark_window_config): Ditto.
5022         (saved_window_equal): Ditto.
5023         (Fset_window_configuration): Ditto.
5024
5025 1998-05-14  Kirill M. Katsnelson  <kkm@kis.ru>
5026
5027         * redisplay-msw.c (mswindows_output_vertical_divider): Syntax fix.
5028
5029 1998-05-12  Didier Verna  <verna@inf.enst.fr>
5030
5031         * redisplay-x.c (x_output_vertical_divider): draw shadows around
5032         the divider line. The shadow thickness is currently
5033         hard-wired. This will probably be turned into a specifier soon.
5034
5035 1998-05-12  Didier Verna  <verna@inf.enst.fr>
5036
5037         * console.h (struct console_methods): the divider_width console
5038         method now requires a struct window * argument.
5039
5040         * redisplay-x.c (x_divider_width): ditto. Plus remove
5041         X_DIVIDER_WIDTH, X_DIVIDER_SHADOW_THICKNESS.
5042         (x_output_vertical_divider): give a depressed look when the shadow
5043         thickness is negative.
5044
5045         * console-stream.c (stream_divider_width): pass a struct window *
5046         argument.
5047
5048         * redisplay-tty.c (tty_divider_width): ditto.
5049
5050         * window.c (window_right_gutter_width): totdi.
5051
5052         * redisplay.c (generate_modeline): ittod.
5053
5054         * scrollbar.c (update_scrollbar_instance): ttido.
5055
5056         * redisplay-msw.c (mswindows_divider_width): ottid.
5057         WARNING: this enables to compile, but the feature is not functional.
5058
5059         * window.h (struct window): new field
5060         vertical_divider_shadow_thickness.
5061
5062         * window.c (specifier_vars_of_window): new specifier
5063         vertical-divider-shadow-thickness.
5064         (vertical_divider_shadow_thickness_changed): new function to
5065         inform redisplay that the window has changed.
5066         (mark_window): handle new field vertical_divider_shadow_thickness
5067         from struct window.
5068         (allocate_window): ditto.
5069         (saved_window_equal): toddi.
5070         (Fset_window_configuration): totid.
5071         (save_window_save): ttdio.
5072         (struct saved_window): new field vertical_divider_shadow_thickness.
5073
5074 1998-05-14  Kirill M. Katsnelson  <kkm@kis.ru>
5075
5076         * device-msw.c (mswindows_device_system_metrics): Support a deluge
5077         of metrics.
5078
5079 1998-05-12  Oliver Graf <ograf@fga.de>
5080
5081         * frame-x.c (x_cde_transfer_callback): fixed for the new protocol
5082         * event-Xt.c (x_event_to_emacs_event): C++ compability
5083
5084 1998-05-14  Hrvoje Niksic  <hniksic@srce.hr>
5085
5086         * emacs.c (Fdecode_path): Default SEPCHAR to value of
5087         path-separator.
5088
5089 1998-05-14  Hrvoje Niksic  <hniksic@srce.hr>
5090
5091         * emacs.c (vars_of_emacs): Do it here; change the meaning of
5092         Vpath_separator.
5093
5094         * fileio.c (vars_of_fileio): Don't define Vpath_separator here.
5095
5096 1998-05-14  Hrvoje Niksic  <hniksic@srce.hr>
5097
5098         * emacs.c (decode_path_1): New function.
5099         (decode_path): Use it.
5100         (Fdecode_path): Renamed from Fdecode_path_internal; use
5101         decode_path_1.
5102
5103 1998-05-12  Hrvoje Niksic  <hniksic@srce.hr>
5104
5105         * macros.c (Fzap_last_kbd_macro_event): New function.
5106         (Fend_kbd_macro): Remove REMOVE_LAST kludge.
5107
5108 1998-05-10  Andy Piper  <andyp@parallax.co.uk>
5109
5110         * redisplay-msw.c (mswindows_output_dibitmap_region): make sure
5111         multiple bitmaps are output vertically as well as horizontally.
5112         * (mswindows_output_dibitmap): don't cope with bitmap boundaries
5113         crossing lines this is handled by
5114         mswindows_output_dibitmap_region.
5115
5116 1998-05-12  Martin Buchholz  <martin@xemacs.org>
5117
5118         * inline.c: Include eldap.h
5119
5120         * menubar-x.c (x_update_frame_menubar_internal):
5121         Remove: unused variable `container'
5122
5123 1998-05-11  Martin Buchholz  <martin@xemacs.org>
5124
5125         * s/aix4.h: Allow AIX 4.3 XEmacs to compile cleanly.
5126         Unfortunately, the resulting temacs still cannot dump.
5127
5128         * symbols.c (symbol_is_constant):
5129         (verify_ok_for_buffer_local):
5130         -Wswitch Warning suppression - add default case to switches.
5131
5132         * redisplay.c (decode_mode_spec): Remove unused variables,
5133         Replace Fcoding_system_property (codesys, Qmnemonic) with
5134         XCODING_SYSTEM_MNEMONIC (codesys);
5135         Fcoding_system_property is for users.
5136
5137         * buffer.c:
5138         * fileio.c:
5139         * lread.c:
5140         * xselect.c:
5141         Change empty docstrings into no doc strings at all.
5142         Fix bogus FSF-format docstrings.
5143
5144         * extents.c:
5145         Standardize docstrings.
5146
5147         * floatfns.c:
5148         Explain problems with matherr.
5149
5150         * glyphs.c:  make DEFUNs etags-readable, i.e. single-line
5151
5152         * syssignal.h:
5153         if BROKEN_SIGIO, then SIGIO wants to be undefined.
5154         if SIGIO and not SIGPOLL, SIGPOLL wants to be SIGIO.\
5155         Fix the weird resultant interaction (causes windows problems)
5156
5157         * gdbinit:
5158         * dbxrc:
5159         Take new EMACSBOOTSTRAPLOADPATH into account.
5160         Update documentation strings
5161
5162         * Makefile.in.in:
5163         - Adjust for luser's CDPATH being set to something weird.
5164         - Take into account bash 2.02's tendency to print the cwd when
5165           using CDPATH.  Always use `cd ./foo' instead of `cd foo'.
5166         - fix the run-temacs target to use $(DUMPENV)
5167         - fix the run-puremacs target to use $(DUMPENV)
5168         - fix the `depend' target to properly $(RM) the right files
5169         - Generate a better TAGS file for XEmacs' lisp code using
5170           hand-crafted regexps.
5171         - Use standard coding conventions for modules/Makefile.in
5172
5173 1998-05-12  Didier Verna  <verna@inf.enst.fr>
5174
5175         * redisplay.c: removed the scrolling modeline code that didn't
5176         make it for 21.0. To be continued ...
5177
5178 1998-05-13  Michael Sperber [Mr. Preprocessor]  <sperber@informatik.uni-tuebingen.de>
5179
5180         * emacs.c (Fdecode_path_internal): Removed bogus handling of nil
5181         and empty string inputs.
5182
5183 1998-05-12  Hrvoje Niksic  <hniksic@srce.hr>
5184
5185         * redisplay-x.c (x_output_vertical_divider): Fixed typo.
5186
5187 1998-05-10  Oliver Graf <ograf@fga.de>
5188
5189         * event-stream.c (enqueue_misc_user_event_pos): created
5190         * lisp.h (enqueue_misc_user_event_pos): prototype added
5191         * frame-x.c (x_cde_transfer_callback): debug code plus API changes
5192         * emacs.c: call vars_of_dragdrop
5193         * dragdrop.c (vars_of_dragdrop): provide dragdrop
5194
5195 1998-05-11  Oliver Graf <ograf@fga.de>
5196
5197         * frame-x.c (x_cde_transfer_callback): return at correct pos
5198         * event-Xt.c (x_event_to_emacs_event): changed format of drop
5199         object for MIME (see comment in dragdrop.c)
5200         * dragdrop.c: API change documented in comment
5201         removed provide of dragdrop [is provided by dragdrop.el]
5202
5203 1998-05-12  Kirill M. Katsnelson  <kkm@kis.ru>
5204
5205         * window.c (window_needs_vertical_divider): Enable vertical
5206         dividers for every non-rightmost window.
5207         (window_left_gutter_width): Left gutter consists of mythical
5208         toolbar and a virtual scrollbar.
5209         (window_right_gutter_width): The right one may have a divider
5210         also.
5211
5212         * scrollbar.c (update_scrollbar_instance): Position vertical
5213         scrollbar left to divider if the latter present.
5214
5215         * redisplay.h: Declared OVER_DIVIER constant.
5216
5217         * redisplay.c (pixel_to_glyph_translation): Handle OVER_DIVIDER
5218         case.
5219
5220         * redisplay-x.c (x_output_vertical_divider): Output divider along
5221         the right side of the window, down to window bottom. Swapped
5222         foreground and background colors so it is visible by default.
5223
5224         * redisplay-tty.c (tty_output_vertical_divider): Uncondiionally
5225         stick the divider to the right window side.
5226
5227         * redisplay-msw.c (mswindows_redisplay_deadbox_maybe): Fixed
5228         deadbox painting.
5229         (mswindows_divider_width): Ask system for user preferred value.
5230         (mswindows_output_vertical_divider): Always output the divider on
5231         the right side of a window, down to bottom.
5232
5233         * keymap.c (get_relevant_keymaps): Route mouse button events which
5234         happened over a window divider through window-divider-map.
5235         (Fkey_binding): Documented that in the docstring.
5236         Defined the variable Vwindow_divider_map.
5237
5238         * events.c (Fevent_over_divider_p): Added this function.
5239
5240         * events.h: EXFUNed it.
5241
5242 1998-05-12  Kirill M. Katsnelson  <kkm@kis.ru>
5243
5244         * toolbar.c (update_frame_toolbars): Re-layout frame windows if
5245         toolbar geometry is suspected to change.
5246
5247 1998-05-11  Jonathan Harris  <jhar@tardis.ed.ac.uk>
5248
5249         * src/device-msw.c
5250         * src/event-msw.c
5251         Condition dnd and dde code on HAVE_DRAGNDROP.
5252
5253 1998-05-11  Hrvoje Niksic  <hniksic@srce.hr>
5254
5255         * events.c (format_event_object): Print space as SPC etc.
5256
5257 1998-05-11  Hrvoje Niksic  <hniksic@srce.hr>
5258
5259         * print.c (print_internal): In the default case, abort() if
5260         ERROR_CHECK_TYPECHECK.
5261
5262         * fileio.c (Fmake_temp_name): Doc fix.
5263
5264 1998-05-10  Hrvoje Niksic  <hniksic@srce.hr>
5265
5266         * xgccache.c (describe_gc_cache): Define only if DEBUG_XEMACS.
5267
5268         * undo.c (Fprimitive_undo): Fixed typo.
5269
5270 1998-05-11  Hrvoje Niksic  <hniksic@srce.hr>
5271
5272         * fns.c (concat): Signal error on integer argument.
5273
5274 1998-05-10  Kirill M. Katsnelson  <kkm@kis.ru>
5275
5276         * console.h (device_metrics): Prefixed each constatnt with DM_
5277
5278         * device.c: (Fdevice_system_metric): Renamed so from plural form
5279         (metrics); Changed parameters order and added DEFAULT parameter;
5280         Unabbreviated some metric constants; Fixed and untabified doc string.
5281         (Fdevice_system_metrics): Added. Returns a plist of all provided
5282         metrics.
5283
5284         * device-msw.c (mswindows_device_system_metrics): Renamed
5285         device_metrics enum constants.
5286         Return Qunbound instead of Qnil.
5287
5288         * device-tty.c (tty_device_system_metrics): Ditto.
5289
5290         * device-x.c (x_device_system_metrics): Ditto.
5291
5292 1998-05-10  Andy Piper  <andyp@parallax.co.uk>
5293
5294         * redisplay-msw.c: implement background pixmaps (really!). Make
5295         sure bg color is transparent if we have bg pmaps.
5296         * (mswindows_output_string) (mswindows_clear_region): output bg
5297         pmap if required.
5298         * (mswindows_output_dibitmap_region): new function.
5299         * (mswindows_output_dibitmap): output offset pixmaps, blt masks in
5300         the bg color rather than transparently.
5301
5302         * toolbar-msw.c: use masks if they exist.
5303
5304         * glyphs-msw.c: set up masks correctly.
5305
5306         * event-msw.c: typedef SOCKET if cygwin and not msg select().
5307
5308 1998-05-10  Hrvoje Niksic  <hniksic@srce.hr>
5309
5310         * regex.c (re_match_2_internal): Check for quit.
5311
5312 1998-05-10  Hrvoje Niksic  <hniksic@srce.hr>
5313
5314         * frame.c (Ffocus_frame): New function.
5315