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