update.
[chise/xemacs-chise.git-] / src / ChangeLog
1 1999-10-10  MORIOKA Tomohiko  <tomo@urania.m17n.org>
2
3         * mule-charset.c (complex_vars_of_mule_charset): Add font
4         registory of `ucs-bmp'.
5
6 1999-10-10  MORIOKA Tomohiko  <tomo@urania.m17n.org>
7
8         * text-coding.c (char_encode_iso2022): Ignore non-ISO-2022
9         coded-charsets in `default-coded-charset-priority-list' when
10         breaking up a character.
11
12         * mule-charset.c (Vcharset_latin_viscii): New variable.
13         (Qlatin_viscii): New variable.
14         (make_charset): Don't use `decoding_table'.
15         (Fmake_charset): Regard graphic = 2 as 256^n-set; setup
16         byte_offset.
17         (Fset_charset_mapping_table): New implementation.
18         (syms_of_mule_charset): Add new symbol `latin-viscii'.
19         (complex_vars_of_mule_charset): Set `graphic' attribute of charset
20         `ucs-bmp' and `latin_viscii' to 2; change font registry of charset
21         `latin-viscii-lower' to "MULEVISCII-LOWER"; change font registry
22         of charset `latin-viscii-upper' to "MULEVISCII-UPPER"; add new
23         charset `latin_viscii'.
24
25         * char-ucs.h (LEADING_BYTE_LATIN_VISCII): New macro.
26         (CHARSET_TYPE_94X94): Change to 1 from 2.
27         (CHARSET_TYPE_96): Change to 2 from 1.
28         (CHARSET_TYPE_128): New macro.
29         (CHARSET_TYPE_128X128): Change to 5 from 4.
30         (CHARSET_TYPE_256): New macro.
31         (CHARSET_TYPE_256X256): Change to 7 from 5.
32         (MAKE_CHAR): Use `XCHARSET_BYTE_OFFSET(charset)'.
33
34 1999-10-10  MORIOKA Tomohiko  <tomo@urania.m17n.org>
35
36         * text-coding.c (char_encode_shift_jis): Refer
37         `XCHARSET_ENCODING_TABLE(Vcharset_latin_jisx0201)' instead of
38         `XCHARSET_TO_BYTE1_TABLE(Vcharset_latin_jisx0201)'.
39
40         * mule-charset.c (mark_char_byte_table): New function in UTF-2000.
41         (char_byte_table_equal): New function in UTF-2000.
42         (char_byte_table_hash): New function in UTF-2000.
43         (char_byte_table_description): New constant in UTF-2000.
44         (char_byte_table): New type in UTF-2000.
45         (make_char_byte_table): New function in UTF-2000.
46         (copy_char_byte_table): New function in UTF-2000.
47         (make_char_code_table): New macro in UTF-2000.
48         (get_char_code_table): New function in UTF-2000.
49         (put_char_code_table): New function in UTF-2000.
50         (mark_charset): Mark `cs->encoding_table' in UTF-2000.
51         (charset_description): Add setting in UTF-2000.
52         (make_charset): Setup `CHARSET_ENCODING_TABLE(cs)' instead of
53         `CHARSET_TO_BYTE1_TABLE(cs)'.
54         (charset_get_byte1): Refer `XCHARSET_ENCODING_TABLE(charset)'
55         instead of `XCHARSET_TO_BYTE1_TABLE(charset)'.
56         (charset_get_byte2): Refer `XCHARSET_ENCODING_TABLE(charset)'
57         instead of `XCHARSET_TO_BYTE2_TABLE(charset)'.
58         (Fset_charset_mapping_table): Setup `CHARSET_ENCODING_TABLE(cs)'
59         instead of `CHARSET_TO_BYTE1_TABLE(cs)' and
60         `CHARSET_TO_BYTE2_TABLE(cs)'.
61
62         * char-ucs.h (char_byte_table): New type.
63         (XCHAR_BYTE_TABLE): New macro.
64         (XSETCHAR_BYTE_TABLE): New macro.
65         (CHAR_BYTE_TABLE_P): New macro.
66         (GC_CHAR_BYTE_TABLE_P): New macro.
67         (struct Lisp_Char_Byte_Table): New structure.
68         (get_char_code_table): New interface.
69         (Emchar_to_byte_table): Deleted.
70         (get_byte_from_character_table): Deleted.
71         (struct Lisp_Charset): Add `encoding_table'; delete
72         `to_byte1_table' and `to_byte2_table'.
73         (CHARSET_ENCODING_TABLE): New macro.
74         (CHARSET_TO_BYTE1_TABLE): Deleted.
75         (CHARSET_TO_BYTE2_TABLE): Deleted.
76         (XCHARSET_ENCODING_TABLE): New macro.
77         (XCHARSET_TO_BYTE1_TABLE): Deleted.
78         (XCHARSET_TO_BYTE2_TABLE): Deleted.
79
80 1999-10-07  MORIOKA Tomohiko  <tomo@etl.go.jp>
81
82         * mule-charset.c (syms_of_mule_charset): Delete charset alias
83         `vietnamese-viscii-*'.
84
85 1999-10-07  MORIOKA Tomohiko  <tomo@etl.go.jp>
86
87         * mule-charset.c (Qvietnamese_viscii_lower): New variable.
88         (Qvietnamese_viscii_upper): New variable.
89         (Fdefine_charset_alias): New function.
90         (syms_of_mule_charset): Add new function `define-charset-alias'.
91         (syms_of_mule_charset): Rename charset `vietnamese-viscii-*' to
92         `latin-viscii-*'; define `vietnamese-viscii-*' as aliases for
93         `latin-viscii-*'.
94
95 1999-10-04  MORIOKA Tomohiko  <tomo@etl.go.jp>
96
97         * char-ucs.h (MIN_CHAR_OBS_94x94): New macro.
98         (MAX_CHAR_OBS_94x94): New macro.
99         (breakup_char_1): Support obsolete XEmacs-UCS private code space
100         for 94x94 sets.
101
102         * mule-charset.c (put_byte_from_character_table): Change unit size
103         from 128 to 256.
104         (mark_charset): Don't mark `cs->decoding_table' if `UTF2000' is
105         not defined.
106         (Fmake_reverse_direction_charset): Modify dummy argument of
107         `make_charset' for non-UTF-2000 environment.
108
109 1999-10-03  MORIOKA Tomohiko  <tomo@urania.m17n.org>
110
111         * char-ucs.h (MAKE_CHAR): Allow nested decoding-table.
112
113         * mule-charset.c (destroy_byte_from_character_table): New macro.
114         (latin_jisx0201_to_ucs): Deleted.
115         (latin_iso8859_2_to_ucs): Deleted.
116         (latin_iso8859_3_to_ucs): Deleted.
117         (latin_iso8859_4_to_ucs): Deleted.
118         (latin_iso8859_9_to_ucs): Deleted.
119         (latin_viscii_lower_to_ucs): Deleted.
120         (latin_viscii_upper_to_ucs): Deleted.
121         (mark_charset): Mark `cs->decoding_table'.
122         (Fcharset_mapping_table): Fix DOC-string.
123         (Fset_charset_mapping_table): New function.
124         (syms_of_mule_charset): Add nwe function
125         `set-charset-mapping-table'.
126         (complex_vars_of_mule_charset): Don't setup and use
127         `latin_*_to_ucs'.
128
129 1999-10-01  MORIOKA Tomohiko  <tomo@urania.m17n.org>
130
131         * char-ucs.h (MAKE_CHAR): Check the result for range-represented
132         charset.
133
134 1999-09-30  MORIOKA Tomohiko  <tomo@urania.m17n.org>
135
136         * mule-charset.c (Vcharset_hiragana_jisx0208): New variable.
137         (Vcharset_katakana_jisx0208): New variable.
138         (Qhiragana_jisx0208): New variable.
139         (Qkatakana_jisx0208): New variable.
140         (make_charset): Add new argument `byte_offset'.
141         (charset_get_byte1): Modify for new coded-charset definition; use
142         `XCHARSET_UCS_MIN', `XCHARSET_UCS_MAX', `XCHARSET_CODE_OFFSET' and
143         `XCHARSET_BYTE_OFFSET'.
144         (Fmake_charset): Modify for `make_charset'.
145         (Fmake_reverse_direction_charset): Likewise.
146         (syms_of_mule_charset): Add new symbols `hiragana-jisx0208' and
147         `katakana-jisx0208'.
148         (complex_vars_of_mule_charset): Modify for `make_charset'; quote
149         `.'  in font registry of charset `katakana-jisx0201',
150         `latin-jisx0201', `vietnamese-viscii-lower' and
151         `vietnamese-viscii-upper'; modify DOC-string of charset
152         `japanese-jisx0208-1978' and `japanese-jisx0208'; modify font
153         registry of charset `japanese-jisx0208' not to use font for JIS
154         X0208:1990; add new charset `hiragana-jisx0208' and
155         `katakana-jisx0208'.
156
157         * char-ucs.h (LEADING_BYTE_HIRAGANA_JISX0208): New macro.
158         (LEADING_BYTE_KATAKANA_JISX0208): New macro.
159         (struct Lisp_Charset): Add `byte_offset'.
160         (CHARSET_BYTE_OFFSET): New macro.
161         (XCHARSET_UCS_MIN): New macro.
162         (XCHARSET_UCS_MAX): New macro.
163         (XCHARSET_CODE_OFFSET): New macro.
164         (XCHARSET_BYTE_OFFSET): New macro.
165         (MIN_CHAR_HIRAGANA): New macro.
166         (MAX_CHAR_HIRAGANA): New macro.
167         (MIN_CHAR_KATAKANA): New macro.
168         (MAX_CHAR_KATAKANA): New macro.
169         (MAKE_CHAR): Modify for new coded-charset definition; use
170         `XCHARSET_UCS_MIN', `XCHARSET_UCS_MAX', `XCHARSET_CODE_OFFSET' and
171         `XCHARSET_BYTE_OFFSET'.
172
173 1999-09-27  MORIOKA Tomohiko  <tomo@etl.go.jp>
174
175         * mule-charset.c (CHAR96): Deleted.
176         (latin_jisx0201_to_ucs): Type is changed from array of <Emchar> to
177         <Lisp_Object>.
178         (latin_iso8859_2_to_ucs): Likewise.
179         (latin_iso8859_3_to_ucs): Likewise.
180         (latin_iso8859_4_to_ucs): Likewise.
181         (latin_iso8859_9_to_ucs): Likewise.
182         (latin_viscii_lower_to_ucs): Likewise.
183         (latin_viscii_upper_to_ucs): Likewise.
184         (latin_tcvn5712_to_ucs): Commented out.
185         (make_charset): Change type of argument `decoding_table' from
186         <Emchar*> to <Lisp_Object> [vector of characters].
187         (Fmake_charset): Modify for `make_charset'.
188         (Fmake_reverse_direction_charset): Likewise.
189         (Fcharset_mapping_table): New function in UTF-2000.
190         (syms_of_mule_charset): Setup `Fcharset_mapping_table' in
191         UTF-2000.
192         (complex_vars_of_mule_charset): Modify for type change of
193         `*_to_ucs'; modify for `make_charset'.
194
195         * char-ucs.h (struct Lisp_Charset): Change type of
196         `decoding_table' from <Emchar*> to <Lisp_Object>.
197         (MAKE_CHAR): Modify for new specification of `decoding_table'.
198
199 1999-09-23  MORIOKA Tomohiko  <tomo@etl.go.jp>
200
201         * mule-charset.c (Fmake_reverse_direction_charset): Fix compile
202         error with non-UTF-2000-Mule.
203
204 1999-09-21  MORIOKA Tomohiko  <tomo@etl.go.jp>
205
206         * mule-charset.c (Vcharset_chinese_cns11643_3): Deleted [defined
207         in lisp again].
208         (Vcharset_chinese_cns11643_4): Likewise.
209         (Vcharset_chinese_cns11643_5): Likewise.
210         (Vcharset_chinese_cns11643_6): Likewise.
211         (Vcharset_chinese_cns11643_7): Likewise.
212         (Qchinese_cns11643_3): Likewise.
213         (Qchinese_cns11643_4): Likewise.
214         (Qchinese_cns11643_5): Likewise.
215         (Qchinese_cns11643_6): Likewise.
216         (Qchinese_cns11643_7): Likewise.
217         (syms_of_mule_charset): Move definitions for `chinese-cns11643-3',
218         `chinese-cns11643-4', `chinese-cns11643-5', `chinese-cns11643-6'
219         and `chinese-cns11643-7' to lisp/mule/chinese.el.
220         (complex_vars_of_mule_charset): Likewise.
221
222 1999-09-18  MORIOKA Tomohiko  <tomo@etl.go.jp>
223
224         * mule-charset.c (charset_get_byte1): Fix bug about 94- and
225         96-set.
226         (Fmake_reverse_direction_charset): Inherit CHARSET_DECODING_TABLE,
227         CHARSET_UCS_MIN, CHARSET_UCS_MAX and CHARSET_CODE_OFFSET.
228
229 1999-09-17  MORIOKA Tomohiko  <tomo@etl.go.jp>
230
231         * char-ucs.h (MIN_CHAR_HALFWIDTH_KATAKANA): Changed to 0xFF61 from
232         0xFF60.
233         (MAKE_CHAR): Change offset for katakana-jisx0201 to 33 from 0x20.
234         (breakup_char_1): Likewise.
235
236         * text-coding.c (char_encode_iso2022): Keep designated charsets if
237         one of them includes the specified character.
238
239 1999-09-14  MORIOKA Tomohiko  <tomo@etl.go.jp>
240
241         * mule-charset.c: Update `utf-2000-version' to 0.8 (Kami).
242
243 1999-09-14  MORIOKA Tomohiko  <tomo@etl.go.jp>
244
245         * char-ucs.h (MAKE_CHAR): Fix problem in 2-dimension charset.
246
247 1999-09-14  MORIOKA Tomohiko  <tomo@etl.go.jp>
248
249         * mule-charset.c (latin_iso8859_2_to_ucs NULL): Add pseudo
250         definition for non-UTF-2000 Mule.
251         (latin_iso8859_3_to_ucs): Likewise.
252         (latin_iso8859_4_to_ucs): Likewise.
253         (latin_iso8859_9_to_ucs): Likewise.
254         (latin_jisx0201_to_ucs): Likewise.
255         (MIN_CHAR_THAI): Likewise.
256         (MAX_CHAR_THAI): Likewise.
257         (MIN_CHAR_GREEK): Likewise.
258         (MAX_CHAR_GREEK): Likewise.
259         (MIN_CHAR_HEBREW): Likewise.
260         (MAX_CHAR_HEBREW): Likewise.
261         (MIN_CHAR_HALFWIDTH_KATAKANA): Likewise.
262         (MAX_CHAR_HALFWIDTH_KATAKANA): Likewise.
263         (MIN_CHAR_CYRILLIC): Likewise.
264         (MAX_CHAR_CYRILLIC): Likewise.
265
266 1999-09-14  MORIOKA Tomohiko  <tomo@etl.go.jp>
267
268         * char-ucs.h (breakup_char_1): Use
269         `Vdefault_coded_charset_priority_list' for hebrew-iso8859-8,
270         thai-tis620 and katakana-jisx0201 area.
271
272 1999-09-13  MORIOKA Tomohiko  <tomo@urania.m17n.org>
273
274         * char-ucs.h (breakup_char_1): Use
275         `Vdefault_coded_charset_priority_list' for cyrillic-iso8859-5
276         area.
277
278         * text-coding.c (reset_encoding_stream): Fixed.
279         (char_encode_ucs4): Delete `& 255'.
280
281         * char-ucs.h (breakup_char_1): Use
282         `Vdefault_coded_charset_priority_list' for greek-iso8859-7 area.
283
284 1999-09-13  MORIOKA Tomohiko  <tomo@urania.m17n.org>
285
286         * file-coding.c (Fmake_coding_system): Don't set up
287         `codesys->fixed.size'.
288         (encode_coding_no_conversion): Don't refer
289         `str->codesys->fixed.size'.
290
291 1999-09-13  MORIOKA Tomohiko  <tomo@urania.m17n.org>
292
293         * mule-charset.c, char-ucs.h (latin_a_char_to_charset): Deleted.
294         (latin_a_char_to_byte1): Deleted.
295         (latin_a_char_to_byte2): Deleted.
296
297 1999-09-13  MORIOKA Tomohiko  <tomo@urania.m17n.org>
298
299         * mule-charset.c (make_charset): Add new argument `ucs_min',
300         `ucs_max' and `code_offset'.
301         (charset_get_byte1): New implementation [delete specific charset
302         depended implementations].
303         (Fmake_charset): Modify for `make_charset'.
304         (Fmake_reverse_direction_charset): Likewise.
305         (complex_vars_of_mule_charset): Likewise.
306
307         * char-ucs.h (struct Lisp_Charset): Add `ucs_min', `ucs_max' and
308         `code_offset'.
309         (CHARSET_UCS_MIN): New macro.
310         (CHARSET_UCS_MAX): New macro.
311         (CHARSET_CODE_OFFSET): New macro.
312         (MAKE_CHAR): Delete charset depended definitions [except
313         katakana-jisx0201].
314
315 1999-09-13  MORIOKA Tomohiko  <tomo@etl.go.jp>
316
317         * char-ucs.h (breakup_char_1): Use
318         `Vdefault_coded_charset_priority_list' for C0-Controls,
319         Basic-Latin, C1-Controls and Latin-1-Supplement area.
320
321 1999-09-13  MORIOKA Tomohiko  <tomo@urania.m17n.org>
322
323         * char-ucs.h (charset_get_byte1): New function.
324         (XCHARSET_GET_BYTE1): Deleted.
325         (charset_get_byte2): New function.
326         (XCHARSET_GET_BYTE2): Deleted.
327         (Vdefault_coded_charset_priority_list): New external variable.
328         (breakup_char_1): Use `charset_get_byte1', `charset_get_byte2' and
329         `Vdefault_preferred_coded_charset_list'.
330
331         * mule-charset.c (charset_get_byte1): New function.
332         (charset_get_byte2): New function.
333         (Vdefault_coded_charset_priority_list): New variable.
334         (vars_of_mule_charset): Add new variable
335         `default-coded-charset-priority-list'.
336
337 1999-09-12  MORIOKA Tomohiko  <tomo@urania.m17n.org>
338
339         * char-ucs.h (XCHARSET_GET_BYTE1): New inline function.
340         (XCHARSET_GET_BYTE2): New inline function.
341         (breakup_char_1): Use `XCHARSET_GET_BYTE1' and
342         `XCHARSET_GET_BYTE2'.
343
344 1999-09-12  MORIOKA Tomohiko  <tomo@urania.m17n.org>
345
346         * mule-charset.c (make_charset): Initialize
347         `CHARSET_TO_BYTE1_TABLE(cs)' and `CHARSET_TO_BYTE2_TABLE(cs)' by
348         NULL if table is not defined.
349
350 1999-09-11  MORIOKA Tomohiko  <tomo@urania.m17n.org>
351
352         * text-coding.c (char_encode_shift_jis): Use
353         `XCHARSET_TO_BYTE1_TABLE' for `Vcharset_latin_jisx0201' instead of
354         `ucs_to_latin_jisx0201'.
355
356         * mule-charset.c (ucs_to_latin_jisx0201): Deleted.
357         (ucs_to_latin_iso8859_2): Deleted.
358         (ucs_to_latin_iso8859_3): Deleted.
359         (ucs_to_latin_iso8859_4): Deleted.
360         (ucs_to_latin_iso8859_9): Deleted.
361         (ucs_to_latin_viscii_lower): Deleted.
362         (ucs_to_latin_viscii_upper): Deleted.
363         (ucs_to_latin_tcvn5712): Deleted.
364         (make_charset): Add new argument `decoding_table'; set up
365         `CHARSET_DECODING_TABLE(cs)' in UTF-2000; set up
366         `CHARSET_TO_BYTE1_TABLE(cs)' for 94-set and 96-set if
367         `decoding_table' is defined in UTF-2000.
368         (Fmake_charset): Modify for `make_charset'.
369         (Fmake_reverse_direction_charset): Likewise.
370         (complex_vars_of_mule_charset): Likewise; delete `GENERATE_94_SET'
371         and `GENERATE_96_SET'.
372
373         * char-ucs.h (latin_jisx0201_to_ucs): Deleted.
374         (ucs_to_latin_jisx0201): Deleted.
375         (latin_iso8859_2_to_ucs): Deleted.
376         (ucs_to_latin_iso8859_2): Deleted.
377         (latin_iso8859_3_to_ucs): Deleted.
378         (ucs_to_latin_iso8859_3): Deleted.
379         (latin_iso8859_4_to_ucs): Deleted.
380         (ucs_to_latin_iso8859_4): Deleted.
381         (latin_iso8859_9_to_ucs): Deleted.
382         (ucs_to_latin_iso8859_9): Deleted.
383         (latin_viscii_lower_to_ucs): Deleted.
384         (ucs_to_latin_viscii_lower): Deleted.
385         (latin_viscii_upper_to_ucs): Deleted.
386         (ucs_to_latin_viscii_upper): Deleted.
387         (struct Lisp_Charset): Renamed `encoding_table' to
388         `to_byte1_table'; add `to_byte2_table'.
389         (CHARSET_DECODING_TABLE): New macro.
390         (CHARSET_TO_BYTE1_TABLE): New macro.
391         (CHARSET_TO_BYTE2_TABLE): New macro.
392         (XCHARSET_DECODING_TABLE): New macro.
393         (XCHARSET_TO_BYTE1_TABLE): New macro.
394         (XCHARSET_TO_BYTE2_TABLE): New macro.
395         (MAKE_CHAR): Use `XCHARSET_DECODING_TABLE'; don't use `*_to_ucs'
396         tables.
397         (breakup_char_1): Use `XCHARSET_TO_BYTE1_TABLE' if it is defined;
398         don't use `ucs_to_*' tables.
399
400 1999-09-11  MORIOKA Tomohiko  <tomo@urania.m17n.org>
401
402         * text-coding.c (Fmake_coding_system): Don't set up
403         `codesys->fixed.size'.
404         (encode_coding_no_conversion): Use `if' instead of `switch'.
405
406         * file-coding.h (struct Lisp_Coding_System): Delete `fixed.size'.
407
408 1999-09-11  MORIOKA Tomohiko  <tomo@etl.go.jp>
409
410         * mule-charset.c (make_charset): Delete argument `rep_bytes'.
411         (Fmake_charset): Modify for `make_charset'.
412         (Fmake_reverse_direction_charset): Likewise.
413         (complex_vars_of_mule_charset): Likewise.
414
415 1999-09-11  MORIOKA Tomohiko  <tomo@etl.go.jp>
416
417         * text-coding.c (char_encode_shift_jis): Use table
418         `ucs_to_latin_jisx0201' and BREAKUP_CHAR.
419
420 1999-09-11  MORIOKA Tomohiko  <tomo@etl.go.jp>
421
422         * text-coding.c (text_encode_generic): Use `if' instead of
423         `switch'.
424         (decode_coding_sjis): Use `MAKE_CHAR' and `DECODE_ADD_UCS_CHAR' to
425         decode JIS-Latin.
426
427 1999-09-10  MORIOKA Tomohiko  <tomo@etl.go.jp>
428
429         * text-coding.c (encode_coding_sjis): Deleted.
430         (char_encode_shift_jis): New function.
431         (char_finish_shift_jis): New function.
432         (reset_encoding_stream): Set up `encode_char' and `finish' for
433         `CODESYS_UCS4' and `CODESYS_SHIFT_JIS'.
434         (mule_encode): Use generic encoder for `CODESYS_SHIFT_JIS'.
435         (char_encode_utf8): Treat `eol_type'.
436
437 1999-09-10  MORIOKA Tomohiko  <tomo@etl.go.jp>
438
439         * file-coding.c (decode_coding_iso2022): Use
440         `DECODE_ADD_UCS_CHAR'; don't use `XCHARSET_REP_BYTES'.
441
442 1999-09-10  MORIOKA Tomohiko  <tomo@etl.go.jp>
443
444         * mule-charset.c (vars_of_mule_charset): Update `utf-2000-version'
445         to 0.7 (Hirano).
446
447 1999-09-10  MORIOKA Tomohiko  <tomo@etl.go.jp>
448
449         * char-lb.h (CHAR_COLUMNS): New macro.
450
451 1999-09-09  MORIOKA Tomohiko  <tomo@etl.go.jp>
452
453         * text-coding.c (char_encode_ucs4): New function.
454         (char_finish_ucs4): New function.
455         (encode_coding_ucs4): Deleted.
456         (mule_encode): Use generic encoder for `CODESYS_UCS4'.
457         (text_encode_generic): Delete local variable `charset' and `half'.
458         (ucs_to_mule_table): Deleted.
459         (mule_to_ucs_table): Deleted.
460         (Fset_ucs_char): Deleted.
461         (ucs_to_char): Deleted.
462         (Fucs_char): Deleted.
463         (Fset_char_ucs): Deleted.
464         (Fchar_ucs): Deleted.
465         (decode_ucs4): Deleted.
466         (mule_char_to_ucs4): Deleted.
467         (encode_ucs4): Deleted.
468         (decode_coding_ucs4): Use `DECODE_ADD_UCS_CHAR'.
469         (decode_coding_utf8): Likewise.
470         (decode_coding_iso2022): Likewise; don't use `XCHARSET_REP_BYTES'.
471         (char_encode_iso2022): Fixed.
472         (syms_of_file_coding): Delete `Fset_ucs_char', `Fucs_char',
473         `Fset_char_ucs' and `Fchar_ucs'.
474         (complex_vars_of_file_coding): Don't initialize
475         `ucs_to_mule_table'.
476
477         * objects-tty.c (tty_initialize_font_instance): Don't use
478         `XCHARSET_COLUMNS'.
479
480         * mule-charset.c (make_charset): Don't set up CHARSET_REP_BYTES in
481         UTF-2000.
482
483         * redisplay-tty.c (tty_output_display_block): Use `CHAR_COLUMNS'
484         instead of `XCHARSET_COLUMNS' and `CHAR_CHARSET'.
485
486         * insdel.c (bufbyte_string_displayed_columns): Use `CHAR_COLUMNS'
487         instead of `XCHARSET_COLUMNS' and `CHAR_CHARSET'.
488         (emchar_string_displayed_columns): Likewise.
489
490         * indent.c (column_at_point): Use `CHAR_COLUMNS' instead of
491         `XCHARSET_COLUMNS' and `CHAR_CHARSET'.
492         (string_column_at_point): Likewise.
493         (Fmove_to_column): Likewise.
494
495         * char-ucs.h (struct Lisp_Charset): Delete `rep_bytes'; add
496         `encoding_table' and `decoding_table'.
497         (CHARSET_REP_BYTES): Deleted.
498         (XCHARSET_REP_BYTES): Deleted.
499         (XCHARSET_COLUMNS): Deleted.
500         (CHAR_COLUMNS): New macro.
501         (lookup_composite_char): Deleted unconditionally.
502         (composite_char_string): Likewise.
503
504 1999-09-09  MORIOKA Tomohiko  <tomo@etl.go.jp>
505
506         * char-ucs.h (Emchar_to_byte_table): New type.
507         (get_byte_from_character_table): New function interface.
508         (Vcharset_latin_jisx0201): New variable.
509         (latin_jisx0201_to_ucs): New variable.
510         (ucs_to_latin_jisx0201): New variable.
511         (Vcharset_latin_iso8859_2): New variable.
512         (latin_iso8859_2_to_ucs): New variable.
513         (ucs_to_latin_iso8859_2): New variable.
514         (Vcharset_latin_iso8859_3): New variable.
515         (latin_iso8859_3_to_ucs): New variable.
516         (ucs_to_latin_iso8859_3): New variable.
517         (Vcharset_latin_iso8859_4): New variable.
518         (latin_iso8859_4_to_ucs): New variable.
519         (ucs_to_latin_iso8859_4): New variable.
520         (Vcharset_latin_iso8859_9): New variable.
521         (latin_iso8859_9_to_ucs): New variable.
522         (ucs_to_latin_iso8859_9): New variable.
523         (Vcharset_latin_viscii_lower): New variable.
524         (latin_viscii_lower_to_ucs): New variable.
525         (ucs_to_latin_viscii_lower): New variable.
526         (Vcharset_latin_viscii_upper): New variable.
527         (latin_viscii_upper_to_ucs): New variable.
528         (ucs_to_latin_viscii_upper): New variable.
529         (CHARSET_ID_OFFSET_94): Changed from 0x60 to 0x55.
530         (LEADING_BYTE_LATIN_VISCII_LOWER): New macro.
531         (LEADING_BYTE_LATIN_VISCII_UPPER): New macro.
532         (MAKE_CHAR): Map `latin-iso8859-2', `latin-iso8859-3',
533         `latin-iso8859-4', `latin-iso8859-9', `latin-jisx0201',
534         `vietnamese-viscii-lower' and `vietnamese-viscii-upper' to BMP.
535         (breakup_char_1): Use `ucs_to_latin_iso8859_2',
536         `ucs_to_latin_iso8859_3', `ucs_to_latin_iso8859_4',
537         `ucs_to_latin_iso8859_9', `ucs_to_latin_viscii_lower',
538         `ucs_to_latin_viscii_upper' and `ucs_to_latin_jisx0201' tables.
539
540         * mule-charset.c (Vcharset_latin_viscii_lower): New variable.
541         (Vcharset_latin_viscii_upper): New variable.
542         (make_byte_from_character_table): New function.
543         (put_byte_from_character_table): New function.
544         (get_byte_from_character_table): New function.
545         (CHAR96): New macro.
546         (ucs_to_latin_jisx0201): New variable.
547         (latin_jisx0201_to_ucs): New variable.
548         (ucs_to_latin_iso8859_2): New variable.
549         (latin_iso8859_2_to_ucs): New variable.
550         (ucs_to_latin_iso8859_3): New variable.
551         (latin_iso8859_3_to_ucs): New variable.
552         (ucs_to_latin_iso8859_4): New variable.
553         (latin_iso8859_4_to_ucs): New variable.
554         (ucs_to_latin_iso8859_9): New variable.
555         (latin_iso8859_9_to_ucs): New variable.
556         (ucs_to_latin_viscii_lower): New variable.
557         (latin_viscii_lower_to_ucs): New variable.
558         (ucs_to_latin_viscii_upper): New variable.
559         (latin_viscii_upper_to_ucs): New variable.
560         (ucs_to_latin_tcvn5712): New variable.
561         (latin_tcvn5712_to_ucs): New variable.
562         (Qlatin_viscii_lower): New variable.
563         (Qlatin_viscii_upper): New variable.
564         (syms_of_mule_charset): Set up new symbol
565         `vietnamese-viscii-lower' and `vietnamese-viscii-upper'.
566         (complex_vars_of_mule_charset): Set up new charset
567         `vietnamese-viscii-lower' and `vietnamese-viscii-upper'; new macro
568         `GENERATE_94_SET' and `GENERATE_96_SET'; use them to generate
569         `ucs_to_<CHARSET>' tables.
570
571 1999-09-08  MORIOKA Tomohiko  <tomo@etl.go.jp>
572
573         * text-coding.c: New file.
574
575 1999-09-07  MORIOKA Tomohiko  <tomo@etl.go.jp>
576
577         * mule-charset.c (Fmake_char): Fix problem of 256-set.
578
579         * char-ucs.h (Vcharset_ucs_bmp): New variable.
580         (MAKE_CHAR): Modify for `ucs-bmp'.
581         (breakup_char_1): Return `ucs-bmp' and code point of BMP for
582         non-MULE characters of BMP.
583
584 1999-09-06  MORIOKA Tomohiko  <tomo@etl.go.jp>
585
586         * mule-charset.c (vars_of_mule_charset):
587         Update `utf-2000-version' to 0.6.
588
589 1999-09-05  MORIOKA Tomohiko  <tomo@urania.m17n.org>
590
591         * lstream.h:
592         - Include multibyte.h instead of character.h for `BYTE_ASCII_P'.
593         - Include character.h for `CHAR_ASCII_P'.
594
595         * mb-multibyte.h (CHAR_MULTIBYTE_P): Moved from mule-charset.h.
596
597         * mule-charset.h (CHAR_MULTIBYTE_P): Moved to mb-multibyte.h.
598         (CHAR_ASCII_P): Don't use `CHAR_MULTIBYTE_P'.
599
600         * mb-multibyte.h (BYTE_ASCII_P): Moved from char-ucs.h.
601         (BYTE_C0_P): Likewise.
602         (BYTE_C1_P): Likewise.
603         (Lstream_get_emchar_1): Likewise.
604         (Lstream_fput_emchar): Likewise.
605         (Lstream_funget_emchar): Likewise.
606         (copy_internal_to_external): Likewise.
607         (copy_external_to_internal): Likewise.
608
609         * char-ucs.h (BYTE_ASCII_P): Moved to mb-multibyte.h.
610         (BYTE_C0_P): Likewise.
611         (BYTE_C1_P): Likewise.
612         (Lstream_get_emchar_1): Likewise.
613         (Lstream_fput_emchar): Likewise.
614         (Lstream_funget_emchar): Likewise.
615         (copy_internal_to_external): Likewise.
616         (copy_external_to_internal): Likewise.
617
618         * mb-1byte.h (BYTE_ASCII_P): Moved from buffer.h.
619         (REP_BYTES_BY_FIRST_BYTE): Likewise.
620
621         * buffer.h (REP_BYTES_BY_FIRST_BYTE): Moved to mb-1byte.h.
622         (BYTE_ASCII_P): Moved to mb-1byte.h.
623
624 1999-09-04  MORIOKA Tomohiko  <tomo@urania.m17n.org>
625
626         * mb-utf-8.h, mb-lb.h: Include mb-multibyte.h.
627
628         * multibyte.h: Include mb-1byte.h in unibyte-XEmacs.
629         (MAX_EMCHAR_LEN): Moved to mb-1byte.h.
630         (VALID_CHARPTR_P): Moved to mb-*byte.h.
631         (VALIDATE_CHARPTR_BACKWARD): Likewise.
632         (VALIDATE_CHARPTR_FORWARD): Likewise.
633         (simple_charptr_emchar): Moved to mb-multibyte.h.
634         (simple_set_charptr_emchar): Likewise.
635         (simple_charptr_copy_char): Likewise.
636         (non_ascii_charptr_emchar): Likewise.
637         (non_ascii_set_charptr_emchar): Likewise.
638         (non_ascii_charptr_copy_char): Likewise.
639         (charptr_emchar): Moved to mb-*byte.h.
640         (set_charptr_emchar): Likewise.
641         (charptr_copy_char): Likewise.
642
643         * mb-1byte.h, mb-multibyte.h: New files.
644
645 1999-09-03  MORIOKA Tomohiko  <tomo@urania.m17n.org>
646
647         * mb-utf-8.h (MULTIBYTE): New macro.
648         (MAX_EMCHAR_LEN): Moved from buffer.h.
649         (REP_BYTES_BY_FIRST_BYTE): Moved from char-ucs.h.
650
651         * char-ucs.h (REP_BYTES_BY_FIRST_BYTE): Moved to mb-utf-8.h.
652
653         * mb-lb.h, multibyte.h: New files.
654
655         * char-1byte.h (Charset_ID): Moved from buffer.h.
656         (MIN_LEADING_BYTE): Likewise.
657         (LEADING_BYTE_ASCII): Likewise.
658         (NUM_LEADING_BYTES): Likewise.
659         (CHARSETP): Likewise.
660         (CHARSET_BY_LEADING_BYTE): Likewise.
661         (XCHARSET_LEADING_BYTE): Likewise.
662         (XCHARSET_GRAPHIC): Likewise.
663         (XCHARSET_COLUMNS): Likewise.
664         (XCHARSET_DIMENSION): Likewise.
665         (CHAR_CHARSET): Likewise.
666         (CHAR_LEADING_BYTE): Likewise.
667         (BREAKUP_CHAR): Likewise.
668         (Vcharset_ascii): Likewise.
669
670         * buffer.h: Include multibyte.h unconditionally.
671         (VALID_CHARPTR_P): Moved to multibyte.h.
672         (ASSERT_VALID_CHARPTR): Likewise.
673         (REAL_INC_CHARPTR): Likewise.
674         (REAL_INC_CHARBYTIND): Likewise.
675         (REAL_DEC_CHARPTR): Likewise.
676         (INC_CHARPTR): Likewise.
677         (INC_CHARBYTIND): Likewise.
678         (DEC_CHARPTR): Likewise.
679         (VALIDATE_CHARPTR_BACKWARD): Likewise.
680         (VALIDATE_CHARPTR_FORWARD): Likewise.
681         (charptr_n_addr): Likewise.
682         (MAX_EMCHAR_LEN): Moved to mb-*.h.
683         (simple_charptr_emchar): Moved to multibyte.h.
684         (simple_set_charptr_emchar): Likewise.
685         (simple_charptr_copy_char): Likewise.
686         (non_ascii_charptr_emchar): Likewise.
687         (non_ascii_set_charptr_emchar): Likewise.
688         (non_ascii_charptr_copy_char): Likewise.
689         (charptr_emchar): Likewise.
690         (set_charptr_emchar): Likewise.
691         (charptr_copy_char): Likewise.
692         (charptr_emchar_n): Likewise.
693         (Charset_ID): Moved to char-1byte.h.
694         (Vcharset_ascii): Likewise.
695         (CHAR_CHARSET): Likewise.
696         (CHAR_LEADING_BYTE): Likewise.
697         (LEADING_BYTE_ASCII): Likewise.
698         (NUM_LEADING_BYTES): Likewise.
699         (MIN_LEADING_BYTE): Likewise.
700         (CHARSETP): Likewise.
701         (CHARSET_BY_LEADING_BYTE): Likewise.
702         (XCHARSET_LEADING_BYTE): Likewise.
703         (XCHARSET_GRAPHIC): Likewise.
704         (XCHARSET_COLUMNS): Likewise.
705         (XCHARSET_DIMENSION): Likewise.
706         (BREAKUP_CHAR): Likewise.
707
708 1999-09-02  MORIOKA Tomohiko  <tomo@urania.m17n.org>
709
710         * character.h: Add document about interface for characters.
711
712         * char-ucs.h (CHAR_ASCII_P): Modify name of argument.
713         (MAKE_CHAR): Delete comment about
714         `FIELD2_TO_OFFICIAL_LEADING_BYTE' and
715         `FIELD2_TO_PRIVATE_LEADING_BYTE'.
716         (BREAKUP_CHAR): Modify name of arguments.
717         (CHAR_CHARSET): Modify name of argument.
718
719         * buffer.h: Delete document about Emchar accessors.
720
721 1999-09-02  MORIOKA Tomohiko  <tomo@urania.m17n.org>
722
723         * character.h (CHAR_INTP): Moved from buffer.h
724         (CHAR_OR_CHAR_INTP): Likewise.
725         (XCHAR_OR_CHAR_INT): Likewise.
726         (CHECK_CHAR_COERCE_INT): Likewise.
727
728         * buffer.h (CHAR_INTP): Moved to character.h
729         (CHAR_OR_CHAR_INTP): Likewise.
730         (XCHAR_OR_CHAR_INT): Likewise.
731         (CHECK_CHAR_COERCE_INT): Likewise.
732
733 1999-09-02  MORIOKA Tomohiko  <tomo@urania.m17n.org>
734
735         * character.h:
736         - Move definitions about UCS-2000 (UCS-4) to char-ucs.h.
737         - Include char-1byte.h, char-lb.h or char-ucs.h.
738
739         * mb-utf-8.h (CHAR_ASCII_P): Moved to char-ucs.h.
740
741         * buffer.h: Include character unconditionally.
742         (valid_char_p): Moved to char-*.h.
743         (non_ascii_valid_char_p): Moved to char-lb.h.
744
745         * char-1byte.h, char-lb.h, char-ucs.h: New files.
746
747 1999-09-02  MORIOKA Tomohiko  <tomo@urania.m17n.org>
748
749         * mule-ccl.c (ccl_driver): Don't define `CCL_WriteMultibyteChar2'
750         in UTF-2000 because it is not ported yet and not to use
751         `FIELD2_TO_OFFICIAL_LEADING_BYTE', `MIN_LEADING_BYTE_OFFICIAL_2',
752         `FIELD1_TO_OFFICIAL_LEADING_BYTE' and
753         `FIELD1_TO_PRIVATE_LEADING_BYTE'.
754
755         * mb-utf-8.h (CHAR_MULTIBYTE_P): Moved from character.h.
756         (CHAR_ASCII_P): Moved from character.h.
757
758         * character.h (CHAR_MULTIBYTE_P): Moved to mb-utf-8.h.
759         (CHAR_ASCII_P): Likewise.
760         (CHAR_FIELD1_MASK): Deleted.
761         (CHAR_FIELD2_MASK): Deleted.
762         (CHAR_FIELD3_MASK): Deleted.
763         (MAX_CHAR_BASIC_LATIN): New macro.
764         (CHAR_FIELD1): Deleted.
765         (CHAR_FIELD2_INTERNAL): Deleted.
766         (CHAR_FIELD3_INTERNAL): Deleted.
767         (FIELD1_TO_PRIVATE_LEADING_BYTE): Deleted.
768         (FIELD1_TO_OFFICIAL_LEADING_BYTE): Deleted.
769         (FIELD2_TO_PRIVATE_LEADING_BYTE): Deleted.
770         (FIELD2_TO_OFFICIAL_LEADING_BYTE): Deleted.
771         (MIN_CHAR_FIELD1_OFFICIAL): Deleted.
772         (MAX_CHAR_FIELD1_OFFICIAL): Deleted.
773         (MIN_CHAR_FIELD2_PRIVATE): Deleted.
774         (MAX_CHAR_FIELD2_PRIVATE): Deleted.
775         (MIN_CHAR_FIELD1_PRIVATE): Deleted.
776         (MAX_CHAR_FIELD1_PRIVATE): Deleted.
777         (MULE_CHAR_PRIVATE_OFFSET): Deleted.
778         (MIN_CHAR_PRIVATE_TYPE9N): Deleted.
779         (MAX_CHAR_PRIVATE_TYPE9N): Deleted.
780         (MIN_CHAR_PRIVATE_TYPE9NX9N): Deleted.
781         (MIN_CHAR_OFFICIAL_TYPE9NX9N): Deleted.
782         (MIN_CHAR_COMPOSITION): Deleted.
783         (breakup_char_1): Use `MAX_CHAR_BASIC_LATIN' instead of
784         `CHAR_ASCII_P'; use `0x7f' instead of `CHAR_FIELD3_INTERNAL'.
785
786 1999-09-02  MORIOKA Tomohiko  <tomo@m17n.org>
787
788         * buffer.h: Include mb-utf-8.h in UTF-2000.
789
790         * character.h (BUFBYTE_FIRST_BYTE_P): Moved to mb-utf-8.h.
791
792         * mb-utf-8.h: New file.
793
794 1999-09-02  MORIOKA Tomohiko  <tomo@etl.go.jp>
795
796         * chartab.h (CHAR_TABLE_NON_ASCII_VALUE_UNSAFE): Use `Charset_ID'
797         instead of `int'.
798
799         * mule-charset.h, buffer.h (Charset_ID): New type.
800
801 1999-09-01  MORIOKA Tomohiko  <tomo@etl.go.jp>
802
803         * mule-canna.c (c2mu): Use `MAKE_CHAR',
804         `Vcharset_japanese_jisx0212' and `Vcharset_japanese_jisx0208'
805         instead of `MULE_CHAR_PRIVATE_OFFSET',
806         `LEADING_BYTE_JAPANESE_JISX0212', `LEADING_BYTE_JAPANESE_JISX0208'
807         and `FIELD1_TO_OFFICIAL_LEADING_BYTE'.
808         (m2c): Use `BREAKUP_CHAR' and `XCHARSET_FINAL'.
809
810         * character.h (Vcharset_japanese_jisx0212): New variable
811         definition.
812
813 1999-09-01  MORIOKA Tomohiko  <tomo@etl.go.jp>
814
815         * mule-charset.c (Vcharset_ucs_bmp): New variable in UTF-2000.
816         (charset_by_attributes): Delete array about direction.
817         (latin_a_char_to_charset): New variable in UTF-2000.
818         (latin_a_char_to_byte1): New variable in UTF-2000.
819         (latin_a_char_to_byte2): New variable in UTF-2000.
820         (Qucs_bmp): New variable.
821         (next_allocated_1_byte_leading_byte): Use `Charset_ID' instead of
822         `Bufbyte'.
823         (next_allocated_2_byte_leading_byte): Likewise.
824         (non_ascii_set_charptr_emchar): Likewise.
825         (make_charset): Likewise; add `CHARSET_TYPE_128X128' and
826         `CHARSET_TYPE_256X256' in UTF-2000; modify for
827         `charset_by_attributes'.
828         (get_unallocated_leading_byte): Use `Charset_ID' instead of `int'.
829         (char-charset): Use `CHAR_CHARSET' instead of `CHAR_LEADING_BYTE'
830         and `CHARSET_BY_LEADING_BYTE'.
831         (syms_of_mule_charset): Set up `ucs-bmp'; move setting of
832         `utf-2000-version' to `vars_of_mule_charset'.
833         (vars_of_mule_charset): Modify for `charset_by_attributes'; don't
834         define `leading-code-private-11' in UTF-2000; move setting of
835         `utf-2000-version' from `syms_of_mule_charset'.
836         (complex_vars_of_mule_charset): Set up charset `ucs-bmp' in
837         UTF-2000.
838
839         * character.h (Charset_ID): New type.
840         (LEADING_BYTE_UCS_BMP): New macro.
841         (LEADING_BYTE_CONTROL_1): Changed from 0x8F to 0x81.
842         (CHARSET_ID_OFFSET_94): New macro.
843         (MIN_CHARSET_ID_PRIVATE_94): New macro.
844         (MAX_CHARSET_ID_PRIVATE_94): New macro.
845         (LEADING_BYTE_ASCII): Changed to use CHARSET_ID_OFFSET_94 and
846         final-byte.
847         (LEADING_BYTE_KATAKANA_JISX0201): Likewise.
848         (LEADING_BYTE_LATIN_JISX0201): Likewise.
849         (CHARSET_ID_OFFSET_96): New macro.
850         (LEADING_BYTE_LATIN_ISO8859_1): Changed to use
851         CHARSET_ID_OFFSET_96 and final-byte.
852         (LEADING_BYTE_LATIN_ISO8859_2): Likewise.
853         (LEADING_BYTE_LATIN_ISO8859_3): Likewise.
854         (LEADING_BYTE_LATIN_ISO8859_4): Likewise.
855         (LEADING_BYTE_GREEK_ISO8859_7): Likewise.
856         (LEADING_BYTE_ARABIC_ISO8859_6): Likewise.
857         (LEADING_BYTE_HEBREW_ISO8859_8): Likewise.
858         (LEADING_BYTE_CYRILLIC_ISO8859_5): Likewise.
859         (LEADING_BYTE_LATIN_ISO8859_9): Likewise.
860         (LEADING_BYTE_THAI_TIS620): Likewise.
861         (MIN_LEADING_BYTE_PRIVATE_1): Changed from 0x0D0 to 0xD0.
862         (MAX_LEADING_BYTE_PRIVATE_1): Changed from 0x11f to 0xDF.
863         (CHARSET_ID_OFFSET_94x94): New macro.
864         (LEADING_BYTE_CHINESE_BIG5_1): Changed to use
865         CHARSET_ID_OFFSET_94x94 and final-byte.
866         (LEADING_BYTE_CHINESE_BIG5_2): Likewise.
867         (MIN_LEADING_BYTE_PRIVATE_2): Likewise.
868         (MAX_LEADING_BYTE_PRIVATE_2): Likewise.
869         (LEADING_BYTE_JAPANESE_JISX0208_1978): Likewise.
870         (LEADING_BYTE_CHINESE_GB2312): Likewise.
871         (LEADING_BYTE_JAPANESE_JISX0208): Likewise.
872         (LEADING_BYTE_KOREAN_KSC5601): Likewise.
873         (LEADING_BYTE_JAPANESE_JISX0212): Likewise.
874         (LEADING_BYTE_CHINESE_CCITT_GB): Likewise.
875         (LEADING_BYTE_CHINESE_CNS11643_*): Likewise.
876         (LEADING_BYTE_KOREAN_KPS9566): Likewise.
877         (CHARSET_TYPE_128X128): New macro.
878         (CHARSET_TYPE_256X256): New macro.
879         (XCHARSET_PRIVATE_P): Delete unconditionally.
880         (charset_by_attributes): Delete array about direction.
881         (CHARSET_BY_LEADING_BYTE): Use `Charset_ID' instead of `int'.
882         (CHARSET_BY_ATTRIBUTES): Modify for `charset_by_attributes'.
883         (MIN_CHAR_94): New macro.
884         (MAX_CHAR_94): New macro.
885         (MIN_CHAR_96): New macro.
886         (MAX_CHAR_96): New macro.
887         (MIN_CHAR_94x94): New macro.
888         (MAX_CHAR_94x94): New macro.
889         (MIN_CHAR_96x96): New macro.
890         (MAX_CHAR_96x96): New macro.
891         (FIELD1_TO_PRIVATE_LEADING_BYTE): Use `CHARSET_ID_OFFSET_94x94'.
892         (FIELD1_TO_OFFICIAL_LEADING_BYTE): Likewise.
893         (FIELD2_TO_PRIVATE_LEADING_BYTE): Use `(MIN_LEADING_BYTE_PRIVATE_1
894         - 32)'.
895         (FIELD2_TO_OFFICIAL_LEADING_BYTE): Use `LEADING_BYTE_ASCII'.
896         (MIN_CHAR_FIELD2_OFFICIAL): Deleted.
897         (MAX_CHAR_FIELD2_OFFICIAL): Deleted.
898         (MIN_CHAR_OFFICIAL_TYPE9N): Deleted.
899         (MAX_CHAR_PRIVATE_TYPE9N): Changed.
900         (MAKE_CHAR): Use `XCHARSET_FINAL' instead of
901         `XCHARSET_LEADING_BYTE' to make code-point.
902         (latin_a_char_to_charset): New variable.
903         (latin_a_char_to_byte1): New variable.
904         (latin_a_char_to_byte2): New variable.
905         (breakup_char_1): Use `latin_a_char_to_{charset|byte1|byte2}' for
906         Latin Extended-A; use `CHARSET_BY_ATTRIBUTES' instead of
907         `CHARSET_BY_LEADING_BYTE' to get charset for ISO-2022 characters.
908
909         * insdel.c (find_charsets_in_bufbyte_string): Use `Charset_ID'
910         instead of `unsigned char'; use `MIN_LEADING_BYTE' instead of 128.
911         (find_charsets_in_emchar_string): Likewise.
912         (vars_of_insdel): Don't define local variable `i' in UTF-2000.
913
914         * file-coding.c (Fdecode_big5_char): Use `Charset_ID' instead of
915         `int'.
916         (decode_coding_iso2022): Likewise.
917
918         * toolbar-x.c (x_output_toolbar_button): Use `Charset_ID' instead
919         of `unsigned char'.
920
921         * redisplay.c (redisplay_text_width_emchar_string): Use
922         `Charset_ID' instead of `unsigned char'.
923         (redisplay_frame_text_width_string): Likewise.
924
925         * glyphs.c (glyph_height_internal): Use `Charset_ID' instead of
926         `unsigned char'.
927
928         * faces.h, faces.c (ensure_face_cachel_complete): Use `Charset_ID'
929         instead of `unsigned char'.
930         (face_cachel_charset_font_metric_info): Likewise.
931
932         * chartab.c (print_char_table): Use `Charset_ID' instead of `int'.
933         (get_non_ascii_char_table_value): Likewise.
934         (get_char_table): Likewise.
935         (put_char_table): Likewise.
936         (map_over_other_charset): Likewise.
937         (map_char_table): Likewise.
938
939         * buffer.h (find_charsets_in_bufbyte_string): Use `Charset_ID'
940         instead of `unsigned char'.
941
942 1999-08-31  MORIOKA Tomohiko  <tomo@etl.go.jp>
943
944         * character.h (PRE_LEADING_BYTE_PRIVATE_1): Deleted.
945         (PRE_LEADING_BYTE_PRIVATE_2): Deleted.
946
947         * mule-charset.c (leading_code_private_11): Don't define in
948         UTF-2000.
949
950         * mule-ccl.c (ccl_driver): Don't define `CCL_ReadMultibyteChar2'
951         in UTF-2000 because it is not ported yet and not to use
952         `PRE_LEADING_BYTE_PRIVATE_1' and `PRE_LEADING_BYTE_PRIVATE_2'.
953
954 1999-08-30  MORIOKA Tomohiko  <tomo@etl.go.jp>
955
956         * character.h (LEADING_BYTE_COMPOSITE): Deleted.
957
958 1999-08-29  MORIOKA Tomohiko  <tomo@etl.go.jp>
959
960         * regex.c (re_compile_fastmap): Don't use `LEADING_BYTE_PREFIX_P'
961         in UTF-2000.
962
963         * chartab.h (CHAR_TABLE_NON_ASCII_VALUE_UNSAFE): Use int instead
964         of unsigned char to store leading-byte.
965
966         * chartab.c (get_non_ascii_char_table_value): Don't use
967         `BREAKUP_CHAR_1_UNSAFE' in UTF-2000.
968
969         * file-coding.c (encode_coding_big5): Delete bogus implementation
970         in UTF2000.
971
972         * character.h (LEADING_BYTE_*): Delete definition for
973         non-UTF-2000.
974         (LEADING_BYTE_PRIVATE_P): Deleted unconditionally.
975         (LEADING_BYTE_PREFIX_P): Deleted.
976         (PRIVATE_LEADING_BYTE_PREFIX): Deleted.
977         (BUFBYTE_FIRST_BYTE_P): Delete definition for non-UTF-2000.
978         (BUFBYTE_LEADING_BYTE_P): Deleted.
979         (CHARSET_PRIVATE_P): Deleted unconditionally.
980         (rep_bytes_by_first_byte): Deleted unconditionally.
981         (REP_BYTES_BY_FIRST_BYTE): Delete definition for non-UTF-2000.
982         (FIELD1_TO_PRIVATE_LEADING_BYTE): Likewise.
983         (FIELD1_TO_OFFICIAL_LEADING_BYTE): Likewise.
984         (FIELD2_TO_PRIVATE_LEADING_BYTE): Likewise.
985         (CHAR_FIELD2): Deleted.
986         (CHAR_FIELD3): Deleted.
987         (MAKE_CHAR): Delete definition for non-UTF-2000.
988         (BREAKUP_CHAR_1_UNSAFE): Deleted.
989         (breakup_char_1): New implementation.
990         (CHAR_CHARSET): Use `BREAKUP_CHAR'.
991         (CHAR_LEADING_BYTE): Use `CHAR_CHARSET'.
992
993 1999-08-29  MORIOKA Tomohiko  <tomo@etl.go.jp>
994
995         * character.h (REP_BYTES_BY_FIRST_BYTE): Change order of
996         condition.
997
998 1999-08-28  MORIOKA Tomohiko  <tomo@etl.go.jp>
999
1000         * character.h (LEADING_BYTE_PRIVATE_P): Don't define in UTF2000.
1001         (CHARSET_PRIVATE_P): Likewise.
1002         (XCHARSET_PRIVATE_P): Likewise.
1003         (MAKE_CHAR): Don't use XCHARSET_PRIVATE_P in UTF2000.
1004
1005         * file-coding.c (encode_coding_ucs4): Delete bogus implement in
1006         UTF2000.
1007         (decode_coding_iso2022): Don't use XCHARSET_PRIVATE_P in UTF2000.
1008
1009 1999-08-28  MORIOKA Tomohiko  <tomo@etl.go.jp>
1010
1011         * character.h (LEADING_BYTE_*): Changed in UTF2000.
1012         (NUM_LEADING_BYTES): Changed from 128 to 256.
1013         (FIELD1_TO_PRIVATE_LEADING_BYTE): Change value to 0x80 in UTF2000.
1014         (FIELD1_TO_OFFICIAL_LEADING_BYTE): Change value to 0x80 in
1015         UTF2000.
1016         (FIELD2_TO_PRIVATE_LEADING_BYTE): Change value to 0x80 in UTF2000.
1017
1018         * mule-charset.c (Vcharset_chinese_cns11643_3): New variable in
1019         UTF2000.
1020         (Vcharset_chinese_cns11643_4): New variable in UTF2000.
1021         (Vcharset_chinese_cns11643_5): New variable in UTF2000.
1022         (Vcharset_chinese_cns11643_6): New variable in UTF2000.
1023         (Vcharset_chinese_cns11643_7): New variable in UTF2000.
1024         (Qchinese_cns11643_3): New variable in UTF2000.
1025         (Qchinese_cns11643_4): New variable in UTF2000.
1026         (Qchinese_cns11643_5): New variable in UTF2000.
1027         (Qchinese_cns11643_6): New variable in UTF2000.
1028         (Qchinese_cns11643_7): New variable in UTF2000.
1029         (syms_of_mule_charset): Define `chinese-cns11643-3',
1030         `chinese-cns11643-4', `chinese-cns11643-5', `chinese-cns11643-6'
1031         and `chinese-cns11643-7' in UTF2000.
1032         (vars_of_mule_charset): Initialize
1033         next_allocated_2_byte_leading_byte by LEADING_BYTE_CHINESE_BIG5_2
1034         + 1 in UTF2000.
1035         (complex_vars_of_mule_charset): Setup charset
1036         `chinese-cns11643-3', `chinese-cns11643-4', `chinese-cns11643-5',
1037         `chinese-cns11643-6' and `chinese-cns11643-7' in UTF2000.
1038
1039 1999-08-27  MORIOKA Tomohiko  <tomo@etl.go.jp>
1040
1041         * mule-charset.c: Move setting for `leading-code-private-11' from
1042         `syms_of_mule_charset' to `vars_of_mule_charset'.
1043
1044 1999-08-27  MORIOKA Tomohiko  <tomo@etl.go.jp>
1045
1046         * mule-charset.h (CHARSET_BY_LEADING_BYTE): Use `MIN_LEADING_BYTE'
1047         and `NUM_LEADING_BYTES' in assert.
1048
1049 1999-08-27  MORIOKA Tomohiko  <tomo@etl.go.jp>
1050
1051         * character.h (charset_by_leading_byte): Use `NUM_LEADING_BYTES'
1052         instead of 128.
1053         (CHARSET_BY_LEADING_BYTE): Use `MIN_LEADING_BYTE' and
1054         `NUM_LEADING_BYTES' instead of 128.
1055
1056 1999-08-26  MORIOKA Tomohiko  <tomo@etl.go.jp>
1057
1058         * mule-charset.h (charset_by_leading_byte): Use
1059         `NUM_LEADING_BYTES' instead of 128.
1060         (CHARSET_BY_LEADING_BYTE): Use `MIN_LEADING_BYTE' instead of 128.
1061
1062         * mule-charset.c (charset_by_leading_byte): Use
1063         `NUM_LEADING_BYTES' instead of 128.
1064         (make_charset): Use `MIN_LEADING_BYTE' instead of 128.
1065
1066         * faces.h (FACE_CACHEL_FONT): Use `MIN_LEADING_BYTE' instead of
1067         128.
1068
1069 1999-08-25  MORIOKA Tomohiko  <tomo@etl.go.jp>
1070
1071         * mule-charset.c (syms_of_mule_charset): Update to
1072         0.4 (Shin-Imamiya).
1073
1074 1999-07-13 Daiki Ueno <ueno@ueda.info.waseda.ac.jp>
1075
1076         * file-coding.c (encode_coding_sjis): New implementation for
1077         UTF2000.  (decode_coding_sjis): Ditto.
1078
1079 1999-06-17  MORIOKA Tomohiko  <tomo@etl.go.jp>
1080
1081         * mule-charset.c, character.h (Bytecount rep_bytes_by_first_byte):
1082         Don't define in UTF2000.
1083
1084         * character.h: Include mule-charset.h if CHAR_IS_UCS4 is not
1085         defined.
1086
1087         * redisplay-msw.c, objects-tty.c, objects-msw.c, mule-wnnfns.c,
1088         mule-ccl.c, lstream.h, buffer.h: Include character.h in every
1089         MULE.
1090
1091 1999-06-17  MORIOKA Tomohiko  <tomo@etl.go.jp>
1092
1093         * config.h.in (CHAR_IS_UCS4): New macro.
1094
1095         * mule-charset.c (rep_bytes_by_first_byte): Modify for
1096         conventional MULE representation.
1097         (syms_of_mule_charset): Update to 0.3 (Imamiya).
1098
1099         * mule-charset.h: Reverted to original.
1100
1101         * redisplay-msw.c, objects-tty.c, objects-msw.c, mule-wnnfns.c,
1102         mule-ccl.c, lstream.h, buffer.h: Use "character.h" instead of
1103         "mule-charset.h" if CHAR_IS_UCS4 is defined.
1104
1105         * character.h: New file.
1106
1107         * file-coding.c (Fmake_coding_system): Set 1 to
1108         `codesys->fixed.size' if TYPE is `no-conversion' and UTF2000 is
1109         defined.
1110         (encode_coding_no_conversion): New implementation for UTF2000.
1111
1112         * file-coding.h (struct Lisp_Coding_System): Add new member
1113         `fixed.size'.
1114
1115 1999-06-16  MORIOKA Tomohiko  <tomo@etl.go.jp>
1116
1117         * file-coding.c (decode_coding_iso2022): Code-point arguments of
1118         `MAKE_CHAR' must be smaller than 0x80 in UTF2000.
1119         (encode_coding_iso2022): New implementation for UTF2000.
1120
1121 1999-06-15  MORIOKA Tomohiko  <tomo@etl.go.jp>
1122
1123         * mule-canna.c (c2mu): New implementation for UTF2000.
1124         (m2c): Likewise.
1125
1126 1999-06-15  MORIOKA Tomohiko  <tomo@etl.go.jp>
1127
1128         * file-coding.c (encode_coding_no_conversion): Modify for UTF2000.
1129
1130 1999-06-15  MORIOKA Tomohiko  <tomo@etl.go.jp>
1131
1132         * file-coding.c (reset_encoding_stream): Set 0 to
1133         `str->iso2022.current_char_boundary' in UTF2000.
1134         (encode_utf8): Don't define in UTF2000.
1135         (encode_coding_utf8): New implementation for UTF-8 representation
1136         of UTF2000.
1137         (complex_vars_of_file_coding): Define coding-system `utf-8'.
1138
1139 1999-06-15  MORIOKA Tomohiko  <tomo@etl.go.jp>
1140
1141         * mule.c (vars_of_mule): Provide `utf-2000' in UTF2000.
1142
1143         * mule-charset.h (BUFBYTE_FIRST_BYTE_P): Modify for UTF-8 in
1144         UTF2000.
1145         (REP_BYTES_BY_FIRST_BYTE): Likewise.
1146
1147         * buffer.h (non_ascii_valid_char_p): Don't define in UTF2000.
1148
1149         * mule-charset.c (non_ascii_set_charptr_emchar): Don't define
1150         local variables `lb', `c1', `c2' and `charset' in UTF2000; encode
1151         as UTF-8 in UTF2000.
1152         (non_ascii_charptr_emchar): Decode as UTF-8 in UTF2000.
1153         (non_ascii_valid_char_p): Don't define in UTF2000.
1154         (non_ascii_charptr_copy_char): Add case 5 and 6 in UTF2000.
1155         (Lstream_get_emchar_1): Likewise.
1156         (utf-2000-version): New variable in UTF2000.
1157
1158         * lread.c (read_escape): Add new reader `u'.
1159
1160         * insdel.c (three_to_one_table): Don't define in UTF2000.
1161         (bufpos_to_bytind_func): Use `buf->text->mule_size' instead of
1162         `buf->text->mule_shifter' and `buf->text->mule_three_p' in
1163         UTF2000.
1164         (bytind_to_bufpos_func): Likewise.
1165         (buffer_mule_signal_inserted_region): Likewise.
1166         (vars_of_insdel): Don't initialize `three_to_one_table'.
1167         (init_buffer_text): Use `buf->text->mule_size' instead of
1168         `buf->text->mule_shifter' and `buf->text->mule_three_p' in
1169         UTF2000.
1170
1171         * file-coding.c (DECODE_ADD_BINARY_CHAR): New implementation for
1172         UTF-8 representation in UTF2000.
1173         (DECODE_ADD_UCS_CHAR): New macro in UTF2000.
1174         (decode_ucs4): Use `DECODE_ADD_UCS_CHAR' in UTF2000.
1175         (decode_coding_iso2022): Don't define local variable `lb' in
1176         UTF2000; don't use LEADING_BYTE in UTF2000; use
1177         `DECODE_ADD_UCS_CHAR' in UTF2000.
1178         (convert_to_external_format): Decode as UTF-8 in UTF2000.
1179
1180         * config.h.in (UTF2000): New macro.
1181
1182         * buffer.h (struct buffer_text): Add new member `mule_size' and
1183         don't add `mule_shifter' and `mule_three_p' in UTF2000.
1184         (valid_char_p): Return always 1 in UTF2000.
1185         (MAX_EMCHAR_LEN): 6 in UTF2000.
1186         (three_to_one_table): Don't define in UTF2000.
1187         (real_bufpos_to_bytind): Modify for UTF-8 representation in
1188         UTF2000.
1189         (real_bytind_to_bufpos): Likewise.
1190
1191         * alloc.c (Fmake_string): Add case 5 and 6 for UTF2000.
1192
1193 1999-06-10  MORIOKA Tomohiko  <tomo@etl.go.jp>
1194
1195         * mule-charset.c (rep_bytes_by_first_byte): Modified for character
1196         representation change.
1197         (Vutf_2000_version): New variable.
1198         (leading_code_private_11): New variable.
1199         (syms_of_mule_charset): Add new variables `utf-2000-version' and
1200         `leading-code-private-11'.
1201
1202         * mule-charset.h (LEADING_BYTE_CHINESE_CCITT_GB): New macro.
1203         (LEADING_BYTE_CHINESE_BIG5_1): Changed to 0x96 temporally.
1204         (LEADING_BYTE_CHINESE_CNS11643_1): Changed to 0x97.
1205         (LEADING_BYTE_CHINESE_CNS11643_2): Changed to 0x98.
1206         (LEADING_BYTE_CHINESE_CNS11643_3): New macro.
1207         (LEADING_BYTE_CHINESE_CNS11643_4): Likewise.
1208         (LEADING_BYTE_CHINESE_CNS11643_5): Likewise.
1209         (LEADING_BYTE_CHINESE_CNS11643_6): Likewise.
1210         (LEADING_BYTE_CHINESE_CNS11643_7): Likewise [but not used].
1211         (LEADING_BYTE_CHINESE_BIG5_2): Changed to 0x9D temporally.
1212         (LEADING_BYTE_KOREAN_KPS9566): New macro [but not used].
1213         (CHAR_FIELD1_MASK): Changed to (0x7F << 14).
1214         (MIN_CHAR_GREEK): New macro.
1215         (MAX_CHAR_GREEK): New macro.
1216         (MIN_CHAR_CYRILLIC): New macro.
1217         (MAX_CHAR_CYRILLIC): New macro.
1218         (MIN_CHAR_HEBREW): New macro.
1219         (MAX_CHAR_HEBREW): New macro.
1220         (MIN_CHAR_THAI): New macro.
1221         (MAX_CHAR_THAI): New macro.
1222         (MIN_CHAR_HALFWIDTH_KATAKANA): New macro.
1223         (MAX_CHAR_HALFWIDTH_KATAKANA): New macro.
1224         (CHAR_FIELD2_INTERNAL): New macro [renamed from `CHAR_FIELD2'.
1225         (CHAR_FIELD3_INTERNAL): New macro [renamed from `CHAR_FIELD3'.
1226         (FIELD1_TO_PRIVATE_LEADING_BYTE): Changed to 0xc0.
1227         (FIELD1_TO_OFFICIAL_LEADING_BYTE): Changed to 0x50.
1228         (CHAR_FIELD2): New inline function.
1229         (CHAR_FIELD3): New inline function.
1230         (MULE_CHAR_PRIVATE_OFFSET): New macro.
1231         (MIN_CHAR_OFFICIAL_TYPE9N): Shifted to `MULE_CHAR_PRIVATE_OFFSET'.
1232         (MIN_CHAR_PRIVATE_TYPE9N): Likewise.
1233         (MIN_CHAR_PRIVATE_TYPE9NX9N): Likewise.
1234         (MIN_CHAR_OFFICIAL_TYPE9NX9N): Likewise.
1235         (MIN_CHAR_COMPOSITION): Likewise.
1236         (CHAR_LEADING_BYTE): Modified for character representation change.
1237         (MAKE_CHAR): Likewise.
1238
1239         * lisp.h (Vcharset_latin_iso8859_1): New variable.
1240         (Vcharset_greek_iso8859_7): Likewise.
1241         (Vcharset_cyrillic_iso8859_5): Likewise.
1242         (Vcharset_hebrew_iso8859_8): Likewise.
1243         (Vcharset_thai_tis620): Likewise.
1244         (Vcharset_katakana_jisx0201): Likewise.
1245
1246 1999-08-17  MORIOKA Tomohiko  <tomo@etl.go.jp>
1247
1248         * file-coding.c (determine_real_coding_system): Treat `coding:'
1249         cookie.
1250
1251 1999-08-16  MORIOKA Tomohiko  <tomo@etl.go.jp>
1252
1253         * file-coding.c (struct decoding_stream): New member `counter'.
1254         (reset_decoding_stream): Initialize `counter'.
1255         (decode_coding_ucs4): Use `counter'.
1256         (decode_coding_utf8): Likewise.
1257
1258 1999-07-30  XEmacs Build Bot <builds@cvs.xemacs.org>
1259
1260         * XEmacs 21.2.19 is released
1261
1262 1999-07-27  Jeff Miller  <jmiller@smart.net>
1263
1264         * add a "#ifdef HAVE_MENUBARS"  wrapper to gui.c around 
1265           menubar_show_keybindings.
1266
1267 1999-07-23  SL Baur  <steve@miho>
1268
1269         * mule-charset.c (syms_of_mule_charset): Delete duplicated
1270         definition of Qccl_program.
1271
1272         * mule-ccl.h: Make a global declaration of it here.
1273
1274 1999-07-20  Bob Weiner  <weiner@beopen.com>
1275
1276         * s/sco7.h: Added from rr@sco.com.
1277
1278 1999-06-25  MORIOKA Tomohiko  <tomo@etl.go.jp>
1279
1280         * mule-ccl.c (ccl_driver): Fix `CCL_WriteMultibyteChar2'.
1281
1282 1999-06-24  MORIOKA Tomohiko  <tomo@etl.go.jp>
1283
1284         * file-coding.c (mule_decode): Setup `str->ccl.last_block'.
1285         (mule_encode): Likewise.
1286
1287         * mule-ccl.c (Qccl_program): New variable.
1288         (CCL_SUSPEND): New macro.
1289         (CCL_INVALID_CMD): New macro.
1290         (CCL_READ_CHAR): Don't regard as invalid command while processing
1291         the last block even if input is empty; use
1292         `CCL_STAT_SUSPEND_BY_SRC' instead of `CCL_STAT_SUSPEND'.
1293         (vars_of_mule_ccl): Setup `Qccl_program' and `Qccl_program_idx'.
1294
1295         * mule-ccl.h (CCL_STAT_SUCCESS): Moved from mule-ccl.c.
1296         (CCL_STAT_SUSPEND_BY_SRC): Imported from Emacs 20.3.10.
1297         (CCL_STAT_SUSPEND_BY_DST): Likewise.
1298         (CCL_STAT_INVALID_CMD): Moved from mule-ccl.c; change value from 2.
1299         (CCL_STAT_QUIT): Moved from mule-ccl.c; change value from 3.
1300
1301 1999-05-04  Ken'ichi Handa  <handa@gnu.org>
1302
1303         * mule-ccl.h (struct ccl_program): New member stack_idx.
1304
1305         * mule-ccl.c (ccl_prog_stack_struct): Declare it as static.
1306         (ccl_driver): Setup stack_idx and ccl_prog correctly.  Update them
1307         before returing.
1308         (setup_ccl_program): Initialize ccl->stack_idx to 0.
1309
1310 1998-10-12  Kenichi Handa  <handa@etl.go.jp>
1311
1312         * mule-ccl.c (CCL_DECODE_SJIS, CCL_ENCODE_SJIS): Swap the
1313         definitions.
1314
1315 1998-08-18  Kenichi Handa  <handa@etl.go.jp>
1316
1317         * mule-ccl.c (CCL_READ_CHAR): If eof is encounterd while
1318         processing the last block, don't just finish but processes eol
1319         block of the current CCL program.
1320         (ccl_driver): Add a new jump label ccl_repeat for the above
1321         change.
1322
1323 1998-04-15  Kenichi Handa  <handa@etl.go.jp>
1324
1325         * mule-ccl.c: Typo in comments fixed.
1326         (Qccl_program_idx): New variables.
1327         (CCL_ReadMultibyteChar2): Macro name changed from
1328         CCL_ReadMultibyteCharacter.
1329         (CCL_WriteMultibyteChar2): Macro name changed from
1330         CCL_WriteMultibyteChar2.
1331         (ccl_driver): Adjusted for the above changes.
1332         (resolve_symbol_ccl_program): New function.
1333         (Fccl_execute): The arg CCL-PROGRAM can be a symbol of CCL
1334         program.  If CCL-PRGRAM is a vector, convert symbols in it to ID
1335         numbers by resolve_symbol_ccl_program.
1336         (Fccl_execute_on_string): Likewise.
1337         (Fregister_ccl_program): If the arg CCL-PRGRAM is a vector,
1338         convert symbols in it to ID numbers by resolve_symbol_ccl_program.
1339
1340 1998-01-21  Kenichi Handa  <handa@etl.go.jp>
1341
1342         * mule-ccl.h: (struct ccl_program): New member private_state.
1343
1344         * mule-ccl.c
1345         (CCL_Call): Fix the comment.
1346         (CCL_ReadMultibyteCharacter, CCL_WriteMultibyteCharacter): New
1347         macros for CCL Commands.
1348         (EXCMD): New macro.
1349         (ccl_driver): New case lable `CCL_Extention'.
1350         (setup_ccl_program): Initialize the member `private_state' of CCL.
1351
1352 1999-07-08  Katsumi Yamaoka <yamaoka@jpl.org>
1353
1354         * keymap.c (copy_keymap_internal): Inherit the default binding.
1355
1356 1999-07-14  Kazuyuki IENAGA <kazz@imasy.or.jp>
1357
1358         * event-Xt.c (handle_focus_event_1): Re-enable Motif/XIM to get
1359         focus the event (XIM_focus_event).
1360         (emacs_Xt_handle_magic_event): No side effect on Motif/XIM because 
1361         XIM_SetGeometry does nothing in input_method_motif.c, but re-unify
1362         the interface for future use (XIM_SetGeometry).
1363         * redisplay-x.c (x_output_string): Re-enable Motif/XIM to set spot 
1364         location (XIM_SetSpotLocation).
1365         (x_output_eol_cursor): Ditto.
1366
1367 1999-07-17  Gunnar Evermann  <ge204@eng.cam.ac.uk>
1368
1369         * gdbinit (pobj): change lrecord_foo to &lrecord_foo to match
1370         Olivier's change to lrecord.h of 1999-04-22
1371
1372 1999-07-20  Robert Pluim  <rpluim@bigfoot.com>
1373
1374         * gutter.c (redraw_exposed_gutter): Change type of pos from
1375         enum toolbar_pos -> enum gutter_pos, since former is only defined
1376         if toolbar support is.
1377
1378 1999-07-19  Andy Piper  <andy@xemacs.org>
1379
1380         * glyphs-x.c (x_resize_subwindow): cope with widgets as well as
1381         subwindows.
1382
1383         * gutter.c (gutter_validate): new function for the gutter specifier.
1384         (specifier_type_create_gutter): declare specifier validator.
1385
1386         * buffer.h (INC_CHARBYTIND): add for no error checking version.
1387
1388 1999-07-18  Andy Piper  <andy@xemacs.org>
1389
1390         * redisplay.c (add_emchar_rune): use XSTRING_DATA not string_data.
1391
1392         * glyphs-msw.c (console_type_create_glyphs_mswindows): add
1393         resize_subwindow.
1394         (mswindows_resize_subwindow): new function.
1395
1396         * gutter.c (redraw_exposed_gutter): only reset the
1397         current_display_lines if non-zero.
1398         (Fgutter_pixel_height): new function.
1399         (Fgutter_pixel_width): new function.
1400
1401         * event-msw.c (mswindows_wnd_proc): set the mask of the parameter
1402         we want to retrive from the tab control.
1403
1404 1999-07-17  Andy Piper  <andy@xemacs.org>
1405
1406         * window.c (change_window_height): mark gutters changed when we're
1407         done.
1408
1409         * gutter.c (specifier_vars_of_gutter): make defaults more
1410         sensible.
1411
1412         * gutter.h (WINDOW_REAL_GUTTER_BORDER_WIDTH): adjust to be 0 for 0
1413         height gutter.
1414         (DEFAULT_GUTTER_WIDTH): change.
1415         (DEFAULT_GUTTER_BORDER_WIDTH): change.
1416
1417 1999-07-18  Andy Piper  <andy@xemacs.org>
1418
1419         * redisplay.c (add_emchar_rune): use XSTRING_DATA not string_data.
1420
1421 1999-07-16  Andy Piper  <andy@xemacs.org>
1422
1423         * frame.c (Fmake_frame): call init_frame_gutters().
1424
1425         * redisplay.c (add_emchar_rune): use string functions if we are
1426         working with a string.
1427         (position_redisplay_data_type): add string element.
1428
1429 1999-07-15  Andy Piper  <andy@xemacs.org>
1430
1431         * winslots.h: add real_gutter_size slots to hold the actual gutter
1432         size. This is important for autodetected sizes.
1433
1434         * gutter.c (calculate_gutter_size): calculate size for gutters
1435         that have 'autodetect size.
1436
1437         * redisplay-msw.c (mswindows_output_vertical_divider): adjust
1438         extent of divider for gutters.
1439
1440         * redisplay-x.c (x_output_vertical_divider): adjust extent of
1441         divider for gutters.
1442
1443         * scrollbar.c (update_scrollbar_instance): adjust scrollbar
1444         position to take into account the gutters.
1445
1446         * redisplay.c (generate_modeline): adjust modeline position to
1447         take into account the gutters.
1448
1449 1999-07-14  Andy Piper  <andy@xemacs.org>
1450
1451         * gutter.c (frame_topmost_window): new function.
1452         (frame_bottommost_window): ditto.
1453         (frame_leftmost_window): ditto.
1454         (frame_rightmost_window): ditto.
1455
1456 1999-07-13  Andy Piper  <andy@xemacs.org>
1457
1458         * redisplay.c (calculate_display_line_boundaries): use text
1459         boundaries so that gutters get handled properly.
1460
1461 1999-07-12  Andy Piper  <andy@xemacs.org>
1462
1463         * glyphs-x.c (x_widget_instantiate): set the font Motif-style if
1464         we're using Motif.
1465
1466         * redisplay-output.c (redisplay_clear_to_window_end): generalised
1467         from redisplay-x.c
1468
1469         * redisplay-x.c (redisplay_clear_to_window_end): moved to
1470         redisplay.c
1471         
1472         * redisplay-msw.c (redisplay_clear_to_window_end): deleted.
1473
1474         * gutter.c: new file - implements gutters. All new functions are
1475         semantically equivalent to the toolbar functions.
1476         (gutter_was_visible): new function.
1477         (get_gutter_coords): ditto.
1478         (output_gutter): ditto.
1479         (clear_gutter): ditto.
1480         (update_frame_gutters): ditto.
1481         (redraw_exposed_gutter): ditto.
1482         (redraw_exposed_gutters): ditto.
1483         (free_frame_gutters): ditto.
1484         (init_frame_gutters): ditto.
1485         (decode_gutter_position): ditto.
1486         (Fset_default_gutter_position): ditto.
1487         (Fset_default_gutter_position): ditto.
1488         (Fdefault_gutter_position): ditto.
1489         (gutter_after_change): ditto.
1490         (Fgutter_specifier_p): ditto.
1491         (recompute_overlaying_specifier): ditto.
1492         (gutter_specs_changed): ditto.
1493         (default_gutter_specs_changed): ditto.
1494         (gutter_geometry_changed_in_window): ditto.
1495         (default_gutter_size_changed_in_window): ditto.
1496         (default_gutter_border_width_changed_in_window): ditto.
1497         (default_gutter_visible_p_changed_in_window): ditto.
1498         (syms_of_gutter): ditto.
1499         (vars_of_gutter): ditto.
1500         (specifier_type_create_gutter): ditto.
1501         (specifier_vars_of_gutter): ditto.
1502
1503         * gutter.h: new file. Contains gutter constants and sizing macros
1504         similar to those for the toolbar.
1505
1506         * winslots.h: add gutter variables.
1507
1508         * window.h: declare window_is_* functions.
1509
1510         * window.c (window_is_lowest): make non-static.
1511         (window_is_highest): ditto.
1512         (window_top_toolbar_height): deleted.
1513         (window_bottom_toolbar_height): deleted.
1514         (window_left_toolbar_width): deleted.
1515         (window_right_toolbar_width): deleted.
1516         (window_top_gutter_height): add gutter sizing.
1517         (window_bottom_gutter_height): ditto.
1518         (window_left_gutter_width): ditto.
1519         (window_right_gutter_width): ditto.
1520
1521         * symsinit.h: declarations for gutters vars etc.
1522
1523         * search.c (bi_find_next_emchar_in_string): new function.
1524
1525         * scrollbar.c (update_scrollbar_instance): remove reference to
1526         window_bottom_toolbar_height which did nothing.
1527
1528         * redisplay.h (struct display_line): add face indices for
1529         overriding defaults in output_display_line.
1530         Add gutter_changed flags and declarations.
1531
1532         * redisplay.c (create_string_text_block): new function, similar to
1533         create_text_block but for strings. Display tables etc are used
1534         from the currently selected window.
1535         (generate_string_display_line): ditto. Similar to
1536         generate_display_line.
1537         (generate_displayable_area): generate display lines for a given
1538         area on a frame. Input is the string, with associated extents, to
1539         display.
1540         (redisplay_frame): add gutter_changed check.
1541         (redisplay_device): ditto.
1542         (redisplay_without_hooks): ditto.
1543
1544         * redisplay-x.c (bevel_modeline): moved to redisplay.c.
1545         (x_redraw_exposed_area): redraw exposed gutters.
1546         (x_bevel_area): new redisplay device method.
1547         (x_type_create_redisplay_mswindows): add bevel_area device method.
1548         (x_output_display_block): fiddly Martin-style cleanup.
1549         (x_output_vertical_divider): use bevel_area.
1550
1551         * redisplay-output.c (output_display_line): check display_lines
1552         for face information before using defaults.
1553         (bevel_modeline): new function, calls bevel_area with appropriate
1554         values.
1555
1556         * redisplay-msw.c (bevel_modeline): moved to redisplay.c.
1557         (mswindows_redraw_exposed_area): redraw exposed gutters.
1558         (mswindows_bevel_area): new redisplay device method.
1559         (console_type_create_redisplay_mswindows): add bevel_area device
1560         method.
1561
1562         * indent.c (string_column_at_point): add column_at_point but for
1563         strings.
1564
1565         * glyphs-x.c (image_instantiator_format_create_glyphs_x): only
1566         instantiate widgets that we have a toolkit for.
1567
1568         * general.c: add Qgutter.
1569
1570         * frame.h (struct frame): add display lines for gutters and
1571         visibility flags.
1572
1573         * frame.c (set_frame_selected_window): mark gutters changed.
1574
1575         * emacs.c (main_1): add gutter initialisation.
1576
1577         * device.h (struct device): add gutter_changed flag and macros to
1578         manipulate it.
1579
1580         * console.h (struct console_methods): new bevel area redisplay
1581         method.
1582
1583         * buffer.h (REAL_INC_CHARBYTIND): new macro for strings as
1584         REAL_INC_BYTIND is for buffers.
1585         (INC_CHARPTR): ditto.
1586
1587         * Makefile.in.in (objs): add gutter.o
1588
1589 1999-07-13  XEmacs Build Bot <builds@cvs.xemacs.org>
1590
1591         * XEmacs 21.2.18 is released
1592
1593 1999-07-08  SL Baur  <steve@mule.m17n.org>
1594
1595         * event-Xt.c (handle_focus_event_1): Guard FRAME_X_XIC with
1596         XIM_XLIB.
1597         (emacs_Xt_handle_magic_event): Ditto.
1598         * redisplay-x.c (x_output_string): Ditto.
1599         (x_output_eol_cursor): Ditto.
1600
1601 1999-06-30  Kazuyuki IENAGA <kazz@imasy.or.jp>
1602
1603         *  event-Xt.c, input-method-xlib.c, redisplay-x.c: Avoid the
1604         problem that when XIM is destroyed or missed with some reason,
1605         xemacs will die.  Now xim=xlib waits the XIM will be ready and
1606         endures the case of XIM end up.
1607
1608 1999-07-03  Gunnar Evermann  <ge204@eng.cam.ac.uk>
1609
1610         * tooltalk.c (init_tooltalk): save signal actions for SIGQUIT,
1611         SIGINT and SIGCHLD before calling tt_open and restore the
1612         afterwards. This fixes e.g. the zombie subprocesses on Solaris
1613
1614 1999-07-06  SL Baur  <steve@xemacs.org>
1615
1616         * s/linux.h: gcc-2.8 changes for powerpc
1617         From Justin Vallon <vallon@mindspring.com>
1618
1619 1999-07-05  Didier Verna  <verna@inf.enst.fr>
1620
1621         * indent.c: new symbol Qcoerce.
1622         (Fmove_to_column): use it + doc string update.
1623
1624 1999-07-04  Andy Piper  <andy@xemacs.org>
1625
1626         * console.c: undo earlier Fprovide changes.
1627         * fns.c: ditto.
1628         * console.h: ditto.
1629
1630         * console-tty.c (image_instantiator_format_create_glyphs_tty): new
1631         function. validate appropriate image formats for tty.
1632
1633         * glyphs.h (INITIALIZE_IMAGE_INSTANTIATOR_FORMAT_NO_SYM):
1634         initialize consoles parameter.
1635         (struct image_instantiator_methods): add consoles parameter.
1636         (IIFORMAT_VALID_CONSOLE): new function. validate the format on the
1637         console.
1638         (INITIALIZE_DEVICE_IIFORMAT): validate the format on the given
1639         console.
1640
1641         * glyphs-msw.c: declare instantiators for later use.
1642         (image_instantiator_format_create_glyphs_mswindows): validate xpm
1643         and friends on the mswindows console.
1644         * glyphs-x.c: ditto.
1645
1646         * glyphs.c (valid_image_instantiator_format_p): disallow glyphs
1647         that have not been registered on the supplied device.
1648         (Fvalid_image_instantiator_format_p): add locale argument.
1649         (instantiate_image_instantiator): valid image instantiator on the
1650         device.
1651
1652         * symsinit.h: add image_instantiator_format_create_glyphs_tty()
1653         declaration.
1654
1655         * emacs.c (main_1): add call to
1656         image_instantiator_format_create_glyphs_tty().
1657
1658 1999-06-29  Olivier Galibert  <galibert@pobox.com>
1659
1660         * lisp.h: Add #include <stddef.h>.
1661
1662         * sysdep.c: Remove #include <stddef.h>.
1663         * symbols.c: Remove #include <stddef.h>.
1664         * sheap.c: Remove #include <stddef.h>.
1665         * opaque.c: Remove #include <stddef.h>.
1666         * nt.c: Remove #include <stddef.h>.
1667         * mule-charset.c: Remove #include <stddef.h>.
1668         * marker.c: Remove #include <stddef.h>.
1669         * file-coding.c: Remove #include <stddef.h>.
1670         * extents.c: Remove #include <stddef.h>.
1671         * elhash.c: Remove #include <stddef.h>.
1672         * data.c: Remove #include <stddef.h>.
1673         * chartab.c: Remove #include <stddef.h>.
1674         * bytecode.c: Remove #include <stddef.h>.
1675         * alloc.c: Remove #include <stddef.h>.  Fix vector description
1676
1677 1999-06-30  SL Baur  <steve@miho.m17n.org>
1678
1679         * editfns.c: Document "%s" format spec.
1680         Suggested by Bob Weiner <weiner@altrasoft.com>
1681
1682 1999-06-29  Andy Piper  <andy@xemacs.org>
1683
1684         * event-msw.c: fix definition booboo.
1685
1686 1999-06-28  Andy Piper  <andy@xemacs.org>
1687
1688         * glyphs-x.c: change tree -> tree-view, progress ->
1689         progress_gauge, edit -> edit-field, tab -> tab-control, combo ->
1690         combo-box.
1691         (complex_vars_of_glyphs_x): provide-on-console the implemented
1692         widget types.
1693
1694         * glyphs-msw.c: ditto.
1695         (complex_vars_of_glyphs_mswindows): ditto.
1696
1697         * lisp.h: add Fprovide_on_console.
1698
1699         * fns.c (Ffeaturep): add extra optional console argument.
1700         (Fprovide_on_console): like Fprovide but provides only on the
1701         specified console-type.
1702         (Frequire): check console-features as well as global features.
1703
1704         * console.c (Fconsole_features): new function. return features for
1705         this console.
1706         (syms_of_console): add Fconsole_features.
1707
1708         * console.h (CONMETH_FEATURES): new function for accessing features.
1709         (CONSOLE_FEATURES): ditto.
1710         (struct console_methods): add features slot.
1711         (INITIALIZE_CONSOLE_TYPE): initialize features slot.
1712
1713 1999-06-28  Andy Piper  <andy@xemacs.org>
1714
1715         * event-Xt.c (handle_focus_event_1): conditionally compile for
1716         X11R5.
1717
1718         * s/cygwin32.h: fix me website address.
1719
1720         * event-msw.c: add NMHDR for pre b20 cygwin builds.
1721
1722         * gui-x.c (button_item_to_widget_value): only add callback if it
1723         is non-nil.
1724
1725         * glyphs-x.c: add progress, edit and combo instantiators.
1726         (x_widget_set_property): new function. uses lwlib to set widget
1727         values.
1728         (x_widget_property): new function. uses lwlib to get widget
1729         values.
1730         (x_button_instantiate): support images in buttons.
1731         (x_button_property): new function. use lwlib to get the selected
1732         state.
1733         (x_progress_instantiate): new function for instantiating progress
1734         gauges.
1735         (x_progress_set_property): new function. sets the progress gauge
1736         position.
1737         (x_edit_instantiate): new function. for instantiating edit fields.
1738         (x_combo_instantiate): new function. for instantiating combo
1739         boxes.
1740         (image_instantiator_format_create_glyphs_x): add new device ii
1741         formats.
1742
1743         * glyphs-msw.c (mswindows_tab_instantiate): remove redundant var.
1744
1745         * console.h (CONSOLE_FEATURES): new features accesor.
1746
1747         * conslots.h (MARKED_SLOT): add features entry.
1748
1749 1999-06-25  Andy Piper  <andy@xemacs.org>
1750
1751         * menubar-x.c (menu_item_descriptor_to_widget_value_1): use new
1752         gui functions.
1753
1754         * menubar-msw.c: move MAX_MENUITEM_LENGTH to gui.h
1755
1756         * gui.h (struct Lisp_Gui_Item): add accelerator.
1757
1758         * gui.c (gui_item_add_keyval_pair): deal with accelerators.
1759         (gui_item_init): ditto.
1760         (gui_add_item_keywords_to_plist): ditto.
1761         (mark_gui_item): ditto.
1762         (gui_item_hash): ditto.
1763         (gui_item_accelerator): new function.
1764         (gui_name_accelerator): new function stolen from gui-x.c
1765
1766         * gui-x.c (popup_selection_callback): always define. mark
1767         subwindows changed after calling a callback.
1768         (menu_name_to_accelerator): deleted.
1769         (button_item_to_widget_value): forward gui_item things to gui_item
1770         functions.
1771
1772         * glyphs-x.h (struct x_subwindow_data): add data for widgets. add
1773         appropriate accesors.
1774
1775         * glyphs-x.c: declare new glyph formats.
1776         (x_finalize_image_instance): unmanage and destroy widgets if they
1777         exist.
1778         (x_unmap_subwindow): handle widgets specially.
1779         (x_map_subwindow): ditto. offset display of widgets by offset of
1780         text widget within container.
1781         (x_update_subwindow): new function. call lw_modify_all_widgets
1782         when we are a widget.
1783         (x_widget_instantiate): new function for generically creating
1784         widgets-glyphs. toolkit specifics forwarded to lwlib.
1785         (x_button_instantiate): new function for instantiating
1786         widgets-glyph buttons.
1787         (console_type_create_glyphs_x): register update_subwindow.
1788         (image_instantiator_format_create_glyphs_x): register widget and
1789         button types.
1790
1791         * event-msw.c (mswindows_wnd_proc): remove redundant variable.
1792
1793         * event-Xt.c (x_event_to_emacs_event): call handle_focus_event_1
1794         when we get a button press in case we do not have the focus.
1795         (handle_focus_event_1): set the keyboard focus to the text widget
1796         if we do not have it.
1797
1798         * dialog-x.c (dbox_descriptor_to_widget_value): use new gui_item
1799         functions.
1800
1801 1999-06-24  SL Baur  <steve@miho.m17n.org>
1802
1803         * syntax.c (scan_words): Restore non-Mule code.
1804         (word_constituent_p): Restore.
1805
1806 1999-06-23  Olivier Galibert  <galibert@pobox.com>
1807
1808         * config.h.in: Add missing #undef *_USER_DEFINED.
1809
1810 1999-06-23  SL Baur  <steve@miho.m17n.org>
1811
1812         * lisp.h (set_bit_vector_bit): Force promotion to unsigned long
1813         int (fixes a 64-bit problem).
1814
1815         * chartab.c (word_boundary_p): Use EQ not == for lisp_object
1816         comparison.
1817
1818 1999-03-23  Michael Sperber [Mr. Preprocessor]  <sperber@informatik.uni-tuebingen.de>
1819
1820         * paths.h.in (PATH_DOC): Made doc-directory configurable.
1821
1822 1999-06-22  Olivier Galibert  <galibert@pobox.com>
1823
1824         * lrecord.h: Added basic external description system.
1825
1826         * symbols.c: Added symbol, symbol-value-buffer-local,
1827         symbol-value-lisp-magic and symbol-value-varalias description.
1828         * mule-charset.c: Added charset description.
1829         * marker.c: Added marker description.
1830         * keymap.c: Added keymap description.
1831         * glyphs.c: Added glyph description.
1832         * floatfns.c: Added float description.
1833         * file-coding.c: Added coding-system description.
1834         * extents.c: Added extent description.
1835         * elhash.c: Added hash-table description.
1836         * data.c: Added weak-list desciption.
1837         * chartab.c: Added char-table-entry and char-table description.
1838         * bytecode.c: Added compiled-function description.
1839         * alloc.c: Added cons, vector and string description.
1840
1841 1999-06-22  Olivier Galibert  <galibert@pobox.com>
1842
1843         * lrecord.h (struct lrecord_header): Reduced size to 4 bytes.
1844         Updated everything to the removal of the "flags" substructure.
1845
1846         * lisp.h (subr_lheader_initializer): Updated.
1847         * symeval.h (symbol_value_forward_lheader_initializer): Updated.
1848
1849 1999-06-20  MORIOKA Tomohiko  <tomo@etl.go.jp>
1850
1851         * syntax.c (word_constituent_p): Deleted.
1852         (scan_words): Use `WORD_BOUNDARY_P'.
1853
1854         * chartab.c (Vword_combining_categories): New variable.
1855         (Vword_separating_categories): Likewise.
1856         (CATEGORYP): New macro.
1857         (CATEGORY_SET): Likewise.
1858         (CATEGORY_MEMBER): Likewise.
1859         (word_boundary_p): New function.
1860         (complex_vars_of_chartab): Set up new variable
1861         `word-combining-categories' and `word-separating-categories'.
1862
1863 1999-06-18  Olivier Galibert  <galibert@pobox.com>
1864
1865         * lrecord.h: Added description as a placehold in the lrecord
1866         implementation structures.  Added the parameter to all constructor
1867         defines.
1868
1869         * alloc.c: Added placeholders.
1870         * buffer.c: Ditto.
1871         * bytecode.c: Ditto.
1872         * chartab.c: Ditto.
1873         * console.c: Ditto.
1874         * data.c: Ditto.
1875         * database.c: Ditto.
1876         * device.c: Ditto.
1877         * eldap.c: Ditto.
1878         * elhash.c: Ditto.
1879         * eval.c: Ditto.
1880         * event-stream.c: Ditto.
1881         * events.c: Ditto.
1882         * extents.c: Ditto.
1883         * faces.c: Ditto.
1884         * file-coding.c: Ditto.
1885         * floatfns.c: Ditto.
1886         * fns.c: Ditto.
1887         * frame.c: Ditto.
1888         * glyphs.c: Ditto.
1889         * gui-x.c: Ditto.
1890         * keymap.c: Ditto.
1891         * lstream.c: Ditto.
1892         * marker.c: Ditto.
1893         * mule-charset.c: Ditto.
1894         * objects.c: Ditto.
1895         * opaque.c: Ditto.
1896         * process.c: Ditto.
1897         * rangetab.c: Ditto.
1898         * specifier.c: Ditto.
1899         * symbols.c: Ditto.
1900         * toolbar.c: Ditto.
1901         * tooltalk.c: Ditto.
1902         * window.c: Ditto.
1903
1904 1999-06-22  XEmacs Build Bot <builds@cvs.xemacs.org>
1905
1906         * XEmacs 21.2.17 is released
1907
1908 1999-06-13  Oscar Figueiredo  <oscar@xemacs.org>
1909
1910         * config.h.in (HAVE_LDAP_SET_OPTION): New define
1911         (HAVE_LDAP_GET_LDERRNO): Ditto
1912         (HAVE_LDAP_RESULT2ERROR): Ditto
1913         (HAVE_LDAP_PARSE_RESULT): Ditto
1914         (HAVE_UMICH_LDAP): Removed
1915         (HAVE_NS_LDAP): Removed
1916
1917         * eldap.h (struct Lisp_LDAP): Removed the `livep' member as
1918         suggested by Olivier Galibert
1919         (CHECK_LIVE_LDAP): Test on `ld' instead of `livep'
1920
1921         * eldap.c: Take the removal of `livep' into account in all the
1922         necessary functions
1923         (signal_ldap_error): Take two additional parameters
1924         Added new finer compilation conditions in order to use
1925         ldap_parse_result or ldap_result2error if available
1926         (Fldap_open): Conform to this new API
1927         (Fldap_search_internal): Ditto
1928
1929 1999-06-17  SL Baur  <steve@miho.m17n.org>
1930
1931         * data.c (struct int_or_double): Should use EMACS_INT not int.
1932
1933 1999-06-16  Norbert Koch  <n.koch@eai-delta.de>
1934
1935         * redisplay-msw.c: Run 'ccl_driver' with 'CCL_MODE_ENCODING' as in
1936         redisplay-x.c
1937
1938 1999-06-12  MORIOKA Tomohiko  <tomo@etl.go.jp>
1939
1940         * redisplay-x.c (separate_textual_runs): Run `ccl_driver' with
1941         `CCL_MODE_ENCODING'.
1942
1943         * file-coding.c (mule_decode): Run `ccl_driver' with
1944         `CCL_MODE_DECODING'.
1945         (mule_encode): Run `ccl_driver' with `CCL_MODE_ENCODING'.
1946
1947         * mule-ccl.c (CCL_WRITE_CHAR): Refer `conversion_mode'.
1948         (ccl_driver): Add new argument `conversion_mode'.
1949         (Fccl_execute): Run `ccl_driver' with `CCL_MODE_ENCODING'.
1950         (Fccl_execute_on_string): Likewise [perhaps it is better to add
1951         new optional argument].
1952
1953         * mule-ccl.h (CCL_MODE_ENCODING): New macro.
1954         (CCL_MODE_DECODING): New macro.
1955         (ccl_driver): Add new argument `conversion_mode'.
1956
1957 1999-06-15  SL Baur  <steve@miho.m17n.org>
1958
1959         * mule-charset.c (Fsplit_char): New subr.
1960         (Fchar_octet): delete.
1961         (syms_of_mule_charset): DEFSUBR it.
1962
1963 1999-06-13  Andy Piper  <andy@xemacs.org>
1964
1965         * menubar.h: update declarations involving gui_items.
1966
1967         * lisp.h: declare Lisp_Gui_Item.
1968
1969         * glyphs.h (struct Lisp_Image_Instance): update type of gui_item.
1970
1971         * glyphs.c (mark_image_instance): modify for new lisp-based gui_items.
1972         (print_image_instance): ditto.
1973         (image_instance_equal): ditto.
1974         (image_instance_hash): ditto.
1975
1976         * event-msw.c (mswindows_need_event): assert badly_p status.
1977         (mswindows_wnd_proc): modify WM_NOTIFY handling to cope with
1978         callbacks in tree-view and tab-control widgets.
1979         (emacs_mswindows_next_event): modify use of
1980         mswindows_dequeue_dispatch_event.
1981
1982         * dialog-msw.c (mswindows_popup_dialog_box): modify for new
1983         lisp-based gui_items.
1984
1985         * glyphs-msw.c (mswindows_update_subwindow): update use of
1986         gui_items.
1987         (mswindows_register_gui_item): new function.
1988         (mswindows_register_gui_item): fix to use lisp gui_items.
1989         (mswindows_widget_instantiate): ditto.
1990         (mswindows_button_instantiate): ditto.
1991         (add_tree_item): new function to recursively add tree view
1992         elements.
1993         (add_tree_item_list): ditto.
1994         (mswindows_tree_instantiate): new function. instantiate tree view
1995         controls.
1996         (add_tab_item): new function to add tabs to a tab control.
1997         (mswindows_tab_instantiate): new function. instantiate tab
1998         controls.
1999         (image_instantiator_format_create_glyphs_mswindows): add tree view
2000         and tab controls.
2001         (vars_of_glyphs_mswindows): ditto.
2002
2003         * glyphs-widget.c (check_valid_item_list_1): allow nested lists in
2004         item lists.
2005         (check_valid_item_list): ditto.
2006         (initialize_widget_image_instance): fix to use new lisp gui_item.
2007         (widget_instantiate_1): allow the setting of default textwidth in
2008         characters.
2009         (widget_instantiate): change to use new widget_instantiate_1
2010         signature.
2011         (combo_instantiate): ditto.
2012         (static_instantiate): ditto.
2013         (tab_instantiate): new function for tab widgets.
2014         (image_instantiator_format_create_glyphs_widget): add tab and tree
2015         view widgets.
2016
2017         * menubar-msw.c (displayable_menu_item): convert to use lisp
2018         gui_items.
2019         (populate_menu_add_item): ditto.
2020         (populate_or_checksum_helper): ditto.
2021
2022         * menubar.c (menu_parse_submenu_keywords): convert to use lisp
2023         gui_items.
2024         (Fmenu_find_real_submenu): ditto.
2025
2026         * gui.h (struct Lisp_Gui_Item): make gui_item a lisp oebjct.
2027
2028         * gui.c (gui_item_add_keyval_pair): gui_items are now lisp
2029         objects, convert functions that use them accordingly.
2030         (gui_item_init): ditto.
2031         (gui_item_active_p): ditto.
2032         (gui_item_selected_p): ditto.
2033         (gui_item_included_p): ditto.
2034         (gui_item_display_flush_left): ditto.
2035         (gui_item_display_flush_right): ditto.
2036         (mark_gui_item): ditto.
2037         (allocate_gui_item): new function to create a gui_item.
2038         (make_gui_item_from_keywords_internal): ditto. create and return a
2039         gui_item as well as setting keywords.
2040         (gui_parse_item_keywords): ditto.
2041         (gui_parse_item_keywords_no_errors): ditto.
2042         (gui_add_item_keywords_to_plist): new function, not yet used.
2043         (gui_item_hash): new function.
2044         (gui_item_id_hash): use gui_item_hash.
2045         (gui_item_equal): new function.
2046         (print_gui_item): new function.
2047
2048 1999-06-11  XEmacs Build Bot <builds@cvs.xemacs.org>
2049
2050         * XEmacs 21.2.16 is released
2051
2052 1999-06-10  Andy Piper  <andy@xemacs.org>
2053
2054         * select-msw.c (mswindows_own_selection): only set the clipboard
2055         if asked.
2056         (mswindows_get_foreign_selection): only get the clipboard if
2057         asked.
2058         (mswindows_disown_selection): only disown the clipboard if asked.
2059
2060 1999-06-03  MORIOKA Tomohiko  <tomo@etl.go.jp>
2061
2062         * file-coding.c (coding_system_from_mask): Use `raw-text' instead
2063         of `no-conversion'.
2064         (complex_vars_of_mule_coding): Use `raw-text' as the coding-system
2065         of coding-category `no-conversion'.
2066
2067 1999-06-03  MORIOKA Tomohiko  <tomo@etl.go.jp>
2068
2069         * file-coding.c (Qraw_text): New variable.
2070         (syms_of_mule_coding): Add new symbol `raw-text'.
2071         (complex_vars_of_mule_coding): Add new coding-system `raw-text';
2072         define coding-system `binary' independently; define coding-system
2073         `no-conversion' as an alias for `raw-text'.
2074
2075         * file-coding.h (Qraw_text): New variable.
2076
2077 1999-06-08  SL Baur  <steve@xemacs.org>
2078
2079         * s/decosf4-0.h: Explicitly #undef SYSTEM_MALLOC.
2080
2081 1999-06-06  Hrvoje Niksic  <hniksic@srce.hr>
2082
2083         * fns.c (MIME_LINE_LENGTH): Default to 72, as in mimencode and
2084         base64.el.
2085         (base64_decode_1): Signal errors instead of returning -1.
2086
2087 1999-06-07  Hrvoje Niksic  <hniksic@srce.hr>
2088
2089         * mule-charset.c (Fmake_char): Update docstring.
2090
2091 1999-06-07  Hrvoje Niksic  <hniksic@srce.hr>
2092
2093         * fns.c (Fstring_lessp): Actually increment the Bufbyte pointers.
2094
2095 1999-06-05  Hrvoje Niksic  <hniksic@srce.hr>
2096
2097         * fns.c (base64_decode_1): Allow and ignore any non-base64
2098         characters in input.
2099
2100 1999-05-27  Olivier Galibert  <galibert@pobox.com>
2101
2102         * emacs.c (Fdump_emacs): Add clear_message() lost with the removal
2103         of report_pure_usage().
2104
2105 1999-06-04  Hrvoje Niksic  <hniksic@srce.hr>
2106
2107         * fns.c (Fstring_lessp): Remove O(n^2) under Mule.
2108
2109 1999-06-04  XEmacs Build Bot <builds@cvs.xemacs.org>
2110
2111         * XEmacs 21.2.15 is released
2112
2113 1999-06-01  Hirokazu FUKUI  <fukui@atesoft.advantest.co.jp>
2114
2115         * frame.c (Fset_mouse_position):
2116         (Fset_mouse_pixel_position):
2117         * window.c (Fsplit_window):
2118         (Fmove_to_window_line):
2119         Fix crash when invoking functions with an already-deleted window
2120         argument.
2121
2122         * indent.c (vertical_motion_1):
2123         (vmotion_pixels):
2124         (Fvertical_motion_pixels):
2125         * window.c (Fwindow_displayed_text_pixel_height):
2126         Fix error message when invoking functions with an already-deleted
2127         window argument.
2128
2129 1999-06-01  Jan Vroonhof  <vroonhof@math.ethz.ch>
2130
2131         * sysdep.c (request_sigio_on_device): Guard against glibc
2132         2.1's stub streams implementation.
2133
2134 1999-06-03  SL Baur  <steve@xemacs.org>
2135
2136         * config.h.in:
2137         * emacs.c:  Implement x.y.z version numbers
2138         From Jan Vroonhof <vroonhof@math.ethz.ch>
2139
2140 1999-05-20  MORIOKA Tomohiko  <tomo@etl.go.jp>
2141
2142         * mule-charset.c (complex_vars_of_mule_charset): Registry of
2143         japanese-jisx0208-1978 should not match with "jisx0208.1983" nor
2144         "jisc6226.1983".
2145
2146 1999-06-03  SL Baur  <steve@xemacs.org>
2147
2148         * frame-x.c:
2149         * device-x.c: rename session option to wmcommand.
2150         From Oliver Graf <ograf@rhein-zeitung.de>
2151
2152 1999-05-27  Hrvoje Niksic  <hniksic@srce.hr>
2153
2154         * fns.c (Fsubstring): Don't traverse the same region twice with
2155         charcount_to_bytecount().
2156
2157 1999-06-03  SL Baur  <steve@steve1.m17n.org>
2158
2159         * m/alpha.h (SYSTEM_MALLOC): Fix indented preprocessor directive
2160         garbage.
2161
2162         * s/decosf4-0.h: Defining ORDINARY_LINK here is redundant (and it
2163         doesn't really work as is implied by the commentary).
2164         Don't define SYSTEM_MALLOC so the old GNU malloc can be used.
2165
2166 1999-06-02  SL Baur  <steve@steve1.m17n.org>
2167
2168         * symsinit.h: Declare vars_of_ntproc.
2169         * emacs.c (main_1): Call it.
2170
2171         * ntproc.c (syms_of_ntproc): Move variable initializations from
2172         here ...
2173         (vars_of_ntproc): ... to here [new function].
2174
2175         * file-coding.c (syms_of_file_coding): Rename.
2176         (vars_of_file_coding): Ditto.
2177         (complex_vars_of_file_coding): Ditto.
2178
2179         * symsinit.h: Rename *_mule_coding to *_file_coding.
2180
2181         * emacs.c (main_1): Call them by the proper name.
2182
2183         * device-msw.c (syms_of_device_mswindows): Move variable
2184         initializations from here ...
2185         (vars_of_device_mswindows): ... to here.
2186
2187         * chartab.c (vars_of_chartab): New function.
2188
2189         * symsinit.h: New function, vars_of_chartab.
2190
2191         * emacs.c (main_1): Call it.
2192
2193         * mule-canna.c (syms_of_mule_canna): Move CANNA initialization ...
2194         (vars_of_mule_canna): ... to here.
2195
2196         * mule-ccl.c (vars_of_mule_ccl): New function.  Move variable
2197         initializations out of syms_of_mule_ccl.
2198
2199         * symsinit.h: Declare new function vars_of_mule_ccl.
2200
2201         * emacs.c (main_1): Call it.
2202
2203 1999-05-27  Hrvoje Niksic  <hniksic@srce.hr>
2204
2205         * fns.c (base64_decode_1): Ignore whitespace.
2206
2207 1999-05-27  Hrvoje Niksic  <hniksic@srce.hr>
2208
2209         * mule-charset.c (Fmake_char): Strip the eighth bit off ARG1 and
2210         ARG2.
2211
2212 1999-05-21  Andy Piper  <andy@xemacs.org>
2213
2214         * xselect.c: deleted.
2215
2216         * symsinit.h: declare select initialisation.
2217
2218         * select.h: new file. declare commonly used select functions and
2219         variables.
2220
2221         * select.c: new file. generalised from xselect.c.
2222         (clean_local_selection_data): moved from xselect.c.
2223         (get_local_selection): ditto. device specific pieces called via a
2224         devmeth.
2225         (handle_selection_clear): ditto.
2226         (Fown_selection_internal): renamed and generalised from
2227         Fx_own_selection_internal. moved from xselect.c.
2228         (Fdisown_selection_internal): ditto.
2229         (Fselection_owner_p): ditto.
2230         (Fselection_exists_p): ditto.
2231         (Fget_selection_internal): ditto.
2232         (syms_of_select): new function. QXXXX values moved from xselect.c
2233         (vars_of_select): new function. selection_converter_alist,
2234         lost_selection_hooks moved and renamed from xselect.c
2235
2236         * select-x.c: renamed from xselect.c.
2237         (x_own_selection): converted to device specific. non-X-specific
2238         bits moved to select.c.
2239         (x_get_foreign_selection): ditto.
2240         (x_disown_selection): ditto.
2241         (x_selection_exists_p): ditto.
2242         (console_type_create_select_x): new function.
2243
2244         * select-msw.c (mswindows_own_selection): new device method to set
2245         the clipboard when we 'own' the selection.
2246         (mswindows_get_foreign_selection): new device method to get the
2247         clipboard.
2248         (mswindows_disown_selection): new device method to delete the
2249         selection when we 'disown' it.
2250         (console_type_create_select_mswindows): new function.
2251
2252         * emacs.c (main_1): add select to things to initialise.
2253
2254         * console.h (struct console_methods): new console methods for
2255         selection.
2256
2257         * Makefile.in.in (x_objs): xselect.c renamed to select-x.c
2258
2259 1999-05-20  Hrvoje Niksic  <hniksic@srce.hr>
2260
2261         * print.c (long_to_string): Install a faster version.
2262
2263 1999-05-16  Andy Piper  <andy@xemacs.org>
2264
2265         * ntproc.c (syms_of_ntproc): default
2266         win32-start-process-share-console to t.
2267
2268 1999-05-14  Hrvoje Niksic  <hniksic@srce.hr>
2269
2270         * config.h.in: Do it here.
2271
2272         * bytecode.c: Don't define ERROR_CHECK_TYPECHECK here.
2273
2274 1999-05-14  Andy Piper  <andy@xemacs.org>
2275
2276         * toolbar-msw.c (mswindows_output_toolbar): hash on something
2277         hashable.
2278
2279 1999-05-14  XEmacs Build Bot <builds@cvs.xemacs.org>
2280
2281         * XEmacs 21.2.14 is released
2282
2283 1999-05-12  Andy Piper  <andy@xemacs.org>
2284
2285         * ntproc.c (sys_spawnve): kludge argv[0] in a MS compatible way.
2286
2287 1999-05-11  Gunnar Evermann  <ge204@eng.cam.ac.uk>
2288
2289         * emacs.c (Frun_emacs_from_temacs): (re)alloc natgs+2 entries for
2290         run_temacs_argv array -- fixes random memory corruption crash
2291
2292 1999-05-12  Jan Vroonhof  <vroonhof@math.ethz.ch>
2293
2294         * window.c (Fcurrent_window_configuration):
2295         Save minibuffer height;
2296
2297         * window.c (set_window_configuration): use it.
2298
2299 1999-05-10  Robert Pluim  <rpluim@bigfoot.com>
2300
2301         * lisp.h (NNUNGCPRO): fix typo in name of DEBUG_GCPRO version
2302
2303 1999-04-21  Jan Vroonhof  <vroonhof@math.ethz.ch>
2304
2305         * redisplay.c (redisplay_window): Do not put data
2306         in the line start cache if it is not guaranteed to be correct
2307
2308 1999-04-02  Jan Vroonhof  <vroonhof@math.ethz.ch>
2309
2310         * window.c (struct window_config): Removed frame
2311         size members.
2312         (window_config_equal): No longer compare frame sizes.
2313         (Fset_window_configuration): Resize old top window to fit in the
2314         current frame directly, no longer use a fake frame resize.
2315         (Fcurrent_window_configuration): No longer save frame size
2316
2317 1999-05-11  Andy Piper  <andy@xemacs.org>
2318
2319         * ntproc.c (sys_spawnve): actually assign argv[0] instead of the
2320         first character.
2321
2322 1999-05-10  Hrvoje Niksic  <hniksic@srce.hr>
2323
2324         * sysdep.c (init_system_name): If gethostname gives a proper
2325         domain name, don't look further for one.
2326
2327 1999-05-09  Hrvoje Niksic  <hniksic@srce.hr>
2328
2329         * symbols.c (Fintern): Avoid frequent XSYMBOL (foo).
2330         (Fintern_soft): Accept a symbol argument.
2331
2332 1999-05-06  Hrvoje Niksic  <hniksic@srce.hr>
2333
2334         * symbols.c (Fintern): ...do it here.
2335
2336         * lread.c (read_atom): Don't handle keywords here.
2337
2338 1999-05-06  Hrvoje Niksic  <hniksic@srce.hr>
2339
2340         * symbols.c (reject_constant_symbols): Just use SYMBOL_IS_KEYWORD.
2341
2342 1999-05-03  Olivier Galibert  <galibert@pobox.com>
2343
2344         * lisp.h (SYMBOL_IS_KEYWORD): A symbol can be a keyword only if it
2345         is interned in the main obarray.
2346
2347 1999-04-23  Gunnar Evermann  <ge204@eng.cam.ac.uk>
2348
2349         * menubar-x.c (pre_activate_callback): set accelerator field in
2350         "No menu" entries to nil. Avoid crash in
2351         command_builder_operate_menu_accelerator
2352
2353 1999-05-03  Olivier Galibert  <galibert@pobox.com>
2354
2355         * symeval.h (symbol_value_forward_lheader_initializer): Ditto.
2356
2357         * lisp.h (DEFUN): Fix lrecord header initialisation.
2358
2359 1999-05-02  Andy Piper  <andy@xemacs.org>
2360
2361         * objects-msw.c (mswindows_font_instance_truename): add a ';'.
2362
2363         * ntproc.c (sys_kill): cast using MS mandated defines.
2364
2365 1999-04-29  Andy Piper  <andy@xemacs.org>
2366
2367         * m/intel386.h: remove redundant definitions.
2368
2369         * s/mingw32.h: new header for mingw32.
2370
2371         * unexnt.c: (open_input_file): function moved to nt.c.
2372         (close_file_data): ditto.
2373         (rva_to_section): function moved to ntproc.
2374
2375         * symsinit.h: declare syms_of_ntproc();
2376
2377         * objects-msw.c (mswindows_font_instance_truename): new function.
2378
2379         * ntproc.c: remove many warnings.
2380         (_sys_read_ahead): moved from nt.c and made static.
2381         (rva_to_section): moved from unexnt.c but not defined under
2382         mingw32.
2383         (win32_executable_type): implement what we can for mingw32
2384         headers.
2385         (sys_spawnve): fix bad MULE/GCPRO bug in filename handling.
2386
2387         * ntheap.h: remove declarations of functions that are now static.
2388
2389         * ntheap.c: support static heap.
2390
2391         * nt.h: conditionalise X_OK definition.
2392
2393         * nt.c: eliminate many warnings and support mingw32.
2394         (open_input_file): function moved from unexnt.c and made static
2395         (close_file_data): ditto.
2396         (_sys_read_ahead): moved to ntproc.c
2397
2398         * emacs.c: make sure syms_of_ntptroc gets called under windows.
2399
2400         * console-msw.h: support mingw32.
2401         * getloadavg.c: ditto.
2402         * ntplay.c: ditto.
2403         * sysdep.c: ditto.
2404         * sysdir.h: ditto.
2405         * systime.h: ditto.
2406         * systty.h: ditto.
2407
2408         * config.h.in: dont turn on DEBUG_ENCAPSULATION by default because
2409         some systems don't have all of the encapsulated system calls.
2410
2411         * callproc.c: warning elimination.
2412         * dired-msw.c: ditto.
2413         * process-nt.c: ditto.
2414         * realpath.c: ditto.
2415
2416         * Makefile.in.in: tweak : and ; for building under mswindows.
2417
2418 1999-04-26  Michael Harnois  <mharnois@willinet.net>
2419
2420         * eldap.c (allocate_ldap): Adapt to the new semantics of
2421         alloc_lcrecord_type().
2422
2423 1999-03-16  MORIOKA Tomohiko  <tomo@etl.go.jp>
2424
2425         * file-coding.c (DECODE_HANDLE_END_OF_CONVERSION): fixed.
2426
2427 1998-09-04  MORIOKA Tomohiko  <morioka@jaist.ac.jp>
2428
2429         * Delete mule-coding.c and mule-coding.h because they are not
2430         used.
2431
2432 1999-04-22  Gunnar Evermann  <ge204@eng.cam.ac.uk>
2433
2434         * objects.c (print_font_instance): Check for NILP(f->device),
2435         i.e. Vthe_null_font_instance.
2436         (font_instance_truename_internal): ditto.
2437         (Ffont_instance_properties): ditto.
2438
2439 1999-04-22  Olivier Galibert  <galibert@pobox.com>
2440
2441         * lrecord.h (DECLARE_LRECORD): lrecord_implementation isn't an
2442         array anymore.
2443
2444 1999-04-22  Hrvoje Niksic  <hniksic@srce.hr>
2445
2446         * Makefile.in.in (tests): Don't mention tests explicitly -- makes
2447         it easier to add new ones.
2448
2449 1999-04-22  Hrvoje Niksic  <hniksic@srce.hr>
2450
2451         * symbols.c (reject_constant_symbols): Ditto.
2452         (init_symbols_once_early): Ditto.
2453
2454         * print.c (print_symbol): Don't use ->obarray.
2455
2456         * symbols.c (Funintern): Ditto.
2457
2458         * alloc.c (Fmake_symbol): Don't set ->obarray.
2459
2460         * lisp.h (struct Lisp_Symbol): Removed .obarray field.
2461
2462         * symbols.c (init_symbols_once_early): Removed
2463         Vpure_uninterned_symbol_table.
2464         (Fintern): Don't store to ->obarray field.
2465
2466 1999-04-22  Hrvoje Niksic  <hniksic@srce.hr>
2467
2468         * data.c (vars_of_data): Default debug_issue_ebola_notices to 0.
2469         (eq_with_ebola_notice): Remove abracadabra support.
2470
2471 1999-04-11  Oscar Figueiredo  <Oscar.Figueiredo@di.epfl.ch>
2472
2473         * eldap.c (Fldap_search_internal): Add a new parameter `withdn' to
2474         retrieve the distinguished names of entries
2475
2476 1999-03-08  Martin Buchholz  <martin@xemacs.org>
2477
2478         * lread.c (read_escape): Make hex escapes read only two hex digits.
2479
2480 1999-04-05  Olivier Galibert  <galibert@pobox.com>
2481
2482         * Makefile.in.in: Remove puresize-adjust.h and recursive makes.
2483         * make-src-depend: Remove puresize-adjust.h.
2484         * src-headers: Remove puresize-adjust.h.
2485         * config.h.in: Kill everything purespace/gung-ho related.
2486
2487         * dbxrc: Make gung-ho mandatory.
2488         * gdbinit: Ditto.
2489
2490         * lrecord.h: Make gung-ho mandatory.  Remove pure flag and add
2491         c_readonly and lisp_readonly.  Remove implementation arrays.
2492         (C_READONLY_RECORD_HEADER_P): Added.
2493         (LISP_READONLY_RECORD_HEADER_P): Added.
2494         (SET_C_READONLY_RECORD_HEADER): Added.
2495         (SET_LISP_READONLY_RECORD_HEADER): Added.
2496
2497         * lisp.h: Kill everything purespace/non gung-ho related.
2498         (CHECK_C_WRITEABLE): Added.
2499         (CHECK_LISP_WRITEABLE): Added.
2500         (C_READONLY): Added.
2501         (LISP_READONLY): Added.
2502
2503         * lisp-union.h: Make gung-ho mandatory.
2504         * lisp-disunion.h: Ditto.
2505
2506         * alloc.c: Kill everything purespace/non  gung-ho related. Fix all
2507         set_lheader_implementation calls.
2508         (c_readonly): Added.
2509         (lisp_readonly): Added.
2510         (make_string_nocopy): Added.
2511         (Fpurecopy):  Changed to do  nothing.   Kept the old documentation
2512         for reference purposes for the next patches.
2513         (sweep_lcrecords_1): Don't free C readonly lcrecords.
2514         (sweep_bit_vectors_1): Don't free C readonly bitvectors.
2515         (SWEEP_FIXED_TYPE_BLOCK): Don't free C readonly lrecords.
2516
2517         * fns.c: Make gung-ho mandatory.
2518         (Fput): CHECK_IMPURE -> CHECK_LISP_WRITEABLE.
2519         (Fremprop): Ditto.
2520         (Ffillarray): Ditto.
2521
2522         * data.c: Make gung-ho mandatory.
2523         (pure_write_error): Removed.
2524         (c_write_error): Added.
2525         (lisp_write_error): Added.
2526         (Fsetcar): CHECK_IMPURE -> CHECK_LISP_WRITEABLE.
2527         (Fsetcdr): Ditto.
2528         (Faset): Ditto.
2529
2530         * symbols.c: Make gung-ho mandatory.  make_pure_pname ->
2531                   make_string or make_string_nocopy.  Fix various
2532                   alloc_lcrecord_type.
2533
2534         * lread.c: Remove everything purespace related.
2535         (Flocate_file_clear_hashing): purified -> c_readonly.
2536         (locate_file): Ditto.
2537         (read_atom): make_pure_pname -> make_string.
2538
2539         * emacs.c (Frun_emacs_from_temacs): Remove purespace stats
2540                   reporting.
2541         (Fdump_emacs): Ditto.
2542
2543         * print.c (print_internal): Make gung-ho mandatory.
2544         * ntheap.c (sbrk): Ditto.
2545         * mem-limits.h (EXCEEDS_LISP_PTR): Ditto
2546         * symeval.h (symbol_value_forward_lheader_initializer): Ditto.
2547
2548         * sheap.c (more_static_core): Remove puresize-adjust.h from
2549                   message.
2550
2551         * syntax.c (complex_vars_of_syntax): make_pure_string ->
2552                   make_string_nocopy.
2553         * keymap.c (make_keymap): Fix alloc_lcrecord_type.
2554         (vars_of_keymap): make_pure_string -> make_string_nocopy.
2555         * events.c (deinitialize_event): Fix set_lheader_implementation.
2556         (zero_event): Ditto.
2557         * specifier.c (make_specifier_internal): Fix alloc_lcrecord.
2558         * menubar-x.c (set_frame_menubar): Fix alloc_lcrecord_type.
2559         * mule-charset.c (make_charset): Ditto.
2560         * console.c (allocate_console): Ditto.
2561         (complex_vars_of_console): Ditto.
2562         * file-coding.c (allocate_coding_system): Ditto.
2563         * device.c (allocate_device): Ditto
2564         * gui-x.c (gcpro_popup_callbacks): Ditto.
2565         * extents.c (allocate_extent_auxiliary): Ditto.
2566         (allocate_extent_info): Ditto.
2567         (copy_extent): Ditto.
2568         * glyphs.c (allocate_image_instance): Ditto.
2569         (allocate_glyph): Ditto.
2570         * frame.c (allocate_frame_core): Ditto.
2571         * database.c (allocate_database): Ditto.
2572         * tooltalk.c (make_tooltalk_message): Ditto.
2573         (make_tooltalk_pattern): Ditto.
2574         * rangetab.c (Fmake_range_table): Ditto.
2575         (Fcopy_range_table): Ditto.
2576         * process.c (make_process_internal): Ditto.
2577         * chartab.c (Fmake_char_table): Ditto.
2578         (make_char_table_entry): Ditto.
2579         (copy_char_table_entry): Ditto.
2580         (Fcopy_char_table): Ditto.
2581         * elhash.c (make_general_lisp_hash_table): Ditto.
2582         (Fcopy_hash_table): Ditto.
2583         * buffer.c (allocate_buffer): Ditto.
2584         (complex_vars_of_buffer): Ditto.
2585         * event-stream.c (allocate_command_builder): Ditto.
2586         * objects.c (Fmake_color_instance): Ditto.
2587         (Fmake_font_instance): Ditto.
2588         (vars_of_objects): Ditto.
2589         * toolbar.c (update_toolbar_button): Ditto.
2590         * window.c (allocate_window): Ditto.
2591         (make_dummy_parent): Ditto.
2592         (Fcurrent_window_configuration): Fix alloc_lcrecord.
2593         (vars_of_window): Fix make_lcrecord_list.
2594         * faces.c (allocate_face): Fix alloc_lcrecord_type. pure_list ->
2595                   Flist.
2596         * lstream.c (Lstream_new): Fix make_lcrecord_list.
2597         * opaque.c (make_opaque): Fix alloc_lrecord.
2598         (make_opaque_list): Fix alloc_lrecord_type.
2599
2600 1999-04-19  Hrvoje Niksic  <hniksic@srce.hr>
2601
2602         * process.c (Fstart_process_internal): Ditto.
2603
2604         * ntproc.c (sys_spawnve): Use Vlisp_EXEC_SUFFIXES when calling
2605         locate_file().
2606
2607         * glyphs-x.c (x_locate_pixmap_file): Ditto.
2608
2609         * glyphs-msw.c (mswindows_locate_pixmap_file): Fix call to
2610         locate_file().
2611
2612         * emodules.c (vars_of_module): New variable Vmodule_extensions.
2613         (emodules_load): Use it when calling locate_file().
2614
2615         * emacs.c (main_1): Use Vlisp_EXEC_SUFFIXES when calling
2616         locate_file().
2617
2618         * callproc.c: Vlisp_EXEC_SUFFIXES: New variable.
2619         (vars_of_callproc): Initialize it.
2620         (Fcall_process_internal): Use it when calling locate_file().
2621
2622         * alloc.c (disksave_object_finalization): Use
2623         Flocate_file_clear_hashing().
2624
2625         * lread.c (Flocate_file_clear_hashing): Clear all hasing when
2626         given `t' as argument.
2627
2628 1999-04-18  Hrvoje Niksic  <hniksic@srce.hr>
2629
2630         * lread.c (locate_file): Expand `pathel' when appropriate.
2631         (Flocate_file_clear_hashing): Expand path elements.
2632         (Flocate_file_clear_hashing): Use Vlocate_file_hash_table.
2633
2634         * dired.c (make_directory_hash_table): Create the hash-table only
2635         if the directory open is successful.
2636
2637         * lread.c (decode_mode_1): New function.
2638         (decode_mode): Ditto.
2639         (Flocate_file): Use them.
2640         (Flocate_file): Expand FILENAME.
2641         (locate_file_map_suffixes): New function.
2642         (locate_file_in_directory_mapper): New function.
2643         (locate_file_in_directory): Use locate_file_in_directory_mapper()
2644         and locate_file_map_suffixes().
2645         (locate_file_construct_suffixed_files): Use
2646         locate_file_map_suffixes().
2647         (locate_file_without_hash): Don't GCPRO path.
2648         (Flocate_file_clear_hashing): Use EXTERNAL_LIST_LOOP.
2649         (syms_of_lread): Remove Qlocate_file_hash_table.
2650         (locate_file_find_directory_hash_table): Use
2651         Vlocate_file_hash_table.
2652         (locate_file_refresh_hashing): Ditto.
2653
2654         * lread.c: Renamed read_objects to Vread_objects.
2655
2656 1999-04-16  Olivier Galibert  <galibert@pobox.com>
2657
2658         * mule-charset.c: Generally resync with fsf 20.3 charset
2659         interface.
2660         (make_charset): Add long and short name.  Use id instead of
2661         leading byte.
2662         (Fmake_charset): Ditto.
2663         (Fmake_reverse_direction_charset): Ditto.
2664         (Fcharset_property): Ditto.
2665         (Fcharset_short_name): Added.
2666         (Fcharset_long_name): Added.
2667         (Fcharset_description): Renamed from charset-doc-string.
2668         (syms_of_mule_charset): Synced symbols.
2669         (complex_vars_of_mule_charset): Synced charsets.
2670
2671         * mule-charset.h: Removed leading byte (uses id instead), added
2672         short and long name.
2673
2674 1999-04-15  Hrvoje Niksic  <hniksic@srce.hr>
2675
2676         * file-coding.c (Fdefine_coding_system_alias): New function.
2677
2678 1999-04-08  Olivier Galibert  <galibert@pobox.com>
2679
2680         * mule-charset.c (complex_vars_of_mule_charset): Allow all iso8859
2681         and -ascii fonts for displaying ascii instead of iso8859-1 only.
2682
2683 1998-12-14  Hrvoje Niksic  <hniksic@srce.hr>
2684
2685         * extents.c (set_extent_glyph_1): Make sure that the glyph we
2686         attach to the extent is valid.
2687
2688 1998-12-12  Hrvoje Niksic  <hniksic@srce.hr>
2689
2690         * dired.c (user_name_completion): Mule-ize.
2691         (user_name_completion): Use xmalloc/xrealloc/xfree.
2692         (user_name_completion): Use DO_REALLOC.
2693         (user_name_completion): Cut down the number of static variables;
2694         use a structure.
2695         (user_name_completion): Username completion is always
2696         case-sensitive.
2697
2698 1998-12-06  Hrvoje Niksic  <hniksic@srce.hr>
2699
2700         * fns.c (base64_decode_1): Remove COUNTER.
2701         (base64_decode_1): Accept CRLF in addition to CR.
2702         (base64_decode_1): Disallow a stray character after final EOF; the
2703         check was probably a remnant of buggy recode code.
2704
2705 1998-12-05  Hrvoje Niksic  <hniksic@srce.hr>
2706
2707         * fns.c (init_provide_once): Provide `base64'.
2708
2709 1998-12-04  Hrvoje Niksic  <hniksic@srce.hr>
2710
2711         * fns.c (XMALLOC_UNBIND): Include SPECCOUNT argument, for clarity.
2712         (Fbase64_encode_region): If buffer is read-only, bail out early.
2713         (Fbase64_decode_region): Ditto.
2714         (Fbase64_encode_region): Initialize SPECCOUNT to pacify the
2715         compiler.
2716         (Fbase64_encode_string): Ditto.
2717         (Fbase64_decode_region): Ditto.
2718         (Fbase64_decode_string): Ditto.
2719
2720 1998-11-25  Hrvoje Niksic  <hniksic@srce.hr>
2721
2722         * dired.c (Fdirectory_files): Remove redundant code.
2723
2724 1999-03-05  Philip Aston  <philipa@parallax.co.uk>
2725
2726         * frame-msw.c Make raise-frame restore minimised windows.
2727
2728 1999-03-05  Philip Aston  <philipa@parallax.co.uk>
2729
2730         * device-msw.c: Fix DEFVAR format - Death to phantom quote, and
2731         add magic newline.
2732
2733 1999-03-05  Philip Aston  <philipa@parallax.co.uk>
2734
2735         * toolbar-msw.c Consider captions when deciding whether to rebuild
2736         toolbar. This fixes the initial toolbar display for those of us
2737         who don't like captions. These patches applied by Andy Piper.
2738
2739 1999-03-12  XEmacs Build Bot <builds@cvs.xemacs.org>
2740
2741         * XEmacs 21.2.13 is released
2742
2743 1999-03-12  SL Baur  <steve@xemacs.org>
2744
2745         * file-coding.c: Guard ucs table initialization with ifdef MULE.
2746
2747 1999-03-10  Stephen J. Turnbull  <turnbull@sk.tsukuba.ac.jp>
2748
2749         * file-coding.c:  docstring and comment improvements.
2750         (decode_ucs4)  flag possible data loss with comment.
2751
2752 1999-03-10  Martin Buchholz  <martin@xemacs.org>
2753
2754         * file-coding.c (Fset_ucs_char): add CHECK_INT, CHECK_CHAR
2755         (ucs_to_char):
2756         (Fucs_char):
2757         (Fset_char_ucs):
2758         (decode_coding_ucs4):
2759         (encode_coding_ucs4):
2760         (detect_coding_utf8):
2761         (decode_coding_utf8):
2762         (encode_utf8):
2763         (encode_coding_utf8):
2764         Add CHECK_* macros where needed to avoid crashes.
2765         #ifdef out all composite character support using
2766         #ifdef ENABLE_COMPOSITE_CHARS
2767         Use normal XEmacs coding standards.
2768         Fix docstrings.
2769         Remove CODING_STREAM_COMPOSE, CODING_STREAM_DECOMPOSE.
2770
2771 1998-09-08  MORIOKA Tomohiko  <morioka@jaist.ac.jp>
2772
2773         * file-coding.c (make-coding-system): Add description about
2774         `ucs-4' and `utf-8'.
2775         (detection_state): Modify to implement ucs-4 and utf-8.
2776         (detect_coding_type): Likewise.
2777         (detect_coding_ucs4): New implementation.
2778         (detect_coding_utf8): New implementation.
2779         (encode_utf8): fixed.
2780         (syms_of_mule_coding): Rename `ucs4' and `utf8' to `ucs-4' and
2781         `utf-8'.
2782
2783 1998-09-08  MORIOKA Tomohiko  <morioka@jaist.ac.jp>
2784
2785         * file-coding.c (mule_char_to_ucs4): Encode 94x94 chars in ISO
2786         2022 registry to private area.
2787
2788 1998-09-07  MORIOKA Tomohiko  <morioka@jaist.ac.jp>
2789
2790         * file-coding.c (encode_utf8): New function.
2791         (encode_coding_utf8): New implementation.
2792
2793 1998-09-07  MORIOKA Tomohiko  <morioka@jaist.ac.jp>
2794
2795         * file-coding.c (ucs_to_mule_table): New variable; abolish
2796         `Vucs_to_mule_table'
2797         (mule_to_ucs_table): renamed from `Vmule_to_ucs_table'.
2798         (set-ucs-char): New function.
2799         (ucs_to_char): New function.
2800         (ucs-char): New function.
2801         (set-char-ucs): New function.
2802         (char-ucs): New function.
2803         (decode_ucs4): Use `ucs_to_char'.
2804         (complex_vars_of_mule_coding): Abolish `ucs-to-mule-table' and
2805         `mule-to-ucs-table'.
2806
2807 1998-09-06  MORIOKA Tomohiko  <morioka@jaist.ac.jp>
2808
2809         * chartab.h: EXFUN `Fget_char_table'.
2810
2811         * file-coding.c (encode_ucs4): New function.
2812         (encode_coding_ucs4): Use `encode_ucs4'.
2813
2814 1998-09-06  MORIOKA Tomohiko  <morioka@jaist.ac.jp>
2815
2816         * file-coding.c (decode_coding_ucs4): New implementation.
2817
2818 1998-09-06  MORIOKA Tomohiko  <morioka@jaist.ac.jp>
2819
2820         * file-coding.c (decode_coding_ucs4): fixed.
2821
2822         * file-coding.c (Vmule_to_ucs_table): New variable.
2823         (mule_char_to_ucs4): New function.
2824         (encode_coding_ucs4): New implementation.
2825         (complex_vars_of_mule_coding): Define variable
2826         `mule-to-ucs-table'.
2827
2828 1998-09-06  MORIOKA Tomohiko  <morioka@jaist.ac.jp>
2829
2830         * file-coding.c (decode_coding_utf8): New implementation.
2831
2832 1998-09-06  MORIOKA Tomohiko  <morioka@jaist.ac.jp>
2833
2834         * file-coding.c (decode_coding_utf8): fixed.
2835
2836 1998-09-06  MORIOKA Tomohiko  <morioka@jaist.ac.jp>
2837
2838         * file-coding.c (Vucs_to_mule_table): New variable.
2839         (decode_ucs4): Refer `Vucs_to_mule_table'.
2840         (complex_vars_of_mule_coding): Define variable
2841         `ucs-to-mule-table'.
2842
2843 1998-09-04  MORIOKA Tomohiko  <morioka@jaist.ac.jp>
2844
2845         * file-coding.c (detect_coding_ucs4): New function (not
2846         implemented yet).
2847         (decode_coding_ucs4): New function.
2848         (encode_coding_ucs4): New function (not implemented yet).
2849         (detect_coding_utf8): New function (not implemented yet).
2850         (decode_coding_utf8): New function.
2851         (encode_coding_utf8): New function (not implemented yet).
2852         (make-coding-system): New type `ucs4' and `utf8'.
2853         (coding-system-type): Likewise.
2854         (detection_state): Add `ucs4' and `utf8'.
2855         (detect_coding_type): Likewise.
2856         (mule_decode): Use `decode_coding_ucs4' and `decode_coding_utf8'.
2857         (mule_encode): Use `encode_coding_ucs4' and `encode_coding_utf8'.
2858         (decode_ucs4): New function (very incomplete).
2859         (syms_of_mule_coding): Add `ucs4' and `utf8'.
2860
2861         * file-coding.h: Add definitions for UCS-4 and UTF-8.
2862
2863 1999-03-08  Martin Buchholz  <martin@xemacs.org>
2864
2865         * mule-charset.c:
2866         (non_ascii_valid_char_p):
2867         (lookup_composite_char):
2868         (composite_char_string):
2869         (make-composite-char):
2870         (composite-char-string):
2871         (syms_of_mule_charset):
2872         (complex_vars_of_mule_charset):
2873         * mule-charset.h (LEADING_BYTE_COMPOSITE):
2874         (CHAR_LEADING_BYTE):
2875         (MAKE_CHAR):
2876         * file-coding.h (CODING_STATE_COMPOSITE):
2877         (CODING_STATE_ISO2022_LOCK):
2878         (iso_esc_flag):
2879         (LEADING_BYTE_COMPOSITE):
2880         * file-coding.c (struct iso2022_decoder):
2881         (decoding_closer):
2882         (reset_iso2022):
2883         (parse_iso2022_esc):
2884         (encode_coding_iso2022):
2885         #ifdef out all composite character support using
2886         #ifdef ENABLE_COMPOSITE_CHARS
2887
2888         * alloc.c: Define lrecord_coding_system only if ! FILE_CODING
2889
2890 1999-03-04  Takeshi YAMADA <yamada@cslab.kecl.ntt.co.jp>
2891
2892         * fns.c (Fbase64_encode_string): Calculate `allength' in the same
2893         way of `Fbase64_encode_region'.
2894
2895 1999-02-18  Katsumi Yamaoka   <yamaoka@jpl.org>
2896
2897         * fns.c (base64_encode_1): Don't add a newline at the tail.
2898
2899 1999-03-08  Andy Piper  <andy@xemacs.org>
2900
2901         * menubar-msw.c (displayable_menu_item): correct off-by-one &
2902         handling.
2903
2904 1999-03-07  Martin Buchholz  <martin@xemacs.org>
2905
2906         * console-stream.h (struct stream_console):
2907         * event-unixoid.c (event_stream_unixoid_select_console):
2908         (event_stream_unixoid_unselect_console):
2909         * print.c (Fexternal_debugging_output):
2910         * sysdep.c (reset_one_device):
2911         * console-stream.c (stream_init_console):
2912         (stream_delete_console):
2913         (allocate_stream_console_struct): move into stream_init_console.
2914         (free_stream_console_struct): move into stream_delete_console.
2915         Use `fd' only for file descriptors.
2916         Therefore, rename members of struct stream_console.
2917
2918         * systime.h: Unix98 says sys/time.h should define select(), but
2919         some systems define that in unistd.h.  So include that file always.
2920
2921         * glyphs.h (MAYBE_IIFORMAT_METH): Don't use leading `_'.  Avoid
2922         multiple evaluation of first arg.  Do proper do {} while (0) wrapping.
2923         (HAS_IIFORMAT_METH_P): Prevent macro from being used in
2924         non-boolean context
2925         (MAYBE_IIFORMAT_DEVMETH): Use standard internal macro naming convention.
2926
2927         * EmacsShell.c:
2928         * balloon_help.c:
2929         Add #include <stdio.h>.
2930         Some versions of assert.h use printf() without #include'ing stdio.h
2931
2932         * free-hook.c (blocktype): Add gcpro5_type to blocktype.
2933         (log_gcpro): Remove unused variable FRAME.
2934         (show_gcprohist): Ansify.
2935         Comment the #endif's
2936
2937         * frame-x.c (x_delete_frame): Don't use FRAME_X_SHELL_WIDGET(f)
2938         after it's just been XtDestroy'ed!
2939
2940 1999-02-18  Martin Buchholz  <martin@xemacs.org>
2941
2942         * opaque.c (print_opaque):
2943         (sizeof_opaque):
2944         (equal_opaque):
2945         (hash_opaque):
2946         Egcs 1.1.1 seems to have a bug where
2947         INTP (p->size_or_chain)
2948         will crash XEmacs.  Fix by introducing intermediate variable.
2949
2950         * sound.c (Fdevice_sound_enabled_p): Fix compiler warning.
2951
2952         * dired.c (Fdirectory_files):
2953         (Ffile_name_completion):
2954         (Ffile_name_all_completions):
2955         (file_name_completion):
2956         - Use `directory' instead of `dirname' to sync with FSF Emacs and
2957         avoid compiler warnings.
2958         - Fix up docstrings so that C variables match documentation.
2959
2960 1999-03-05  Martin Buchholz  <martin@xemacs.org>
2961
2962         * alloc.c: (garbage_collect_1): Reorg code to make scope of local
2963         variables as small as possible to help out the compiler and the maintainer.
2964
2965         * alloc.c: (disksave_object_finalization):
2966         Set all the *-load-path variables to
2967         nil, not just load-path itself.  This gets the locate-file hash
2968         tables garbage collected BEFORE dump, and has the side effect of
2969         preventing crashes on OSF4.0+egcs.
2970
2971         * alloc.c:
2972         * gdbinit:
2973         * dbxrc:
2974         - Clean up gdb/dbx debugging support.
2975         - Storing an EMACS_INT in an enum is not 64-bit clean!
2976         - So change the enum to a set of separate variables.
2977         - Add test cases to help debug the debugging support!
2978         - Add `lisp-shadows' and `run-temacs' targets for dbx.
2979         - Both dbx and gdb have been tested now.
2980
2981 1999-03-05  XEmacs Build Bot <builds@cvs.xemacs.org>
2982
2983         * XEmacs 21.2.12 is released
2984
2985 1999-02-16  Kazuyuki IENAGA  <ienaga@jsys.co.jp>
2986
2987         * device-x.c: Support to find best visual without flashing.
2988
2989 1999-03-02  Paul Keusemann  <pkeusem@visi.com>
2990
2991         * database.c (berkdb_map): Add flags argument to cursor call (must
2992           be 0 according to docs) required for Berkeley DB 2.6.4 and later.
2993
2994 1999-03-03  Martin Buchholz  <martin@xemacs.org>
2995
2996         * hash.c:
2997         * hash.h:
2998         General cleanup.  Get free-hook.c working again.
2999         Remove unused functions:
3000         make_strings_hash_table, copy_hash, expand_hash_table.
3001
3002         * malloc.c:
3003         * mem-limits.h:
3004         Always use new ANSI-style function prototypes.
3005
3006         * unexalpha.c (unexec): Never use implicit int.
3007
3008         * sgiplay.c (close_sound_file):
3009         (play_sound_file):
3010         (restore_audio_port):
3011         (play_sound_data):
3012         (audio_initialize):
3013         (play_internal):
3014         (drain_audio_port):
3015         (write_mulaw_8_chunk):
3016         (write_linear_chunk):
3017         (write_linear_32_chunk):
3018         (initialize_audio_port):
3019         (open_audio_port):
3020         (set_channels):
3021         (set_output_format):
3022         (adjust_audio_volume):
3023         (get_current_volumes):
3024         (parse_snd_header):
3025         Always use new ANSI-style function prototypes.
3026         Use unistd.h for missing prototypes.
3027
3028         * unexelfsgi.c (round_up):
3029         (find_section):
3030         (unexec): Always use new ANSI-style function prototypes
3031
3032         * elhash.c (struct Lisp_Hash_Table): rename golden to golden_ratio
3033
3034         * console.h (struct console_methods): Always use full ANSI prototypes
3035
3036         * emacs.c (__sti__iflPNGFile_c___): Always use full ANSI prototypes
3037
3038 1999-03-02  Andy Piper  <andy@xemacs.org>
3039
3040         * event-stream.c (init_event_stream): make sure native mswindows
3041         gets an appropriate event loop.
3042
3043 1999-02-22  Andy Piper  <andy@xemacs.org>
3044
3045         * frame-msw.c (mswindows_make_frame_visible): use SW_SHOW rather
3046         than SW_SHOWNORMAL to prevent resizing of maximised frames.
3047         (mswindows_raise_frame): remove comment.
3048
3049 1999-03-01  XEmacs Build Bot <builds@cvs.xemacs.org>
3050
3051         * XEmacs 21.2.11 is released
3052
3053 1999-02-25  SL Baur  <steve@xemacs.org>
3054
3055         * mule-charset.c (Qleading_byte): New variable to implement
3056         charset-leading-byte function.
3057         (Fcharset_property): Use it.
3058         (syms_of_mule_charset): Initialize it.
3059         From Kazuyuki IENAGA <ienaga@jsys.co.jp>
3060
3061 1999-02-17  Kazuo Oishi <oishi@ae.agr.yamaguchi-u.ac.jp>
3062
3063         * glyphs-x.c (cononvert_EImage_to_XImage): correct
3064         bytes per pixel counting.
3065
3066 1999-02-15  Andy Piper  <andy@xemacs.org>
3067
3068         * s/cygwin32.h (BROKEN_SIGIO): don't define this as it causes
3069         major lockups.
3070
3071 1999-02-16  MORIOKA Tomohiko  <morioka@jaist.ac.jp>
3072
3073         * fns.c (Fbase64_encode_string): New optional argument
3074         `NO_LINE_BREAK'.
3075
3076 1999-02-16  Martin Buchholz  <martin@xemacs.org>
3077
3078         * gdbinit:  Fix up commands to run temacs.  Add lisp-shadows command.
3079         * alloc.c (xcalloc):  undef xcalloc, just like xmalloc
3080
3081 1999-02-10  Martin Buchholz  <martin@xemacs.org>
3082
3083         * s/bsdos4.h: New file.  Port to BSDI BSD/OS 4.0.
3084         * xintrinsic.h:  Redo CONST support for X11 R4 compatibility.
3085
3086 1999-02-05  XEmacs Build Bot <builds@cvs.xemacs.org>
3087
3088         * XEmacs 21.2.10 is released
3089
3090 1999-02-02  Gleb Arshinov  <gleb@cs.stanford.edu>
3091
3092         * process-nt.c (nt_send_process):
3093         Fix for process-send-region/process-send-string breaking when size
3094         of the input > 128 chars: change maximum chunk size for process
3095         stream from 512 to 128, thus guaranteeing that ntpipe_shove_writer
3096         succeeds.
3097
3098 1999-02-02  XEmacs Build Bot <builds@cvs.xemacs.org>
3099
3100         * XEmacs 21.2.9 is released
3101
3102 1999-01-30  Martin Buchholz  <martin@xemacs.org>
3103
3104         * bytecode.c (funcall_compiled_function): Call
3105         UNBIND_TO_GCPRO instead of UNBIND_TO_GCPRO_VARIABLES_ONLY.
3106
3107         * backtrace.h (UNBIND_TO_GCPRO_VARIABLES_ONLY):
3108         #ifdef 0 out unused macro.
3109
3110 1999-01-27  Martin Buchholz  <martin@xemacs.org>
3111
3112         * gui.c (gui_parse_item_keywords_internal): Make static.
3113
3114 1999-01-21  Andy Piper  <andy@xemacs.org>
3115
3116         * glyphs-msw.c: add xface support.
3117         (mswindows_xface_instantiate): new function copied from glyphs-x.c
3118         (image_instantiator_format_create_glyphs_mswindows): do device
3119         specific initialisation for xfaces.
3120         (xbm_create_bitmap_from_data): line data must be padded to a word
3121         boundary.
3122
3123         * glyphs-x.c (xface_validate): moved to glyphs.c
3124         (xface_normalize): ditto.
3125         (xface_possible_dest_types): ditto.
3126         (image_instantiator_format_create_glyphs_x): do device specific
3127         initialisation for xfaces.
3128
3129         * glyphs.h: declare xface symbol.
3130
3131         * glyphs.c: move generic xface support here.
3132         (xface_validate): moved from glyphs-x.c
3133         (xface_normalize): ditto.
3134         (xface_possible_dest_types): ditto.
3135         (image_instantiator_format_create): xface declarations moved from
3136         glyphs-x.c.
3137
3138 1999-01-14  Adrian Aichner  <aichner@ecf.teradyne.com>
3139
3140         * event-stream.c (vars_of_event_stream): Fixing documentation.
3141
3142 1999-01-17  Gunnar Evermann  <ge204@eng.cam.ac.uk>
3143
3144         * glyphs-eimage.c (gif_instantiate): Correct handling of
3145         interlaced gifs to avoid writing past the end of the eimage
3146         buffer.
3147
3148 1999-01-13  Hrvoje Niksic  <hniksic@srce.hr>
3149
3150         * search.c (Freplace_match): Handle single backslash at end of
3151         NEWTEXT correctly.
3152
3153 1999-01-12  William M. Perry  <wmperry@aventail.com>
3154
3155         * eldap.c (Fldap_open): slow down interrupts around ldap_open to
3156           avoid connection errors.
3157
3158 1999-01-12  Andy Piper  <andy@xemacs.org>
3159
3160         * redisplay-output.c (redisplay_update_line): backout change that
3161         shouldn't have gone ine.
3162
3163 1999-01-09  Oscar Figueiredo  <Oscar.Figueiredo@di.epfl.ch>
3164
3165         * eldap.c (vars_of_ldap): Do no provide `ldap' here since it may
3166         collide with ldap.el
3167
3168 1999-01-11  Andy Piper  <andy@xemacs.org>
3169
3170         * redisplay.h (DISPLAY_LINE_HEIGHT): new macro.
3171         (DISPLAY_LINE_YPOS): new macro.
3172
3173         * redisplay-msw.c (mswindows_output_string): use it.
3174         (mswindows_output_pixmap): ditto.
3175         (mswindows_output_display_block): ditto.
3176
3177         * redisplay-output.c (redisplay_output_display_block): new
3178         function. just call the devmeth, maybe insert some generic code
3179         here later.
3180         (compare_display_blocks): use it.
3181         (output_display_line): ditto.
3182         (redisplay_unmap_subwindows_maybe): new function. potentially
3183         unmap subwindows in the given area.
3184
3185         * glyphs.c (reset_subwindow_cachels): unmap subwindows that we are
3186         resetting.
3187
3188 1999-01-10  J. Kean Johnston  <jkj@sco.com>
3189
3190         * Makefile.in.in: Set value of moduledir
3191         - Changed DUMPENV to include $(MODULEPATH)
3192         - Added install rule to install header files for use by ellcc.
3193
3194         * config.h.in: Added INHIBIT_SITE_MODULES
3195         - Added HAVE__DLERROR
3196         - Added HAVE_DLFCN_H
3197         - Added DLSYM_NEEDS_UNDERSCORE
3198
3199         * dll.c: Removed.
3200
3201         * emodules.c: New file containing dynamic loading code.
3202
3203         * emodules.h: New file.
3204
3205         * emacs.c: Added variables Vmodule_directory,
3206         Vsite_module_directory, Vconfigure_module_directory and
3207         Vconfigure_site_module_directory.
3208         - (main_1): Added new variable inhibit_site_modules and command
3209         line options `-no-site-modules' and `--no-site-modules'.
3210         - (main_1): Call syms_of_module() instead of syms_of_dll().
3211         - (main_1): Call vars_of_module().
3212         - (vars_of_emacs): Introduce inhibit-site-modules,
3213         module-directory, configure-module-directory,
3214         site-module-directory, and configure-site-module-directory to the
3215         Lisp reader.
3216
3217         * lisp.h: Declare load_module and list_modules, as well as
3218         Vmodule_directory, Vsite_module_directory,
3219         Vconfigure_module_directory and Vconfigure_site_module_directory.
3220
3221         * paths.h.in: Added PATH_MODULESEARCH and PATH_SITE_MODULES.
3222         - Added correct support for site-lisp directory.
3223
3224         * symbols.c (defsubr): Modified to allow modules to add new subrs
3225         after dump time.
3226         - (defsubr_macro): Same.
3227         - (defvar_magick): Only use purespace when not initialized, so
3228         that loaded modules can still add symbols.
3229
3230         * symsinit.h: Add definitions for syms_of_module(),
3231         vars_of_module().  Removed syms_of_dll().
3232
3233         * sysdll.c: Include dlfcn.h if HAVE_DLFCN_H is defined.
3234         - (dll_variable): Take DLSYM_NEEDS_UNDERSCORE into account.
3235         - (dll_error): use _dlerror() if HAVE__DLERROR is defined.
3236
3237         * s/sco5-shr.h (C_SWITCH_SYSTEM): Correct for modern gcc and
3238         explicitly pass -belf for native cc.
3239
3240         * s/sco5.h (LIB_GCC): Use -print-libgcc-file-name instead of
3241         hard-coding the library name.
3242
3243 1999-01-01    <martin@xemacs.org>
3244
3245         * device-x.c (Fx_set_font_path):
3246         Add proper cast to permit compilation under C++.
3247
3248         * buffer.c (directory_is_current_directory):
3249         Add proper casts to permit compilation under C++.
3250
3251 1998-12-30  Damon Lipparelli  <lipp@primus.com>
3252
3253         * event-msw.c (mswindows_wnd_proc):
3254           Fixed failure when building with MSVC 5.
3255
3256 1998-12-29  Martin Buchholz  <martin@xemacs.org>
3257
3258         * file-coding.c (decode_coding_iso2022):
3259         - Prevent crash when decoding ISO7/Lock detected files
3260         - the usual martin fiddling
3261
3262 1998-12-29  Jonathan Harris  <jhar@tardis.ed.ac.uk>
3263
3264         * event-msw.c:
3265           glyphs-msw.c:
3266           Fixed failures when building with MSVC.
3267         * unexnt.c (dump_bss_and_heap):
3268           Removed compiler warning by removing bss_data variable.
3269
3270 1998-12-18  Jim Radford  <radford@robby.caltech.edu>
3271
3272         * device-x.c (Fx_set_font_path, Fx_get_font_path): New functions
3273         so that packages that distribute their own fonts can access them.
3274
3275 1998-12-28  Andy Piper  <andy@xemacs.org>
3276
3277         * glyphs-msw.c (mswindows_button_instantiate): cope with buttons
3278         that have an image provided.
3279
3280         * glyphs.h: add Q_image decl.
3281
3282         * glyphs-widget.c new functionality allowing images in
3283         widgets.
3284         (check_valid_glyph_or_image): new function to validate
3285         glyphs passed in through :image.
3286         (widget_normalize): new function. convert :image parameters into
3287         real glyphs if not already so.
3288         (widget_instantiate_1): mess with size parameters to be similar to
3289         :image if provided.
3290         (syms_of_glyphs_widget): new keyword :image.
3291         (image_instantiator_format_create_glyphs_widget): normalize
3292         buttons and allow :image.
3293
3294 1998-12-27  Andy Piper  <andy@xemacs.org>
3295
3296         * frame-msw.c (mswindows_init_frame_1): warning elimination.
3297
3298         * glyphs-widget.c (check_valid_anything): no-op function.
3299         (check_valid_callback): check callbacks in gui_items.
3300         (check_valid_symbol): as it sounds.
3301         (check_valid_string_or_vector): ditto.
3302         (widget_validate): modified for descriptors that are vectors or
3303         sequences of keyword/val pairs.
3304         (widget_instantiate_1): ditto.
3305         (image_instantiator_format_create_glyphs_widget): allow gui_item
3306         keywords in the instantiator.
3307
3308         * gui.c (gui_parse_item_keywords_internal): renamed from
3309         gui_parse_item_keywords but taking error behaviour.
3310         (gui_parse_item_keywords): use it.
3311         (gui_parse_item_keywords_no_errors): ditto.
3312         (gui_item_add_keyval_pair): add Error_behavior flag and only
3313         signal invalid keywords if required.
3314
3315         * gui.h: new gui signatures.
3316
3317         * menubar.c (menu_parse_submenu_keywords): use new
3318         gui_item_add_keyval_pair signature.
3319
3320         * s/cygwin32.h: modify PTY_ITERATION to eliminate warnings.
3321
3322 1998-12-28  Martin Buchholz <martin@xemacs.org>
3323
3324         * XEmacs 21.2.8 is released.
3325
3326 1998-12-28  Martin Buchholz  <martin@xemacs.org>
3327
3328         * editfns.c (get_home_directory):
3329         (user-home-directory): Simplify.
3330
3331
3332         * callproc.c (child_setup):
3333         - Environment variables were being passed to inferior processes
3334           using internal encoding.
3335         - Convert to external encoding.
3336         - Rename local var `tem' to better name `tail'.
3337         - Use Flength instead of `manual' calculation.
3338
3339         * buffer.c (kill-buffer):
3340         (record-buffer):
3341         (set-buffer-major-mode):
3342         (current-buffer):
3343         - Fix up parameter names to correspond to docstrings.
3344         - Don't use `bufname' when a buffer will do as well.
3345         - Remove one unneeded GCPRO.
3346
3347         * buffer.h (initial_directory):
3348         * buffer.c (init_initial_directory):
3349         - use correct conversions between internal and external format.
3350         (directory_is_current_directory): new function
3351         (init_buffer): convert initial_directory to internal format.
3352         - solve crashes when current working directory is non-ASCII.
3353
3354         * alloc.c (xmalloc):
3355         (xcalloc):
3356         (xrealloc):
3357         - remove stupid casts, since XEmacs requires an ANSI C system.
3358         (lrecord_type_index): replace abort() with more readable assert().
3359
3360         (reset_lcrecord_stats): remove.
3361         (sweep_lcrecords_1):
3362         - replace call to reset_lcrecord_stats() with call to xzero().
3363
3364 1998-12-27  Martin Buchholz  <martin@xemacs.org>
3365
3366         * process-unix.c (unix_create_process):
3367         - Fix crash invoking program with non-ASCII name.
3368           Try invoking xemacs with SHELL=/bin/sh, then M-x shell.
3369         - Remove unused variable `env'.
3370         - Rename `temp' to better name `save_errno'.
3371         - Reorganize code for clarity.  But still too chicken to nuke the
3372           BSD 4.2 support.
3373
3374 1998-12-24  Martin Buchholz <martin@xemacs.org>
3375
3376         * XEmacs 21.2.7 is released.
3377
3378 1998-12-23  Martin Buchholz  <martin@xemacs.org>
3379
3380         * glyphs.c (decode_device_ii_format):
3381         - Fix indentation.
3382         - Use GET_C_STRING_FILENAME_DATA_ALLOCA with char *, not Extbyte *.
3383
3384         * glyphs-x.c (x_subwindow_instantiate):
3385         - A image instance mask was being assigned to a image instance type!
3386         - X_SUBWINDOW_INSTANCE_DATA (ii) is not an lvalue in C++.
3387
3388         * glyphs-msw.c (mswindows_initialize_dibitmap_image_instance):
3389         Fix indentation.
3390         * glyphs-x.h: Make indentation consistent.
3391
3392         * emacs.c (Fdump_emacs): Remove Steve Martin merge artifacts.
3393
3394         * glyphs-widget.c (check_valid_glyph): Warning suppression.
3395         - Make it static
3396         - #ifdef it out, since it's not actually used yet (FIX THIS!)
3397
3398         * glyphs-widget.c:
3399         * glyphs.h:
3400         Move declarations of decode_device_ii_format and
3401         decode_image_instantiator_format into glyphs.h where they belong.
3402
3403 1998-12-22  Martin Buchholz  <martin@xemacs.org>
3404
3405         * frame-x.c (x_delete_frame): Revert part of my changes at the
3406         suggestion of Gunnar Evermann - unfortunately no one really
3407         understands this code.
3408
3409         * callproc.c (init_callproc): code cleanup.
3410
3411         * free-hook.c (malloc):
3412         (check_malloc):
3413         (__free_hook):
3414         (__malloc_hook):
3415         (__realloc_hook):
3416         (block_input_malloc):
3417         (block_input_realloc):
3418         * device-x.c (x_delete_device):
3419         * emacs.c (voodoo_free_hook):
3420         * events.c (print_event):
3421         (CHECK_EVENT_TYPE):
3422         (CHECK_EVENT_TYPE2):
3423         (CHECK_EVENT_TYPE3):
3424         Use proper prototypes.
3425         Make C_E_T macros a little faster.
3426         Pedantic fiddly little changes.  You really don't care.
3427
3428 1998-12-22  Andy Piper  <andy@xemacs.org>
3429
3430         * redisplay-output.c (redisplay_clear_region): make sure that
3431         fg/bg colors get set even when we are in the border area.
3432
3433 1998-12-13  Martin Buchholz  <martin@xemacs.org>
3434
3435         * console-msw.c: Function definitions follow coding standards
3436         - This prevents e.g. find-tag on Lisp_Event finding DEVENT
3437
3438 1998-12-11  Martin Buchholz  <martin@xemacs.org>
3439
3440         * events.h (struct timeout_data):
3441         * event-tty.c (tty_timeout_to_emacs_event):
3442         * event-msw.c (mswindows_wm_timer_callback):
3443         * event-Xt.c (Xt_timeout_to_emacs_event):
3444         * event-msw.c (mswindows_cancel_dispatch_event):
3445         Make sure Lisp_Objects inside events are initialized to Qnil, not
3446         Qnull_pointer, which is now illegal.
3447
3448 1998-12-10  Martin Buchholz  <martin@xemacs.org>
3449
3450         * lisp.h: Fix up prototypes to match alloc.c
3451
3452 1998-12-08  Martin Buchholz  <martin@xemacs.org>
3453
3454         * windowsnt.h: Remove `support' for using index and rindex
3455
3456         * filelock.c (current_lock_owner):
3457         - Change uses of index -> strchr, rindex -> strrchr
3458
3459 1998-12-07  Martin Buchholz  <martin@xemacs.org>
3460
3461         * sysdep.c (set_descriptor_non_blocking):
3462         Since O_NONBLOCK is now always #defined, make use of fcntl
3463         conditional on F_SETFL being defined.
3464
3465         * console-msw.c (DHEADgER):
3466         (DOPAQUE_DATA):
3467         (DEVENT):
3468         (DCONS):
3469         (DCONSCDR):
3470         (DSTRING):
3471         (DVECTOR):
3472         (DSYMBOL):
3473         (DSYMNAME):
3474         - max_align_t should not be visible to the user of the
3475           XOPAQUE_DATA macro.
3476         - use Bufbyte instead of char
3477         - parens around (FOOP (obj)) are always redundant.
3478           If they were necessary, we should fix the macro instead.
3479         - Always use string_data(foo) instead of foo->data.
3480
3481
3482 1998-12-06  Martin Buchholz  <martin@xemacs.org>
3483
3484         * frame-msw.c (mswindows_init_frame_1):
3485         - use make_lisp_hash_table, not Fmake_hash_table
3486         - include elhash.h
3487
3488         * lisp.h:
3489         * alloc.c (make_vector): remove travesty
3490         (Fmake_vector):
3491         (make_pure_vector):
3492         (pure_cons):
3493         (make_bit_vector_internal):
3494         (make_bit_vector):
3495         (make_bit_vector_from_byte_vector):
3496         (Fmake_bit_vector):
3497         - make vector_equal a little faster.
3498         - Don't use variable name `new'.
3499         - Use size_t instead of EMACS_INT.
3500         - usual Martin-style pointless bit-twiddling.
3501
3502         * fns.c (mapcar1):
3503         (Fmapconcat):
3504         (Fmapcar):
3505         (Fmapvector):
3506         Make mapcar faster.  In particular, make
3507           (mapc #'identity long-string)
3508         MUCH faster under Mule.
3509         * tests/automated/lisp-tests.el: Test 'em!
3510
3511         * bytecode.c (Ffetch_bytecode): Fix crash when loading lazy-loaded
3512         bytecode.
3513
3514 1998-12-01  Martin Buchholz  <martin@xemacs.org>
3515
3516         * menubar-x.c (menu_item_descriptor_to_widget_value_1): Always use
3517         Qnil, not NULL, to initialize `null' Lisp_Objects.
3518
3519 1998-11-29  Hrvoje Niksic  <hniksic@srce.hr>
3520
3521         * specifier.c (display_table_validate): Update.
3522
3523         * redisplay.c (create_text_block): Use them.
3524
3525         * glyphs.c (display_table_entry): New function.
3526         (get_display_tables): Ditto.
3527
3528 1998-12-15  Oscar Figueiredo  <Oscar.Figueiredo@di.epfl.ch>
3529
3530         * eldap.c (toplevel): Mention that eldap.c compiles with
3531         OpenLDAP libs
3532         (Fldap_open): Use `GET_C_STRING_OS_DATA_ALLOCA'
3533         (Fldap_search_internal): Ditto
3534
3535 1998-12-11  Martin Buchholz  <martin@xemacs.org>
3536
3537         * event-msw.c (mswindows_cancel_dispatch_event):
3538         Gratuitous code prettification
3539
3540
3541 1998-12-07  Hrvoje Niksic  <hniksic@srce.hr>
3542
3543         * fns.c (Fnconc): Fix use of wrong_type_argument().
3544
3545         * floatfns.c (Ffloat): Fix docstring.
3546         (Ffloat): Fix use of wrong_type_argument().
3547         (Fabs): Ditto.
3548         (extract_float): Ditto.
3549         (Fceiling): Ditto.
3550         (Fround): Ditto.
3551         (Ftruncate): Ditto.
3552
3553 1998-12-06  Martin Buchholz  <martin@xemacs.org>
3554
3555         * frame-msw.c (mswindows_init_frame_1):
3556         - use make_lisp_hash_table, not Fmake_hash_table
3557         - include elhash.h
3558
3559         * lisp.h:
3560         * alloc.c (make_vector): remove travesty
3561         (Fmake_vector):
3562         (make_pure_vector):
3563         (pure_cons):
3564         (make_bit_vector_internal):
3565         (make_bit_vector):
3566         (make_bit_vector_from_byte_vector):
3567         (Fmake_bit_vector):
3568         - make vector_equal a little faster.
3569         - Don't use variable name `new'.
3570         - Use size_t instead of EMACS_INT.
3571         - usual Martin-style pointless bit-twiddling.
3572
3573         * fns.c (mapcar1):
3574         (Fmapconcat):
3575         (Fmapcar):
3576         (Fmapvector):
3577         Make mapcar faster.  In particular, make
3578           (mapc #'identity long-string)
3579         MUCH faster under Mule.
3580         * tests/automated/lisp-tests.el: Test 'em!
3581
3582         * bytecode.c (Ffetch_bytecode): Fix crash when loading lazy-loaded
3583         bytecode.
3584
3585 1998-12-02  Didier Verna  <verna@inf.enst.fr>
3586
3587         * menubar-x.c (menu_item_descriptor_to_widget_value_1): set the
3588         accelerator field to nil for labels.
3589
3590 1998-12-16  Jonathan Harris  <jhar@tardis.ed.ac.uk>
3591
3592         * menubar-msw.c (displayable_menu_item):
3593           Escape occurrences of '&' and support occurrences of the
3594          '%_' accelerator indicator in menus.
3595
3596 1998-11-26  Didier Verna  <verna@inf.enst.fr>
3597
3598         * dired.c (Fdirectory_files): use make_string instead of
3599         make_ext_string on the filename. The conversion external->internal
3600         format is already done in sys_readdir.
3601
3602 1998-12-15  Gunnar Evermann  <ge204@eng.cam.ac.uk>
3603
3604         * glyphs.c (normalize_image_instantiator): GCPRO instantiator
3605
3606 1998-12-16  Jonathan Harris  <jhar@tardis.ed.ac.uk>
3607
3608         * event-msw.c
3609           (Belatedly) added Kirill to list of file's authors.
3610           emacs_mswindows_quit_p: Don't process WM_PAINT messages in
3611           quit checking. WM_PAINT messages cause redisplay, but
3612           windows' states are not necessarily stable when this function
3613           gets called.
3614
3615 1998-12-17  Andy Piper  <andy@xemacs.org>
3616
3617         * strftime.c (zone_name): CONSTify.
3618
3619 1998-12-15  Andy Piper  <andy@xemacs.org>
3620
3621         * glyphs-msw.c (mswindows_combo_instantiate): ditto.
3622         (mswindows_widget_property): return Qunbound when no property available.
3623         (mswindows_button_property): ditto.
3624         (mswindows_combo_property): ditto.
3625         (mswindows_widget_set_property): ditto.
3626
3627         * glyphs-widget.c (check_valid_item_list): use properties.
3628
3629         * glyphs.h (struct Lisp_Image_Instance): we have properties now.
3630
3631         * glyphs.c (Fset_image_instance_property): allow setting of arbitrary properties.
3632         (Fimage_instance_property): ditto.
3633         * glyphs-widget.c (widget_property): ditto.
3634         (widget_set_property): ditto.
3635
3636         * frame-msw.c (mswindows_set_frame_pointer): SetCursor() as well
3637         as setting the class cursor so that GC actually changes the
3638         cursor.
3639
3640         * config.h: don't undef MAIL_USE_POP.
3641
3642 1998-12-13  Andy Piper  <andy@xemacs.org>
3643
3644         * glyphs-msw.c
3645         (image_instantiator_format_create_glyphs_mswindows): line ->
3646         label.
3647         (mswindows_label_instantiate): ditto. Play with window flags.
3648         (image_instantiator_format_create_glyphs_mswindows): ditto.
3649         (vars_of_glyphs_mswindows): provide Qlabel as we support it now.
3650
3651         * glyphs-widget.c (widget_instantiate_1): re-jig autosizing to
3652         cope with lines and labels.
3653         (static_instantiate): use widget_instantiate_1.
3654         line -> label.
3655         (image_instantiator_format_create_glyphs_widget): ditto.
3656
3657 1998-12-10  Andy Piper  <andy@xemacs.org>
3658
3659         * Makefile.in.in (objs): add gui.o
3660
3661 1998-12-10  Andy Piper  <andy@xemacs.org>
3662
3663         * gui.c: adjust defines of HAVE_POPUPS so that we can build with
3664         no window system.
3665
3666 1998-12-09  Andy Piper  <andy@xemacs.org>
3667
3668         * glyphs.c (finalize_image_instance): mark glyphs changed when an
3669         image instance is removed so that the subwindow cache gets reset
3670         and thus destroyed images get GC'd.
3671
3672 1998-12-08  Andy Piper  <andy@xemacs.org>
3673
3674         * gui-msw.c (mswindows_handle_gui_wm_command): call
3675         MARK_SUBWINDOWS_CHANGED.
3676
3677         * glyphs-msw.c (mswindows_finalize_image_instance): make sure
3678         subwindows really get deleted.
3679
3680         * redisplay.c: new variable subwindows_changed[_set].
3681         (redisplay_window): use it.
3682         (redisplay_frame): ditto.
3683         (redisplay_device): ditto.
3684         (redisplay_without_hooks): ditto.
3685
3686         * device.h (MARK_DEVICE_SUBWINDOWS_CHANGED): new macro for
3687         subwindows redisplay as per glyphs equivalent.
3688         * redisplay.h: ditto.
3689         (MARK_SUBWINDOWS_CHANGED): ditto.
3690         (RESET_CHANGED_SET_FLAGS): ditto.
3691         * frame.h (MARK_FRAME_SUBWINDOWS_CHANGED): ditto.
3692
3693 1998-12-07  Andy Piper  <andy@xemacs.org>
3694
3695         * frame.c (Fmake_frame): reset subwindow cachels on non-stream
3696         frames.
3697
3698         * redisplay.c (redisplay_frame): invalidate subwindow cachels.
3699
3700         * event-msw.c (mswindows_wnd_proc): catch the various WM_CTLCOLOR*
3701         messages and paint widget glyphs as appropriate with their face fg
3702         & bg.
3703
3704 1998-12-06  Andy Piper  <andy@xemacs.org>
3705
3706         * glyphs-msw.c (vars_of_glyphs_mswindows): provide widget types
3707         here rather than in glyphs-widget - do this because we only want
3708         to provide what is really available.
3709
3710         * glyphs.c (Fimage_instance_property): new function to get the
3711         properties of image instances. wires through to console specific
3712         methods and then to widget specific methods.
3713         (Fset_image_instance_property): ditto but for setting widget properties.
3714         (check_valid_face): make extern so that it can be used elsewhere.
3715
3716         * glyphs-widget.c (widget_property): new function. gets the
3717         properties of widgets in general and wires the function through to
3718         widget specific ones.
3719         (widget_set_property): ditto but for setting widget properties.
3720
3721         * glyphs-msw.c (mswindows_combo_instantiate): Add functionality to
3722         add items to the list. Play with window styles a bit to get the
3723         desired effect.
3724         (mswindows_widget_property): break out specific widget properties.
3725         (mswindows_button_property): new function. gets the checked state
3726         of a button.
3727         (mswindows_combo_property): new function. gets the current
3728         selection in the combo box.
3729         (mswindows_widget_set_property): new function. sets specific
3730         properties of specific widgets.
3731
3732         * glyphs-widget.c (check_valid_item_list): new function. check
3733         that items for a combo-box are just a list of strings.
3734         (combo_validate): new function. check there is an item list.
3735         (widget_instantiate_1): new function. renamed from
3736         widget_instantiate so that we can do slightly different things for
3737         other widgets.
3738         (widget_instantiate): call widget_instantiate_1.
3739         (combo_instantiate): new function to instantiate combo boxes,
3740         defaults height to the pixel height of the number of items in the
3741         box.
3742         (syms_of_glyphs_widget): move widget keywords here.
3743         (image_instantiator_format_create_glyphs_widget): use new combo
3744         functions.
3745
3746 1998-12-04  Andy Piper  <andy@xemacs.org>
3747
3748         * event-msw.c (mswindows_wnd_proc): mule-ize.
3749
3750         * glyphs.c (pixmap_to_lisp_data): mule-ize.
3751
3752         * glyphs-msw.c (extract_xpm_color_names): mule-ize.
3753         (resource_name_to_resource): ditto.
3754         (mswindows_resource_instantiate): ditto.
3755         (mswindows_widget_instantiate): ditto.
3756         (mswindows_widget_set_property): ditto.
3757
3758         * redisplay-output.c (redisplay_output_subwindow): don't show
3759         subwindows if they are obscured at the edge of the frame, emacs
3760         gets into some sort of redisplay loop otherwise.
3761
3762         * gui.h: prototype gui_item_selected_p.
3763
3764         * gui.c (gui_item_selected_p): new function to determine the
3765         selected state of a gui_item.
3766
3767         * frame.h (struct frame): add subwindows_changed flag.
3768
3769         * redisplay.c (redisplay_frame): call update_frame_subwindows ().
3770
3771         * glyphs.c (update_subwindow): new function to update a
3772         subwindow's state.
3773         (update_frame_subwindows): new function to update all the
3774         subwindows on a frame.
3775
3776         * console.h (struct console_methods): add update_subwindow.
3777
3778         * glyphs-msw.c (mswindows_widget_property): return selected state
3779         for selected property.
3780         (mswindows_update_subwindow): new function. updates widget glyphs
3781         in redisplay as per menubars or toolbars e.g. selected state.
3782         (console_type_create_glyphs_mswindows): add update_subwindow.
3783
3784 1998-12-03  Andy Piper  <andy@xemacs.org>
3785
3786         * console-tty.c (syms_of_console_tty): MULE -> FILE_CODING since
3787         tty coding system things are such.
3788
3789         * glyphs-widget.c (widget_face_font_info): new function for
3790         pulling out height and width metrics for a widget's face.
3791         (widget_text_to_pixel_conversion): calculate pixel sizes of text
3792         for widgets.
3793
3794         * event-msw.c (mswindows_drain_windows_queue): translate messages
3795         that are destined for subwindows. This makes edit fields interact
3796         with the keyboard correctly.
3797         nuke warnings by #ifndef'ing out stuff not required by msg select().
3798
3799         * glyphs.h (INITIALIZE_IMAGE_INSTANTIATOR_FORMAT_NO_SYM): new
3800         macro defining the iiforma without the symbol required by widget.
3801         (INITIALIZE_IMAGE_INSTANTIATOR_FORMAT): use it.
3802
3803         * general.c (syms_of_general): add Qwidget, Qselected.
3804
3805         * faces.c (complex_vars_of_faces): add widget face inheriting from
3806         gui-element face.
3807
3808 1998-11-09  Andy Piper  <andy@xemacs.org>
3809
3810         * window.h (struct window): add a cache of subwindows on a
3811         per-window basis.
3812
3813         * window.c (mark_window): mark the subwindow_instance_cache.
3814         (allocate_window): initialise the subwindow instance_cache.
3815
3816         * toolbar-x.c (x_output_toolbar): call redisplay_clear_region
3817         instead of the devmeth.
3818         (x_clear_toolbar): ditto.
3819
3820         * redisplay-x.c (x_output_display_block): call
3821         redisplay_output_subwindow for subwindows and widgets.
3822
3823         * redisplay-tty.c (tty_output_display_block): add IMAGE_WIDGET to
3824         types to do nothing for.
3825
3826         * lisp.h: declare new widget/subwindow symbols.
3827
3828         * glyphs.c (image_instantiate): cache subwindows on a per-window
3829         basis.
3830         (subwindow_possible_dest_types): new function for subwindow dest
3831         types.
3832         (subwindow_instantiate): generic instantiation of a
3833         subwindow. specialised by device multi-methods.
3834         (Fsubwindowp): moved from glyphs-x.c. adapted for glyph-based
3835         subwindows.
3836         (Fimage_instance_subwindow_id): ditto.
3837         (Fresize_subwindow): ditto.
3838         (Fforce_subwindow_map): ditto.
3839
3840         * glyphs-x.c (x_print_image_instance): remove subwindow
3841         stuff. Handled genrically in glyphs.c.
3842         (x_image_instance_equal): ditto.
3843         (x_image_instance_hash): ditto.
3844         (x_finalize_image_instance): delete subwindows when required.
3845         (mark_subwindow) (print_subwindow) (finalize_subwindow)
3846         (subwindow_hash) (Fmake_subwindow): deleted because of new,
3847         glyph-based, subwindow implementation.
3848         (Fsubwindow_height) (Fsubwindow_width) (Fsubwindow_xid): aliased
3849         in glyphs.el
3850         (Fsubwindowp) (Fresize_subwindow) (Fforce_subwindow_map): moved to
3851         glyphs.c.
3852         (x_unmap_subwindow): new function to unmap X subwindows.
3853         (x_map_subwindow): new function to map X subwindows.
3854         (x_subwindow_instantiate): new function to instantiate X
3855         subwindows.
3856         (x_resize_subwindow): new function to resize X subwindows.
3857         (console_type_create_glyphs_x): add subwindow functions.
3858         (image_instantiator_format_create_glyphs_x): add device
3859         multi-methods for xpm, xbm and subwindow.
3860
3861         * glyphs.el (subwindow-xid): old alias for new subwindow functions.
3862         (subwindow-width): ditto.
3863         (subwindow-height): ditto.
3864
3865         * glyphs-msw.c (mswindows_widget_instantiate): new function for
3866         generally instantiating ms subwindows. Used by
3867         mswindows_*_instantiate.
3868         (mswindows_edit_instantiate): instantiate an edit field on a
3869         mswindows frame.
3870
3871 1998-11-04  Andy Piper  <andy@xemacs.org>
3872
3873         * symsinit.h: declare new functions.
3874
3875         * redisplay.h: declare new functions.
3876
3877         * redisplay-x.c (x_output_display_block): call
3878         redisplay_clear_region rather than x_clear_region.
3879         (x_output_string): ditto.
3880         (x_output_pixmap): ditto.
3881         (x_clear_to_window_end): ditto.
3882         (x_output_eol_cursor): ditto.
3883         (x_clear_region): only do X specific things. other duties handled
3884         in redisplay_clear_region.
3885
3886         * redisplay-tty.c (tty_clear_region): do tty specific things - some
3887         duties moved to redisplay_clear_region.
3888
3889         * redisplay-output.c (clear_left_border): use
3890         redisplay_clear_region instead of device method.
3891         (clear_right_border): ditto.
3892         (output_display_line): ditto.
3893         (redisplay_output_subwindow): ditto.
3894         (redisplay_clear_top_of_window): ditto.
3895         (redisplay_clear_region): perform duties previously handled by
3896         device methods. call the appropriate device method at the
3897         end. unmap subwindows if necessary.
3898
3899         * redisplay-msw.c (mswindows_output_string): use
3900         redisplay_clear_region instead of mswindows_clear_region.
3901         (mswindows_clear_to_window_end): ditto.
3902         (mswindows_output_display_block): output subwindows when required.
3903         (mswindows_clear_region): only do mswindows specific things,
3904         everything else is now handled in redisplay_clear_region.
3905
3906         * gui.h: add item id hash defines and declare function prototypes.
3907
3908         * gui.c (mark_gui_item): new function for marking gui_items.
3909         (gui_item_hash): generic hash function for generating command ids
3910         for gui_items.
3911
3912         * gui-msw.c: new file.
3913         (mswindows_handle_gui_wm_command): new function to handle widget
3914         callbacks.
3915
3916         * glyphs.h (MAYBE_IIFORMAT_DEVMETH): new function for device
3917         multi-methods.
3918         (IIFORMAT_HAS_SHARED_METHOD): ditto.
3919         (DEFINE_DEVICE_IIFORMAT): ditto.
3920         (INITIALIZE_DEVICE_IIFORMAT): ditto.
3921         (struct Lisp_Image_Instance): add widget and subwindow data plus
3922         appropriate access functions.
3923
3924         * glyphs.c (decode_device_ii_format): new function for decoding
3925         image instantiator functions based on a device type as well as an
3926         image format.
3927         (decode_image_instantiator_format): just call
3928         decode_device_ii_format with nil device.
3929         (add_entry_to_device_ii_format_list): new function for per device
3930         method instances.
3931         (add_entry_to_image_instantiator_format_list): just call
3932         add_entry_to_device_ii_format_list with nil device.
3933         (check_valid_vector): new function.
3934         (instantiate_image_instantiator): instantiate using per-format
3935         method and then per-format-per-device method (device
3936         multi-methods). signal an error if neither is possible.
3937         (mark_image_instance): cope with subwindows and widgets.
3938         (print_image_instance): ditto.
3939         (image_instance_equal): ditto.
3940         (image_instance_hash): ditto.
3941         (allocate_glyph): ditto.
3942         (glyph_width): ditto.
3943         (glyph_height_internal): ditto.
3944         (xpm_instantiate): removed because of device multi-methods.
3945         (mark_subwindow_cachels): new cachel functions for caching
3946         instantiated subwindows on a per-frame basis. mostly copied from
3947         glyph cachel functions.
3948         (update_subwindow_cachel_data): ditto.
3949         (add_subwindow_cachel): ditto.
3950         (get_subwindow_cachel_index): ditto.
3951         (reset_subwindow_cachels): ditto.
3952         (mark_subwindow_cachels_as_not_updated): ditto.
3953         (unmap_subwindow): generic unmapping of subwindows based on cachel
3954         data.
3955         (map_subwindow): ditto.
3956         (initialize_subwindow_image_instance): generic initialisation of
3957         subwindow data.
3958         (syms_of_glyphs): add widget keywords.
3959
3960         * glyphs-x.h (struct x_subwindow_data): convert Lisp_Subwindow to
3961         x_subwindow_data.
3962
3963 1998-11-04  Andy Piper  <andy@xemacs.org>
3964
3965         * glyphs-widget.c: new file for instantiating widget type glyphs.
3966         (widget_possible_dest_types): new general dest type function for
3967         widgets.
3968         (widget_validate): ditto.
3969         (initialize_widget_image_instance): ditto
3970         (widget_instantiate): ditto. Sets up fg/bg, gui_item parsing
3971         before handing on control to device multi-methods.
3972         (syms_of_glyphs_widget): new function.
3973         (image_instantiator_format_create_glyphs_widget): new function,
3974         added placeholders for button, edit, combo, scrollbar
3975         (vars_of_glyphs_widget): new function.
3976
3977         * glyphs-msw.h (WIDGET_INSTANCE_MSWINDOWS_HANDLE): new define for
3978         storing window ids of widgets.
3979
3980         * glyphs-msw.c (mswindows_finalize_image_instance): cope with
3981         deletion of widget and subwindow glyphs.
3982         (mswindows_unmap_subwindow): new device function for unmapping
3983         subwindows on a msw frame.
3984         (mswindows_map_subwindow): ditto.
3985         (mswindows_register_image_instance): register instantiated widgets
3986         with the widget hastable.
3987         (mswindows_button_instantiate): instantiate a button type widget
3988         on an msw frame.
3989         (mswindows_subwindow_instantiate): instanttiate a subwindow on a
3990         mswindows frame.
3991         (image_instantiator_format_create_glyphs_mswindows): add device
3992         multi-methods for xbm, xpm, subwindow, edit and button.
3993
3994         * frame.h (struct frame): add subwindow_cachels dynarr for caching
3995         information about subwindows visible on the current frame. used by
3996         redisplay_clear_region to unmap subwindows as required.
3997
3998         * frame.c (mark_frame): mark subwindow_cachels.
3999         (allocate_frame_core): instantiate subwindow_cachels.
4000
4001         * frame-msw.c (mswindows_init_frame_1): instntiate and mark the
4002         widget hashtable.
4003
4004         * event-msw.c (mswindows_wnd_proc): add call to
4005         mswindows_handle_gui_wm_command to handle widget callbacks.
4006
4007         * emacs.c (main_1): add calls to glyphs-widget initialisation
4008         routines.
4009
4010         * console.h (struct console_methods): add
4011         unmap/map_subwindow_method for use be redisplay_clear_region to
4012         map and unmap subwindows. Remove xpm and xbm stuff - now dealt
4013         with by image instantiator multi-methods. Add
4014         resize_subwindow_method.
4015
4016         * console-stream.c (stream_clear_region): change signature to
4017         match new generic clear region function.
4018
4019         * Makefile.in.in: add glyphs-widget.o to list of objects.
4020
4021         * console-msw.h (struct mswindows_frame): add widget hashtable for
4022         wiring command ids to callbacks.
4023
4024 1998-12-16  Andy Piper  <andy@xemacs.org>
4025
4026         * XEmacs 21.2.6 is released
4027
4028 1998-12-08  Hrvoje Niksic  <hniksic@srce.hr>
4029
4030         * md5.c (Fmd5): Correctly initiate string input stream.
4031
4032         * Makefile.in.in (tests): Add md5-tests.el.
4033
4034 1998-12-06  Martin Buchholz  <martin@xemacs.org>
4035
4036         * lisp.h:
4037         * alloc.c (make_vector): remove travesty
4038         (Fmake_vector):
4039         (make_pure_vector):
4040         (pure_cons):
4041         (make_bit_vector_internal):
4042         (make_bit_vector):
4043         (make_bit_vector_from_byte_vector):
4044         (Fmake_bit_vector):
4045         - make vector_equal a little faster.
4046         - Don't use variable name `new'.
4047         - Use size_t instead of EMACS_INT.
4048         - usual Martin-style pointless bit-twiddling.
4049
4050         * fns.c (mapcar1):
4051         (Fmapconcat):
4052         (Fmapcar):
4053         (Fmapvector):
4054         Make mapcar faster.  In particular, make
4055           (mapc #'identity long-string)
4056         MUCH faster under Mule.
4057         * tests/automated/lisp-tests.el: Test 'em!
4058
4059 1998-12-06  Martin Buchholz  <martin@xemacs.org>
4060
4061         * bytecode.c (Ffetch_bytecode): Fix crash when loading lazy-loaded
4062         bytecode.
4063
4064 1998-12-13  Martin Buchholz  <martin@xemacs.org>
4065
4066         * console-msw.c: Function definitions follow coding standards
4067         - This prevents e.g. find-tag on Lisp_Event finding DEVENT
4068
4069 1998-12-11  Martin Buchholz  <martin@xemacs.org>
4070
4071         * events.h (struct timeout_data):
4072         * event-tty.c (tty_timeout_to_emacs_event):
4073         * event-msw.c (mswindows_wm_timer_callback):
4074         * event-Xt.c (Xt_timeout_to_emacs_event):
4075         * event-msw.c (mswindows_cancel_dispatch_event):
4076         Make sure Lisp_Objects inside events are initialized to Qnil, not
4077         Qnull_pointer, which is now illegal.
4078
4079 1998-12-10  Martin Buchholz  <martin@xemacs.org>
4080
4081         * lisp.h: Fix up prototypes to match alloc.c
4082
4083 1998-12-09  Andy Piper  <andy@xemacs.org>
4084
4085         * glyphs-msw.c (init_image_instance_from_xbm_inline): don't use
4086         XSETINT for assigning lisp objects.
4087
4088 1998-12-07  Martin Buchholz  <martin@xemacs.org>
4089
4090         * opaque.h:
4091         * console-msw.c (DHEADER):
4092         (DOPAQUE_DATA):
4093         (DEVENT):
4094         (DCONS):
4095         (DCONSCDR):
4096         (DSTRING):
4097         (DVECTOR):
4098         (DSYMBOL):
4099         (DSYMNAME):
4100         - max_align_t should not be visible to the user of the
4101           XOPAQUE_DATA macro.
4102         - use Bufbyte instead of char
4103         - parens around (FOOP (obj)) are always redundant.
4104           If they were necessary, we should fix the macro instead.
4105         - Always use string_data(foo) instead of foo->data.
4106
4107 1998-12-07  Martin Buchholz  <martin@xemacs.org>
4108
4109         * sysdep.c (set_descriptor_non_blocking):
4110         Since O_NONBLOCK is now always #defined, make use of fcntl
4111         conditional on F_SETFL being defined.
4112
4113 1998-12-09  Andy Piper  <andy@xemacs.org>
4114
4115         * menubar-msw.c (mswindows_handle_wm_command): add back in checks
4116         that got removed in the merge
4117
4118 1998-11-30  Greg Klanderman  <greg@alphatech.com>
4119
4120         * dired.c (vars_of_dired): bugfix for previous conditionalization
4121         of user-name-completion on non- Windows NT.
4122
4123 1998-12-08  Martin Buchholz  <martin@xemacs.org>
4124
4125         * windowsnt.h: Remove `support' for using index and rindex
4126
4127         * filelock.c (current_lock_owner):
4128         - Change uses of index -> strchr, rindex -> strrchr
4129
4130 1998-12-06  Martin Buchholz  <martin@xemacs.org>
4131
4132         * frame-msw.c (mswindows_init_frame_1):
4133         - use make_lisp_hash_table, not Fmake_hash_table
4134         - include elhash.h
4135
4136 1998-12-05  XEmacs Build Bot <builds@cvs.xemacs.org>
4137
4138         * XEmacs 21.2.5 is released
4139
4140 1998-11-30  Martin Buchholz  <martin@xemacs.org>
4141
4142         * xselect.c (receive_incremental_selection):
4143         * xselect.c (x_get_window_property):
4144         * xmu.c (XmuReadBitmapDataFromFile):
4145         * xmu.c (XmuCursorNameToIndex):
4146         * xgccache.c (describe_gc_cache):
4147         * xgccache.c (gc_cache_lookup):
4148         * xgccache.c (free_gc_cache):
4149         * xgccache.c (make_gc_cache):
4150         * window.h:
4151         * window.c (map_windows_1):
4152         * window.c (Fother_window_for_scrolling):
4153         * window.c (window_scroll):
4154         * window.c (change_window_height):
4155         * window.c (Fsplit_window):
4156         * window.c (window_left_gutter_width):
4157         * window.c (window_modeline_height):
4158         * window.c (invalidate_vertical_divider_cache_in_window):
4159         * window.c (window_needs_vertical_divider_1):
4160         * window.c (update_mirror_internal):
4161         * window.c (SET_LAST_FACECHANGE):
4162         * widget.c (Fwidget_plist_member):
4163         * unexec.c (copy_text_and_data):
4164         * unexcw.c (copy_executable_and_dump_data_section):
4165         * tooltalk.doc:
4166         * tooltalk.c (struct Lisp_Tooltalk_Pattern):
4167         * tooltalk.c (struct Lisp_Tooltalk_Message):
4168         * toolbar.h (struct toolbar_button):
4169         * toolbar.c (default_toolbar_visible_p_changed_in_window):
4170         * toolbar.c (recompute_overlaying_specifier):
4171         * toolbar.c (toolbar_validate):
4172         * toolbar.c (toolbar_button_at_pixpos):
4173         * toolbar.c (get_toolbar_coords):
4174         * toolbar.c (update_frame_toolbars):
4175         * toolbar-x.c:
4176         * toolbar-msw.c (mswindows_handle_toolbar_wm_command):
4177         * toolbar-msw.c (mswindows_find_toolbar_pos):
4178         * toolbar-msw.c (mswindows_output_toolbar):
4179         * toolbar-msw.c (mswindows_clear_toolbar):
4180         * toolbar-msw.c:
4181         * systty.h:
4182         * syssignal.h:
4183         * sysproc.h:
4184         * sysfile.h:
4185         * sysdll.c:
4186         * sysdep.h:
4187         * sysdep.c (rmdir):
4188         * sysdep.c (sys_fopen):
4189         * sysdep.c (sys_open):
4190         * sysdep.c (tty_init_sys_modes_on_device):
4191         * sysdep.c (get_eof_char):
4192         * sysdep.c (child_setup_tty):
4193         * sysdep.c (set_descriptor_non_blocking):
4194         * syntax.h:
4195         * syntax.c (scan_words):
4196         * syntax.c:
4197         * symsinit.h:
4198         * symeval.h (struct symbol_value_varalias):
4199         * symeval.h (struct symbol_value_forward):
4200         * symbols.c (syms_of_symbols):
4201         * symbols.c (init_symbols_once_early):
4202         * symbols.c (Fbuilt_in_variable_type):
4203         * symbols.c (Fsymbol_value_in_buffer):
4204         * symbols.c (default_value):
4205         * symbols.c (Fset):
4206         * symbols.c (find_symbol_value_quickly):
4207         * symbols.c (store_symval_forwarding):
4208         * symbols.c (set_default_console_slot_variable):
4209         * symbols.c (set_default_buffer_slot_variable):
4210         * symbols.c (verify_ok_for_buffer_local):
4211         * symbols.c (symbol_is_constant):
4212         * symbols.c (oblookup):
4213         * symbols.c (Funintern):
4214         * symbols.c (Fintern):
4215         * symbols.c (check_obarray):
4216         * sunplay.c:
4217         * specifier.h (struct specifier_methods):
4218         * specifier.h:
4219         * specifier.c (specifier_instance):
4220         * specifier.c (specifier_instance_from_inst_list):
4221         * specifier.c (decode_locale_type):
4222         * specifier.c (specifier_equal):
4223         * specifier.c (finalize_specifier):
4224         * specifier.c (prune_specifiers):
4225         * specifier.c (kill_specifier_buffer_locals):
4226         * sound.c (init_native_sound):
4227         * sound.c:
4228         * signal.c (alarm):
4229         * search.c (Fmatch_data):
4230         * search.c (match_limit):
4231         * search.c (Freplace_match):
4232         * search.c (skip_chars):
4233         * search.c (scan_buffer):
4234         * search.c:
4235         * scrollbar.c (specifier_vars_of_scrollbar):
4236         * scrollbar.c (Fscrollbar_set_hscroll):
4237         * scrollbar.c (vertical_scrollbar_changed_in_window):
4238         * scrollbar.c (release_window_mirror_scrollbars):
4239         * scrollbar.c (free_scrollbar_instance):
4240         * scrollbar-x.c:
4241         * scrollbar-msw.c:
4242         * s/msdos.h (O_BINARY):
4243         * s/linux.h:
4244         * s/freebsd.h (LIBS_TERMCAP):
4245         * regex.c (re_match_2_internal):
4246         * regex.c (compile_extended_range):
4247         * regex.c (POP_FAILURE_POINT):
4248         * regex.c (PUSH_FAILURE_POINT):
4249         * redisplay.h (RESET_CHANGED_SET_FLAGS):
4250         * redisplay.h:
4251         * redisplay.h (struct display_line):
4252         * redisplay.h (struct rune):
4253         * redisplay.c (vars_of_redisplay):
4254         * redisplay.c (redisplay_variable_changed):
4255         * redisplay.c (UPDATE_CACHE_RETURN):
4256         * redisplay.c (validate_line_start_cache):
4257         * redisplay.c (mark_redisplay_structs):
4258         * redisplay.c (mark_glyph_block_dynarr):
4259         * redisplay.c (window_line_number):
4260         * redisplay.c (redisplay_frame):
4261         * redisplay.c (redisplay_window):
4262         * redisplay.c (generate_modeline):
4263         * redisplay.c (create_right_glyph_block):
4264         * redisplay.c (create_left_glyph_block):
4265         * redisplay.c (create_text_block):
4266         * redisplay.c:
4267         * redisplay-x.c (x_output_hline):
4268         * redisplay-x.c (x_output_vertical_divider):
4269         * redisplay-tty.c (tty_output_display_block):
4270         * redisplay-output.c (output_display_line):
4271         * redisplay-output.c:
4272         * redisplay-msw.c (mswindows_output_vertical_divider):
4273         * redisplay-msw.c (mswindows_ring_bell):
4274         * redisplay-msw.c (mswindows_output_cursor):
4275         * redisplay-msw.c:
4276         * rangetab.c:
4277         * ralloc.c:
4278         * puresize.h (RAW_PURESIZE):
4279         * profile.c (syms_of_profile):
4280         * profile.c (Fstart_profiling):
4281         * profile.c (sigprof_handler):
4282         * profile.c:
4283         * procimpl.h:
4284         * process.c (vars_of_process):
4285         * process.c (read_process_output):
4286         * process.c (get_process):
4287         * process.c:
4288         * process-unix.c (unix_open_multicast_group):
4289         * process-unix.c (unix_get_tty_name):
4290         * process-unix.c (unix_send_process):
4291         * process-unix.c (unix_reap_exited_processes):
4292         * process-unix.c (unix_create_process):
4293         * process-unix.c (unix_init_process_io_handles):
4294         * process-unix.c (allocate_pty):
4295         * process-unix.c:
4296         * process-nt.c (nt_open_network_stream):
4297         * process-nt.c (nt_update_status_if_terminated):
4298         * process-nt.c (nt_finalize_process_data):
4299         * process-nt.c:
4300         * print.c (debug_short_backtrace):
4301         * print.c (debug_backtrace):
4302         * print.c (print_symbol):
4303         * print.c (print_internal):
4304         * print.c (print_cons):
4305         * print.c (Fwrite_char):
4306         * print.c (print_prepare):
4307         * print.c (canonicalize_printcharfun):
4308         * print.c (output_string):
4309         * print.c:
4310         * opaque.h:
4311         * opaque.c (allocate_managed_opaque):
4312         * opaque.c:
4313         * offix.c (DndSetData):
4314         * objects.c (face_boolean_create):
4315         * objects.c (font_instantiate):
4316         * objects.c (font_create):
4317         * objects.c (color_create):
4318         * objects.c (finalize_font_instance):
4319         * objects.c (finalize_color_instance):
4320         * objects.c:
4321         * objects-x.c (x_font_instance_truename):
4322         * objects-x.c:
4323         * objects-x.c (x_initialize_font_instance):
4324         * objects-x.c (allocate_nearest_color):
4325         * objects-tty.c (tty_initialize_font_instance):
4326         * objects-tty.c (tty_initialize_color_instance):
4327         * objects-msw.c (mswindows_initialize_color_instance):
4328         * ntproc.c (syms_of_ntproc):
4329         * ntproc.c (Fwin32_set_process_priority):
4330         * ntproc.c (sys_spawnve):
4331         * ntproc.c:
4332         * ntheap.c (get_data_end):
4333         * nt.c (period):
4334         * nt.c:
4335         * nt.c (stat):
4336         * nt.c (generate_inode_val):
4337         * nt.c (sys_rename):
4338         * nas.c:
4339         * mule-wnnfns.c (Fwnn_hinsi_number):
4340         * mule-wnnfns.c (Fwnn_yuragi):
4341         * mule-wnnfns.c (Fwnn_common_learn):
4342         * mule-wnnfns.c (Fwnn_suffix_learn):
4343         * mule-wnnfns.c (Fwnn_prefix_learn):
4344         * mule-wnnfns.c (Fwnn_okuri_learn):
4345         * mule-wnnfns.c (Fwnn_complex_conv):
4346         * mule-wnnfns.c (Fwnn_last_is_first):
4347         * mule-wnnfns.c (Fwnn_bmodify_dict_add):
4348         * mule-wnnfns.c (Fwnn_notrans_dict_add):
4349         * mule-wnnfns.c (Fwnn_fiusr_dict_add):
4350         * mule-wnnfns.c (Fwnn_fisys_dict_add):
4351         * mule-wnnfns.c (Fwnn_hinsi_list):
4352         * mule-wnnfns.c (Fwnn_fuzokugo_set):
4353         * mule-wnnfns.c (Fwnn_dict_search):
4354         * mule-wnnfns.c (Fwnn_word_toroku):
4355         * mule-wnnfns.c (Fwnn_hindo_update):
4356         * mule-wnnfns.c (Fwnn_bunsetu_henkou):
4357         * mule-wnnfns.c (Fwnn_kakutei):
4358         * mule-wnnfns.c (Fwnn_begin_henkan):
4359         * mule-wnnfns.c (Fwnn_dict_comment):
4360         * mule-wnnfns.c (Fwnn_dict_add):
4361         * mule-wnnfns.c (Fwnn_open):
4362         * mule-mcpath.c (mc_getcwd):
4363         * mule-coding.c (vars_of_mule_coding):
4364         * mule-coding.c (convert_to_external_format):
4365         * mule-coding.c (encoding_marker):
4366         * mule-coding.c (decoding_marker):
4367         * mule-coding.c (Fcopy_coding_system):
4368         * mule-coding.c (Fmake_coding_system):
4369         * mule-coding.c (Fcoding_system_list):
4370         * mule-coding.c (Ffind_coding_system):
4371         * mule-coding.c (symbol_to_eol_type):
4372         * mule-coding.c:
4373         * mule-charset.c (complex_vars_of_mule_charset):
4374         * mule-charset.c (vars_of_mule_charset):
4375         * mule-charset.c (Fset_charset_ccl_program):
4376         * mule-charset.c (struct charset_list_closure):
4377         * mule-charset.c (Ffind_charset):
4378         * mule-charset.c (make_charset):
4379         * mule-charset.c (non_ascii_valid_char_p):
4380         * mule-charset.c:
4381         * mule-ccl.c (ccl_driver):
4382         * mule-canna.c (c2mu):
4383         * mule-canna.c (Fcanna_henkan_begin):
4384         * mule-canna.c (Fcanna_parse):
4385         * mule-canna.c (Fcanna_store_yomi):
4386         * mule-canna.c (Fcanna_touroku_string):
4387         * mule-canna.c (Fcanna_initialize):
4388         * minibuf.c:
4389         * menubar.c (menu_parse_submenu_keywords):
4390         * menubar-x.c (make_dummy_xbutton_event):
4391         * menubar-x.c (set_frame_menubar):
4392         * menubar-x.c (menu_item_descriptor_to_widget_value_1):
4393         * menubar-x.c:
4394         * menubar-msw.h:
4395         * menubar-msw.c (mswindows_popup_menu):
4396         * menubar-msw.c (mswindows_update_frame_menubars):
4397         * menubar-msw.c (mswindows_handle_wm_command):
4398         * menubar-msw.c (unsafe_handle_wm_initmenu_1):
4399         * menubar-msw.c (unsafe_handle_wm_initmenupopup_1):
4400         * menubar-msw.c (update_frame_menubar_maybe):
4401         * menubar-msw.c (populate_or_checksum_helper):
4402         * menubar-msw.c (empty_menu):
4403         * menubar-msw.c:
4404         * md5.c:
4405         * marker.c (set_marker_internal):
4406         * marker.c (print_marker):
4407         * malloc.c:
4408         * make-src-depend:
4409         * lstream.c (lisp_buffer_rewinder):
4410         * lstream.c (mark_lstream):
4411         * lrecord.h:
4412         * lrecord.h (struct lrecord_header):
4413         * lread.c (readevalloop):
4414         * lread.c (locate_file):
4415         * lread.c (locate_file_in_directory):
4416         * lread.c (Flocate_file):
4417         * lread.c (load_force_doc_string_unwind):
4418         * lread.c (ebolify_bytecode_constants):
4419         * lread.c:
4420         * lisp.h:
4421         * lisp-union.h:
4422         * lisp-disunion.h:
4423         * linuxplay.c (linux_play_data_or_file):
4424         * linuxplay.c (audio_init):
4425         * line-number.c:
4426         * keymap.h:
4427         * keymap.c (describe_map):
4428         * keymap.c (describe_map_mapper):
4429         * keymap.c (Fdescribe_bindings_internal):
4430         * keymap.c (Fsingle_key_description):
4431         * keymap.c (map_keymap_sorted):
4432         * keymap.c (get_relevant_keymaps):
4433         * keymap.c (Flookup_key):
4434         * keymap.c (raw_lookup_key_mapper):
4435         * keymap.c (Fdefine_key):
4436         * keymap.c (Fevent_matches_key_specifier_p):
4437         * keymap.c (key_desc_list_to_event):
4438         * keymap.c (define_key_parser):
4439         * keymap.c (define_key_check_and_coerce_keysym):
4440         * keymap.c (keymap_submaps):
4441         * keymap.c (keymap_store_internal):
4442         * keymap.c (keymap_delete_inverse_internal):
4443         * keymap.c (keymap_store_inverse_internal):
4444         * keymap.c (print_keymap):
4445         * keymap.c (Lisp_Keymap):
4446         * keymap.c:
4447         * intl.c:
4448         * insdel.c (convert_bufbyte_string_into_emchar_dynarr):
4449         * insdel.c (make_gap):
4450         * input-method-xlib.c (get_XIM_input):
4451         * input-method-xlib.c (XIM_init_frame):
4452         * imgproc.c:
4453         * hash.h:
4454         * hash.c:
4455         * gui.c:
4456         * gui-x.c (button_item_to_widget_value):
4457         * gui-x.c (popup_selection_callback):
4458         * glyphs.h (struct image_instantiator_methods):
4459         * glyphs.c (mark_glyph_cachels):
4460         * glyphs.c (Fglyph_type):
4461         * glyphs.c (image_instantiate):
4462         * glyphs.c (image_create):
4463         * glyphs.c (make_image_instance_1):
4464         * glyphs.c (finalize_image_instance):
4465         * glyphs.c:
4466         * glyphs-x.c (finalize_subwindow):
4467         * glyphs-x.c (xface_validate):
4468         * glyphs-x.c (x_locate_pixmap_file):
4469         * glyphs-x.c (convert_EImage_to_XImage):
4470         * glyphs-msw.c:
4471         * glyphs-msw.c (mswindows_resource_instantiate):
4472         * glyphs-msw.c (xpm_to_eimage):
4473         * glyphs-msw.c (convert_EImage_to_DIBitmap):
4474         * glyphs-eimage.c (tiff_instantiate):
4475         * glyphs-eimage.c (png_instantiate):
4476         * glyphs-eimage.c (struct png_error_struct):
4477         * glyphs-eimage.c (gif_memory_storage):
4478         * glyphs-eimage.c:
4479         * gifrlib.h:
4480         * getloadavg.c (getloadavg):
4481         * getloadavg.c:
4482         * gdbinit:
4483         * free-hook.c (log_gcpro):
4484         * free-hook.c (check_malloc):
4485         * free-hook.c (check_free):
4486         * free-hook.c (ROUND_UP_TO_PAGE):
4487         * free-hook.c:
4488         * frame.h (struct frame):
4489         * frame.h:
4490         * frame.c (change_frame_size_1):
4491         * frame.c (allocate_frame_core):
4492         * frame.c:
4493         * frame-x.c (x_focus_on_frame):
4494         * frame-x.c (x_init_frame_2):
4495         * frame-x.c (x_popup_frame):
4496         * frame-x.c (xemacs_XtPopup):
4497         * frame-x.c:
4498         * frame-x.c (Foffix_start_drag_internal):
4499         * frame-x.c (x_cde_destroy_callback):
4500         * frame-x.c (x_wm_hack_wm_protocols):
4501         * frame-tty.c (tty_frame_visible_p):
4502         * frame-msw.c (mswindows_make_frame_invisible):
4503         * frame-msw.c (mswindows_after_init_frame):
4504         * frame-msw.c (mswindows_init_frame_1):
4505         * fns.c (syms_of_fns):
4506         * fns.c (Fbase64_decode_string):
4507         * fns.c (Fnconc):
4508         * fns.c (Ffillarray):
4509         * fns.c (Fobject_plist):
4510         * fns.c (Fget):
4511         * fns.c (Fcanonicalize_lax_plist):
4512         * fns.c (Fcanonicalize_plist):
4513         * fns.c (Fplist_remprop):
4514         * fns.c (Fplist_get):
4515         * fns.c (advance_plist_pointers):
4516         * fns.c (internal_plist_put):
4517         * fns.c (Fnreverse):
4518         * fns.c (Fremassq):
4519         * fns.c (Felt):
4520         * fns.c (Fsubstring):
4521         * fns.c (Fbvconcat):
4522         * fns.c (Flength):
4523         * fns.c (length_with_bytecode_hack):
4524         * fns.c (print_bit_vector):
4525         * fns.c:
4526         * floatfns.c (Ffloor):
4527         * floatfns.c:
4528         * floatfns.c (in_float_error):
4529         * fileio.c (Ffile_modes):
4530         * fileio.c (Fexpand_file_name):
4531         * fileio.c (Fmake_temp_name):
4532         * fileio.c (Ffile_name_nondirectory):
4533         * fileio.c (Ffile_name_directory):
4534         * file-coding.h:
4535         * file-coding.c (vars_of_mule_coding):
4536         * file-coding.c (convert_to_external_format):
4537         * file-coding.c (encoding_marker):
4538         * file-coding.c (decoding_marker):
4539         * file-coding.c (Fcopy_coding_system):
4540         * file-coding.c (Fmake_coding_system):
4541         * file-coding.c (struct coding_system_list_closure):
4542         * file-coding.c (Ffind_coding_system):
4543         * file-coding.c (symbol_to_eol_type):
4544         * file-coding.c:
4545         * faces.h (struct face_cachel):
4546         * faces.c (vars_of_faces):
4547         * faces.c (face_property_was_changed):
4548         * faces.c (mark_face_cachels):
4549         * faces.c (temporary_faces_list):
4550         * faces.c (struct face_list_closure):
4551         * faces.c:
4552         * extents.h (struct extent):
4553         * extents.c (vars_of_extents):
4554         * extents.c (struct copy_string_extents_1_arg):
4555         * extents.c (add_string_extents_mapper):
4556         * extents.c (Fextent_property):
4557         * extents.c (Fset_extent_property):
4558         * extents.c (symbol_to_glyph_layout):
4559         * extents.c (properties_equal):
4560         * extents.c (print_extent):
4561         * extents.c (print_extent_1):
4562         * extents.c (extent_in_region_p):
4563         * extents.c (gap_array_make_gap):
4564         * extents.c:
4565         * events.h (struct Lisp_Event):
4566         * events.h:
4567         * events.c (Fevent_properties):
4568         * events.c (format_event_object):
4569         * events.c (Fmake_event):
4570         * events.c (event_equal):
4571         * events.c (print_event):
4572         * events.c (mark_event):
4573         * event-stream.c ((read-char)
4574         * event-stream.c (vars_of_event_stream):
4575         * event-stream.c (syms_of_event_stream):
4576         * event-stream.c (Fset_recent_keys_ring_size):
4577         * event-stream.c (Fsit_for):
4578         * event-stream.c (Fnext_event):
4579         * event-stream.c (execute_help_form):
4580         * event-stream.c (maybe_kbd_translate):
4581         * event-stream.c:
4582         * event-msw.c (vars_of_event_mswindows):
4583         * event-msw.c (mswindows_wnd_proc):
4584         * event-msw.c (mswindows_need_event):
4585         * event-msw.c (mswindows_drain_windows_queue):
4586         * event-msw.c (mswindows_pump_outstanding_events):
4587         * event-msw.c:
4588         * event-msw.c (slurp_thread):
4589         * event-msw.c (struct ntpipe_slurp_stream):
4590         * event-msw.c (HANDLE_TO_USID):
4591         * event-Xt.c (emacs_Xt_handle_magic_event):
4592         * event-Xt.c (x_event_to_emacs_event):
4593         * event-Xt.c (x_reset_modifier_mapping):
4594         * event-Xt.c (x_reset_key_mapping):
4595         * event-Xt.c:
4596         * eval.c (syms_of_eval):
4597         * eval.c (warn_when_safe):
4598         * eval.c (warn_when_safe_lispobj):
4599         * eval.c (Fbacktrace_frame):
4600         * eval.c (Fbacktrace):
4601         * eval.c (top_level_set):
4602         * eval.c (unbind_to_hairy):
4603         * eval.c (specbind_magic):
4604         * eval.c (specbind_unwind_wasnt_local):
4605         * eval.c (call2_trapping_errors):
4606         * eval.c (call1_trapping_errors):
4607         * eval.c (catch_them_squirmers_call2):
4608         * eval.c (call0_trapping_errors):
4609         * eval.c (run_hook_trapping_errors):
4610         * eval.c (catch_them_squirmers_eval_in_buffer):
4611         * eval.c (call4_in_buffer):
4612         * eval.c (call3_in_buffer):
4613         * eval.c (call2_in_buffer):
4614         * eval.c (call1_in_buffer):
4615         * eval.c (call0_in_buffer):
4616         * eval.c (run_hook):
4617         * eval.c (run_hook_with_args_in_buffer):
4618         * eval.c (Fapply):
4619         * eval.c (Feval):
4620         * eval.c (do_autoload):
4621         * eval.c (un_autoload):
4622         * eval.c (Fautoload):
4623         * eval.c (Finteractive_p):
4624         * eval.c (Fcommand_execute):
4625         * eval.c (signal_quit):
4626         * eval.c (call_with_suspended_errors):
4627         * eval.c (signal_error):
4628         * eval.c (return_from_signal):
4629         * eval.c (Fcall_with_condition_handler):
4630         * eval.c (run_condition_case_handlers):
4631         * eval.c (condition_case_1):
4632         * eval.c (Funwind_protect):
4633         * eval.c (unwind_to_catch):
4634         * eval.c (internal_catch):
4635         * eval.c (Fmacroexpand_internal):
4636         * eval.c (Fuser_variable_p):
4637         * eval.c (Fdefconst):
4638         * eval.c (Fdefvar):
4639         * eval.c (Ffunction):
4640         * eval.c (signal_call_debugger):
4641         * eval.c (call_debugger):
4642         * eval.c:
4643         * emacs.c (main):
4644         * emacs.c (sort_args):
4645         * emacs.c (main_1):
4646         * elhash.h:
4647         * elhash.c:
4648         * editfns.c (Fencode_time):
4649         * editfns.c (Fdecode_time):
4650         * editfns.c (Fuser_full_name):
4651         * editfns.c:
4652         * editfns.c (save_excursion_restore):
4653         * ecrt0.c:
4654         * dynarr.c:
4655         * doprnt.c (emacs_doprnt_1):
4656         * doc.c (verify_doc_mapper):
4657         * doc.c (Fsnarf_documentation):
4658         * doc.c (Fdocumentation):
4659         * dll.c:
4660         * dired.c (user_name_completion):
4661         * dired.c (Fdirectory_files):
4662         * dialog-x.c:
4663         * dialog-msw.c:
4664         * dgif_lib.c (FreeSavedImages):
4665         * dgif_lib.c (DGifGetImageDesc):
4666         * device.h:
4667         * device.h (struct device):
4668         * device.c (Fselect_device):
4669         * device.c (allocate_device):
4670         * device.c:
4671         * device-x.c (Fx_keysym_on_keyboard_p):
4672         * device-x.c (Fx_valid_keysym_name_p):
4673         * device-x.c (x_IO_error_handler):
4674         * device-x.c (x_delete_device):
4675         * device-x.c (x_finish_init_device):
4676         * device-x.c (x_init_device):
4677         * device-x.c:
4678         * device-msw.c (mswindows_init_device):
4679         * dbxrc:
4680         * database.c (vars_of_database):
4681         * database.c (Fput_database):
4682         * database.c (Fopen_database):
4683         * database.c (berkdb_remove):
4684         * database.c (berkdb_put):
4685         * database.c (Fdatabasep):
4686         * database.c (print_database):
4687         * database.c:
4688         * data.c (vars_of_data):
4689         * data.c (syms_of_data):
4690         * data.c (init_errors_once_early):
4691         * data.c (prune_weak_lists):
4692         * data.c (finish_marking_weak_lists):
4693         * data.c (print_weak_list):
4694         * data.c (Fmod):
4695         * data.c (Fstring_to_number):
4696         * data.c (Fnumber_to_string):
4697         * data.c (Findirect_function):
4698         * data.c (Fsetcdr):
4699         * data.c (Ffloatp):
4700         * data.c (Fsubr_interactive):
4701         * data.c (Farrayp):
4702         * data.c (Fkeywordp):
4703         * data.c (Fnull):
4704         * data.c:
4705         * console.h (CONSOLE_NAME):
4706         * console.h:
4707         * console.c (vars_of_console):
4708         * console.c (Fselect_console):
4709         * console.c:
4710         * console-x.h (DEVICE_X_COLORMAP):
4711         * console-x.h (struct x_device):
4712         * console-x.c (x_device_to_console_connection):
4713         * console-tty.h (CONSOLE_TTY_FINAL_CURSOR_Y):
4714         * console-tty.c (tty_init_console):
4715         * console-tty.c:
4716         * console-msw.h (struct mswindows_frame):
4717         * conslots.h:
4718         * config.h.in:
4719         * cmds.c (internal_self_insert):
4720         * cmds.c (Fforward_line):
4721         * cmds.c (Fforward_char):
4722         * cmds.c:
4723         * cmdloop.c:
4724         * chartab.c (mark_char_table_entry):
4725         * chartab.c:
4726         * casefiddle.c (casify_word):
4727         * callproc.c (child_setup):
4728         * callproc.c (Fcall_process_internal):
4729         * callproc.c:
4730         * callint.c (Fcall_interactively):
4731         * bytecode.h:
4732         * bytecode.c (execute_rare_opcode):
4733         * bytecode.c (execute_optimized_program):
4734         * bytecode.c:
4735         * bufslots.h:
4736         * buffer.h (BUFFER_REALLOC):
4737         * buffer.h (GET_CHARPTR_INT_DATA_ALLOCA):
4738         * buffer.h (GET_CHARPTR_EXT_DATA_ALLOCA):
4739         * buffer.h:
4740         * buffer.h (MAP_INDIRECT_BUFFERS):
4741         * buffer.h (CHECK_LIVE_BUFFER):
4742         * buffer.c (init_initial_directory):
4743         * buffer.c (complex_vars_of_buffer):
4744         * buffer.c (vars_of_buffer):
4745         * buffer.c (finish_init_buffer):
4746         * buffer.c (Fget_file_buffer):
4747         * buffer.c (Fbuffer_list):
4748         * buffer.c (mark_buffer):
4749         * balloon_help.c (balloon_help_move_to_pointer):
4750         * balloon_help.c (show_help):
4751         * balloon_help.c:
4752         * backtrace.h:
4753         * alloc.c (garbage_collect_1):
4754         * alloc.c (sweep_strings):
4755         * alloc.c (sweep_compiled_functions):
4756         * alloc.c (sweep_bit_vectors_1):
4757         * alloc.c (sweep_vectors_1):
4758         * alloc.c (sweep_lcrecords_1):
4759         * alloc.c (tick_lcrecord_stats):
4760         * alloc.c (pure_string_sizeof):
4761         * alloc.c (mark_conses_in_list):
4762         * alloc.c (mark_object):
4763         * alloc.c (report_pure_usage):
4764         * alloc.c (make_pure_float):
4765         * alloc.c (make_pure_string):
4766         * alloc.c (free_managed_lcrecord):
4767         * alloc.c (mark_string):
4768         * alloc.c (noseeum_make_marker):
4769         * alloc.c (allocate_event):
4770         * alloc.c (Fbit_vector):
4771         * alloc.c (Fvector):
4772         * alloc.c (make_float):
4773         * alloc.c (Fmake_list):
4774         * alloc.c (Flist):
4775         * alloc.c (FREE_FIXED_TYPE_WHEN_NOT_IN_GC):
4776         * alloc.c (PUT_FIXED_TYPE_ON_FREE_LIST):
4777         * alloc.c (DECLARE_FIXED_TYPE_ALLOC):
4778         * alloc.c (dbg_constants):
4779         * alloc.c (gc_record_type_p):
4780         * alloc.c (free_lcrecord):
4781         * alloc.c (xmalloc):
4782         * alloc.c (NOSEEUM_INCREMENT_CONS_COUNTER):
4783         * abbrev.c:
4784         * Makefile.in.in (mostlyclean):
4785         * Makefile.in.in (external_client_xlib_objs_nonshared):
4786         * Makefile.in.in (temacs_link_args):
4787         * Makefile.in.in (release):
4788         * Makefile.in.in (dnd_objs):
4789         * Makefile.in.in (objs):
4790         * Makefile.in.in (PROGNAME):
4791         * EmacsShell.c: cast strings to (XtPointer)
4792         * EmacsFrame.c: cast strings to (XtPointer)
4793         - mega patch
4794         - rewrite basic lisp functions for speed
4795         - rewrite bytecode interpreter for speed
4796         - rewrite list looping constructs for speed and safety using
4797           tortoise/hare.
4798         - use size_t where appropriate.
4799         - new hashtable implementation
4800         - cleanup implementation of opaques
4801         - opaques can now be purecopy'ed
4802         - move some cl functionality into C for speed.
4803         - remove last remaining VMS support
4804         - spelling fixes
4805         - improve gdb/dbx debugger support
4806         - move pure.c back into alloc.c for performance
4807         - enable report_pure_usage() if --memory-usage-stats
4808         - remove remnants of Energize support (EMACS_BTL, cadillac...)
4809         - don't use symbols with leading `_' or embedded `__'
4810         - globally cleanup duplicated semicolons `;;'
4811         - I give in on %p vs %lx - we use printf("%lx",(long) p)
4812           globally.
4813         - globally replace O_NDELAY with O_NONBLOCK.
4814         - globally replace CDISABLE with _POSIX_VDISABLE.
4815         - use O_RDONLY and O_RDWR instead of magic `0' and `2'.
4816         - define (and maybe use!) STDERR_FILENO and friends.
4817         - add support for macros defined in C
4818         - `when', `unless', `not' and `defalias' now defined in C,
4819           so that they are universally available.
4820         - rename defvar_mumble to defvar_magic
4821         - rename RETURN__ to RETURN_SANS_WARNINGS
4822         - use consistent style of initial caps in error messages
4823         - implement last, butlast, nbutlast, copy-list in C.
4824         - provide typedefs for all struct Lisp_foo types
4825         - Lisp_Objects must be initialized to Qnil rather than 0.
4826         - make sure XEmacs runs (slowly) with always_gc == 1;
4827         - fast and safe LOOP_* macros
4828         - change calls to XSETOBJ to XSETFOO
4829         - replace calls to XSETINT by make_int()
4830         - plug up memory leaks
4831         - use style markobj (foo), not silly ((markobj) (foo))
4832         - use XFLOAT_DATA (obj) instead of float_data (XFLOAT (obj))
4833
4834 1998-12-02  P. E. Jareth Hein  <jareth@camelot.co.jp>
4835
4836         * unexec.c: Changed a #ifndef statement to fix XEmacs on BSDI 3.0
4837
4838 1998-11-28  SL Baur  <steve@altair.xemacs.org>
4839
4840         * XEmacs 21.2-beta4 is released.
4841
4842 1998-11-27  SL Baur  <steve@altair.xemacs.org>
4843
4844         * mule-charset.c (complex_vars_of_mule_charset): Fix graphic
4845         property in control-1 charset.
4846         From Julian Bradfield <jcb@daimi.au.dk>
4847
4848 1998-11-26  Jan Vroonhof  <vroonhof@math.ethz.ch>
4849
4850         * gui-x.c (button_item_to_widget_value): Ignore :key-sequence
4851         keyword.
4852         Add stub for :label.
4853
4854         * gui.c (gui_item_add_keyval_pair): ditto.
4855
4856         * menubar-x.c (menu_item_descriptor_to_widget_value_1): Ignore
4857         :key-sequence keyword.
4858         Add stub for:label.
4859         Support :active for submenus like the Windows code and FSF Emacs.
4860
4861 1998-11-27  Hrvoje Niksic  <hniksic@srce.hr>
4862
4863         * dired.c (make_directory_hash_table): make_string() is OK because
4864         readdir() Mule-encapsulates.
4865
4866 1998-11-26  Hrvoje Niksic  <hniksic@srce.hr>
4867
4868         * fns.c (Fbase64_encode_string): Fix docstring.
4869         (Fbase64_decode_string): Ditto.
4870
4871 1998-11-26  Hrvoje Niksic  <hniksic@srce.hr>
4872
4873         * editfns.c (Ftranslate_region): Use
4874         convert_bufbyte_string_into_emchar_string().
4875
4876 1998-11-25  Hrvoje Niksic  <hniksic@srce.hr>
4877
4878         * editfns.c (Ftranslate_region): Accept vectors and char-tables as
4879         well as strings.
4880         (Ftranslate_region): Turn table into an array of Emchars for
4881         larger regions.
4882
4883 1998-11-25  Hrvoje Niksic  <hniksic@srce.hr>
4884
4885         * chartab.c (Freset_char_table): Fix wrong placement of #endif.
4886
4887 1998-11-24  Hrvoje Niksic  <hniksic@srce.hr>
4888
4889         * chartab.c (Freset_char_table): Don't blindly fill chartables of
4890         type `char' with nils.
4891
4892         * chartab.c (canonicalize_char_table_value): Coerce ints to chars
4893         for tables of type `char'.
4894
4895 1998-11-26  Didier Verna  <verna@inf.enst.fr>
4896
4897         * input-method-xlib.c (Initialize_Locale): don't call
4898         XtSetLanguageProc. We've done the whole work here.
4899         * input-method-xfs.c (Initialize_Locale): ditto.
4900         * input-method-motif.c (Initialize_Locale): ditto.
4901
4902 1998-11-26  Didier Verna  <verna@inf.enst.fr>
4903
4904         * process-unix.c (unix_create_process): handle properly
4905         Vfile_name_coding_system for converting the program and directory
4906         names.
4907
4908 1998-11-27  SL Baur  <steve@altair.xemacs.org>
4909
4910         * m/arm.h: New file.
4911         From James LewisMoss <dres@ioa.com>
4912
4913 1998-11-27  Takeshi Hagiwara  <hagiwara@ie.niigata-u.ac.jp>
4914
4915         * m/mips-nec.h:
4916         Fix the realpath() problem of UnixWare2.1.3.
4917         Patches for NEC's sysv4.2 machine.
4918
4919 1998-11-25  Hrvoje Niksic  <hniksic@srce.hr>
4920
4921         * dired.c (Fdirectory_files): Remove redundant code.
4922
4923 1998-11-25  Hrvoje Niksic  <hniksic@srce.hr>
4924
4925         * fns.c (free_malloced_ptr): New function.
4926         (XMALLOC_OR_ALLOCA): New macro.
4927         (XMALLOC_UNBIND): Ditto.
4928         (Fbase64_encode_region): Use malloc() for large blocks; arrange it
4929         to be freed in case of non-local exit.
4930         (Fbase64_encode_string): Ditto.
4931         (Fbase64_decode_region): Ditto.
4932         (Fbase64_decode_string): Ditto.
4933         (STORE_BYTE): New macro.
4934         (base64_decode_1): Use it.
4935
4936 1998-11-25  Hrvoje Niksic  <hniksic@srce.hr>
4937
4938         * fns.c (base64_value_to_char): Base64 stuff.
4939
4940 1998-11-24  Hrvoje Niksic  <hniksic@srce.hr>
4941
4942         * editfns.c (Fbuffer_substring): New function.
4943
4944         * lisp.h: Declare make_string_from_buffer_no_extents().
4945
4946         * insdel.c (make_string_from_buffer_1): New function.
4947         (make_string_from_buffer_no_extents): Ditto.
4948
4949 1998-11-15  Michael Sperber [Mr. Preprocessor]  <sperber@informatik.uni-tuebingen.de>
4950
4951         * linuxplay.c: Including <fcntl.h> instead of <sys/fcntl.h> makes
4952         sound work on AIX with OSS installed.  Linux should still work.
4953
4954 1998-11-03  Andy Piper  <andyp@parallax.co.uk>
4955
4956         * config.h.in: name change for cygwin/version.h
4957
4958         * configure.in: check for cygwin/version.h now.
4959
4960         * cygwin32.h: track CYGWIN_DLL_VERSION_MAJOR ->
4961         CYGWIN_VERSION_DLL_MAJOR name change in cygwin b20.
4962         move cygwin32/version.h to cygwin/version.h
4963
4964 1998-11-03  Olivier Galibert  <galibert@pobox.com>
4965
4966         * lisp.h  (struct  Lisp_Bit_Vector): Fix declaration of  bits from
4967         int to long.
4968
4969 1998-10-22  Andy Piper  <andyp@parallax.co.uk>
4970
4971         * cygwin32.h: track CYGWIN_DLL_VERSION_MAJOR ->
4972         CYGWIN_VERSION_DLL_MAJOR name change in cygwin b20.
4973         enable BROKEN_SIGIO under b20 to make QUIT work.
4974
4975 1998-10-22  Andy Piper  <andyp@parallax.co.uk>
4976
4977         * frame-msw.c (mswindows_size_frame_internal): force frame sizing
4978         to fit within the constraints of the screen size. I.e. make the
4979         frame small enough to fit and move it if some of it will be
4980         off-screen.
4981
4982 1998-10-19  Greg Klanderman  <greg@alphatech.com>
4983
4984         * dired.c: conditionalize inclusion of user-name-completion
4985         primitives on non-Windows NT.  The needed functions don't exist on NT.
4986
4987 1998-11-24  SL Baur  <steve@altair.xemacs.org>
4988
4989         * gifrlib.h: Clean up types for 64 bit compile.
4990         * dgif_lib.c (DGifInitRead): Ditto.
4991         (MakeSavedImage): Ditto.
4992         * emacs.c (decode_path): Ditto.
4993         From Steve Carney <carney@pa.dec.com>
4994
4995 1998-10-16  William M. Perry  <wmperry@aventail.com>
4996
4997         * glyphs-msw.c (bitmap_table): Fixed typo in builtin bitmaps
4998           (cehckboxes instead of checkboxes).
4999
5000 1998-10-15  SL Baur  <steve@altair.xemacs.org>
5001
5002         * XEmacs 21.2-beta3 is released.
5003
5004 1998-10-13  Raymond Toy  <toy@rtp.ericsson.se>
5005
5006         * runemacs.c (WinMain): If the basename is "rungnuclient.exe", run
5007         gnuclient.  Otherwise, we run xemacs as we always did.  This gets
5008         rid of the annoying DOS window when running gnuclient.
5009
5010 1998-10-13  Andy Piper  <andyp@parallax.co.uk>
5011
5012         * dragdrop.c (vars_of_dragdrop): rename HAVE_MSWINDOWS ->
5013         HAVE_MS_WINDOWS typo.
5014
5015 1998-10-13  SL Baur  <steve@altair.xemacs.org>
5016
5017         * process-unix.c (unix_send_process): Set closed flag on writable
5018         pipe after SIGPIPE is received and before we call deactivate_process.
5019
5020 1998-10-03  Gunnar Evermann  <ge204@eng.cam.ac.uk>
5021
5022         * window.c (Fset_window_start): respect narrowing when
5023         checking wheter start is at the beginning of a line.
5024         (Fset_window_buffer): Ditto
5025         Fixes repeatable crash in VM.
5026
5027 1998-10-09  SL Baur  <steve@altair.xemacs.org>
5028
5029         * window.c (specifier_vars_of_window): Set default vertical
5030         divider width to 1 on ttys.
5031
5032 1998-10-08  Martin Buchholz  <martin@xemacs.org>
5033
5034         * alloc.c:
5035         * unexec.c:
5036         * malloc.c:
5037         Add <stddef.h> to get ptrdiff_t declaration
5038
5039 1998-10-07  Jonathan Harris  <jhar@tardis.ed.ac.uk>
5040
5041         * scrollbar-msw.c: Use the same vertical scrollbar drag hack as
5042           is used for Motif or Lucid scrollbars under X.
5043
5044 1998-10-08  Pierre Wendling  <pw@ebc.vbe.dec.com>
5045
5046         * m/alpha.h (UNEXEC): quoted to avoid bad expansion when running
5047         `configure'
5048
5049 1998-10-06  Takeshi Hagiwara  <hagiwara@ie.niigata-u.ac.jp>
5050
5051         * frame-x.c (x_delete_frame): Fix an argument of XtDestroyWidget.
5052
5053 1998-10-05  Andy Piper  <andyp@parallax.co.uk>
5054
5055         * s/cygwin32.h: more cygwin b20 reorganisation.
5056
5057 1998-10-01  Raymond Toy  <toy@rtp.ericsson.se>
5058
5059         * nas.c: Added necessary support functions to be able to handle
5060         WAVE files in memory, just like the support for SND files in
5061         memory.
5062
5063 1998-09-30  SL Baur  <steve@altair.xemacs.org>
5064
5065         * callproc.c (child_setup): Fix spelling typo.
5066
5067 1998-09-29  SL Baur  <steve@altair.xemacs.org>
5068
5069         * XEmacs 21.2-beta2 is released.
5070
5071 1998-09-27  P. E. Jareth Hein  <jareth@camelot.co.jp>
5072
5073         * regex.c (re_match_2_internal): Add in code to reset lowest_active_reg
5074         to prevent memory corruption in the case of jumping out of a series of
5075         nested match patterns. This is a rather brute force approach, though.
5076
5077 1998-09-02  Andy Piper  <andyp@parallax.co.uk>
5078
5079         * config.h.in: ditto.
5080
5081         * s/cygwin32.h: rearrange declarations to cope with cygwin
5082         b20. Include cygwin32/version.h if it exists.
5083
5084 1998-09-20  Jonathan Harris  <jhar@tardis.ed.ac.uk>
5085
5086         * device-msw.c (mswindows_init_device): Call new
5087           mswindows_enumerate_fonts() function in objects-msw.c instead
5088           of font_enum_callback_1() to enumerate fonts.
5089
5090           font_enum_callback_1() and _2() moved to objects-msw.c.
5091
5092         * faces.c (complex_vars_of_faces): Make the mswindows default
5093           face font fully specified and provide some fallbacks.
5094
5095         * objects-msw.c: font_enum_callback_1() and _2() moved here
5096           from objects-msw.c. Obtain the enumerated font's character
5097           sets by table lookup instead of using the locale-specific
5098           string provided by Windows.
5099
5100           New public non-method mswindows_enumerate_fonts() that fills
5101           in the supplied mswindows device's font list.
5102
5103           mswindows_initialize_font_instance: Use the supplied name
5104           variable instead of f->name when signalling errors. Match font
5105           weights and character sets using lookup tables which handle
5106           spaces instead of by frobbing.
5107
5108 1998-09-20  Jonathan Harris  <jhar@tardis.ed.ac.uk>
5109
5110         * process-nt.c: Define an arbitrary limit, FRAGMENT_CODE_SIZE,
5111           on the size of code fragments passed to run_in_other_process.
5112
5113           run_in_other_process(): Use FRAGMENT_CODE_SIZE to determine
5114           the amount of memory to allocate in the other process.
5115
5116           Removed sigkill_code_end(), sigint_code_end() and
5117           sig_enable_code_end() since they are now redundant.
5118
5119           send_signal() and enable_child_signals(): Don't try to work
5120           out the end of the code fragments passed to
5121           run_in_other_process()
5122
5123 1998-09-10  Kazuyuki IENAGA  <ienaga@jsys.co.jp>
5124
5125         * src/s/freebsd.h: Added __ELF__ and compiler/liker flags for
5126         FreeBSD-current.
5127
5128         * src/unexelf.c: Partially synched with FSF's 20.3.
5129
5130 1998-09-10  Hrvoje Niksic  <hniksic@srce.hr>
5131
5132         * insdel.c (signal_after_change): Map across indirect buffers
5133         here, and not in the upper-level functions.
5134         (signal_first_change): Don't check for Armageddon.
5135         (signal_before_change): Map across indirect buffers here.
5136         (prepare_to_modify_buffer): ...and here.
5137
5138 1998-09-09  Hrvoje Niksic  <hniksic@srce.hr>
5139
5140         * insdel.c (signal_after_change): Add return value.
5141         (buffer_insert_string_1): Use it.
5142         (buffer_delete_range): Ditto.
5143         (buffer_replace_char): Ditto.
5144         (cancel_multiple_change): Map the indirect buffers.
5145
5146 1998-09-06  Hrvoje Niksic  <hniksic@srce.hr>
5147
5148         * insdel.c (init_buffer_text): Remove INDIRECT_P parameter.
5149         (uninit_buffer_text): Ditto.
5150
5151         * buffer.c (Fmake_indirect_buffer): Implement stricter
5152         error-checking.
5153
5154 1998-09-04  Hrvoje Niksic  <hniksic@srce.hr>
5155
5156         * insdel.c (change_function_restore): Reverse order of
5157         function-call and assignment.
5158         (first_change_hook_restore): Ditto.
5159
5160         * extents.c (mark_extent_auxiliary): Mark them.
5161         (Fset_extent_property): Set them.
5162         (Fextent_property): Get them.
5163         (Fextent_properties): Ditto.
5164         (vars_of_extents): Set their default.
5165
5166         * extents.h (struct extent_auxiliary): Add before_change_functions
5167         and after_change_functions.
5168
5169         * insdel.c (signal_before_change): Use it.
5170         (signal_after_change): Ditto.
5171
5172         * extents.c (report_extent_modification): New function.
5173
5174         * insdel.c (signal_before_change): Don't check for Armageddon.
5175         (signal_after_change): Ditto.
5176
5177 1998-09-11  Gunnar Evermann  <Gunnar.Evermann@nats.informatik.uni-hamburg.de>
5178
5179         * redisplay.c (redisplay_window): make sure a new starting point
5180         is chosen if it somehow got moved from the beginning of the line
5181         -- this can happen because Fwiden was called recently.
5182
5183         * window.c (Fset_window_start): set start_at_line_beg correctly
5184         (Fset_window_buffer): Ditto
5185
5186 1998-09-06  Hrvoje Niksic  <hniksic@srce.hr>
5187
5188         * insdel.c (init_buffer_text): Remove INDIRECT_P parameter.
5189         (uninit_buffer_text): Ditto.
5190
5191         * buffer.c (Fmake_indirect_buffer): Implement stricter
5192         error-checking.
5193
5194 1998-05-14  Jan Vroonhof  <vroonhof@math.ethz.ch>
5195
5196         * emacs.c (main_1): Removed references to *vars_of_filelock.
5197
5198         * lisp.h: Added Fsystem_name.
5199
5200         * filelock.c: Replaced by version from FSF 20.2. Now implements
5201         locking by using symlinks which is NFS safe. However keep the
5202         GCPRO's in lock_file and the calls to callx_in_buffer like our old
5203         version (and of course use ansi C, acessor macros, etc).
5204
5205 1998-09-06  Jan Vroonhof  <vroonhof@math.ethz.ch>
5206
5207         * process-unix.c (unix_create_process): Reset SIGHUP handler to
5208         SIG_DFL. We now try to conserve any inherted SIG_IGN settings
5209         in init_signals_very_early. However these should not be passed
5210         on to children attached to the new pty.
5211
5212 1998-08-28  Andy Piper  <andyp@parallax.co.uk>
5213
5214         * glyphs-eimage.c (png_instantiate_unwind): clean up eimage after use.
5215
5216 1998-09-07  Jonathan Harris  <jhar@tardis.ed.ac.uk>
5217
5218         * fileio.c (file-name-directory, file_name_as_directory):
5219           Don't call CORRECT_DIR_SEPS, even when #defined WINDOWSNT.
5220
5221 1998-09-02  Andy Piper  <andyp@parallax.co.uk>
5222
5223         * emacs.c (main_1): init_ralloc() if initialised and we have REL_ALLOC
5224
5225         * ralloc.c: uncomment __morecore.
5226
5227 1998-09-92  Jonathan Harris  <jhar@tardis.ed.ac.uk>
5228
5229         * event-msw.c(winsock_writer): Supply a dummy 4th argument to
5230           WriteFile() to fix a winsock 1.x bug on Win95.
5231
5232 1998-08-28  Hrvoje Niksic  <hniksic@srce.hr>
5233
5234         * event-Xt.c (emacs_Xt_mapping_action): Check for device being
5235         deleted.
5236         (x_event_to_emacs_event): Ditto.
5237         (emacs_Xt_handle_focus_event): Ditto.
5238         (emacs_Xt_handle_magic_event): Ditto.
5239
5240         * console-x.h (struct x_device): New flag being_deleted.
5241         (DEVICE_X_BEING_DELETED): New macro.
5242
5243         * device-x.c (x_IO_error_handler): Throw to top-level instead of
5244         returning.  Before doing that, set the being_deleted flag on the
5245         device.
5246
5247 1998-08-27  Hrvoje Niksic  <hniksic@srce.hr>
5248
5249         * device-x.c (x-seppuku-on-epipe): Removed.
5250
5251 1998-08-26  Gunnar Evermann  <Gunnar.Evermann@nats.informatik.uni-hamburg.de>
5252
5253         * frame-x.c (x_delete_frame): Flush the X output buffer after
5254         calling XtDestroyWidget to ensure that the windows are really
5255         killed right now.
5256
5257 1998-08-26  Hrvoje Niksic  <hniksic@srce.hr>
5258
5259         * menubar-x.c (my_run_hook): New unused function.
5260         (pre_activate_callback): Use run_hook for Qactivate_menubar_hook,
5261         since we ignore the results of the contained functions anyway.
5262
5263 1998-08-26  P. E. Jareth Hein  <jareth@camelot.co.jp>
5264
5265         * glyphs-eimage.c (gif_instantiate): Fix a crash in handling
5266         interlaced GIF files that are smaller than 4 lines high...
5267
5268 1998-08-31  Hrvoje Niksic  <hniksic@srce.hr>
5269
5270         * buffer.c (map_over_sharing_buffers): Deleted.
5271
5272         * insdel.c (MAP_INDIRECT_BUFFERS): Move to buffer.h.
5273
5274         * buffer.c (Fkill_buffer): Keep indirect_children updated while
5275         killing them.
5276
5277 1998-08-31  Hrvoje Niksic  <hniksic@srce.hr>
5278
5279         * insdel.c (buffer_insert_string_1): Advance the point bytind in
5280         all the buffers.
5281         (buffer_delete_range): Ditto.
5282
5283         * marker.c (init_buffer_markers): Set point-marker to the value of
5284         point in an indirect buffer.
5285
5286 1998-08-30  Hrvoje Niksic  <hniksic@srce.hr>
5287
5288         * undo.c (undo_prelude): Test last-undo-buffer against base
5289         buffer.
5290
5291         * insdel.c (MAP_INDIRECT_BUFFERS): Use it.
5292
5293         * buffer.h (BUFFER_BASE_BUFFER): New macro.
5294
5295 1998-08-30  Hrvoje Niksic  <hniksic@srce.hr>
5296
5297         * insdel.c (init_buffer_text): Initialize it here.
5298
5299         * line-number.c: Address line_number_cache through buffer->text.
5300
5301         * buffer.c (mark_buffer): Mark line number cache.
5302
5303         * bufslots.h (line_number_cache): Move to struct buffer_text.
5304
5305         * insdel.c (buffer_insert_string_1): Propagate signals and changes
5306         across the children buffers.
5307         (buffer_delete_range): Ditto.
5308         (buffer_replace_char): Ditto.
5309         (gap_left): Ditto.
5310         (gap_right): Ditto.
5311
5312         * insdel.c (MAP_INDIRECT_BUFFERS): New macro.
5313
5314         * buffer.c (Fmake_indirect_buffer): Uncomment.
5315
5316 1998-08-31  Hrvoje Niksic  <hniksic@srce.hr>
5317
5318         * macros.c (Fend_kbd_macro): Remove trailing period from error
5319         message.
5320         (Fexecute_kbd_macro): Ditto.
5321
5322 1998-08-21  Greg Klanderman  <greg@alphatech.com>
5323
5324         * dired.c (Fuser_name_completion): remove optional 2nd argument.
5325         (Fuser_name_completion_1): new function to return uniqueness
5326         indication in addition to the user name completion.
5327         (user_name_completion): change type of `uniq' argument.
5328
5329 1998-08-19  Michael Sperber [Mr. Preprocessor]  <sperber@informatik.uni-tuebingen.de>
5330
5331         * lread.c (vars_of_lread): Removed `source-directory' variable.
5332
5333 1998-08-22  Hrvoje Niksic  <hniksic@srce.hr>
5334
5335         * fileio.c (Ffile_readable_p): Apply the DOS/Windows logic to
5336         Cygwin.
5337
5338 1998-08-19  SL Baur  <steve@altair.xemacs.org>
5339
5340         * dired.c (vars_of_dired): Fix misapplied patch.
5341
5342 1998-08-16  Martin Buchholz  <martin@xemacs.org>
5343
5344         * fns.c (Fremrassq, remrassq_no_quit):
5345         A XCAR that should have been an XCDR turned Fremrassq into Fremassq
5346
5347 1998-07-17  Didier Verna  <verna@inf.enst.fr>
5348
5349         * redisplay-x.c (x_get_gc): returns a GC with a FillStipple fill
5350         style as foreground GC for faces that have the `dim' property.
5351         (x_output_string): when the `dim' face property is set,
5352         ensure the gray pixmap has been created, and get a proper
5353         foreground GC to draw the text.
5354
5355 1998-08-09  Jonathan Harris  <jhar@tardis.ed.ac.uk>
5356
5357         * event-msw.c (mswindows_wnd_proc): Workaround for a Win95 bug:
5358           Manually track the state of the left and right Ctrl and Alt
5359           modifiers.
5360
5361 1998-08-07 Matt Stupple <matts@tibco.com>
5362
5363         * ntproc.c: don't wait on char_consumed at thread entry.
5364         Additionally, to get the 'process' marked as finished, ensure
5365         that the CHILD_ACTIVE macro returns false, so before exiting
5366         close char_avail and set it to NULL, and close other handles
5367         to reduce handle leak problems.
5368
5369 1998-08-09  Jonathan Harris  <jhar@tardis.ed.ac.uk>
5370
5371         * menubar-msw.c (displayable_menu_item): take account of menu
5372           depth when deciding whether to try to display accelerators.
5373
5374 1998-08-04  Andy Piper  <andyp@parallax.co.uk>
5375
5376         * event-msw.c: use MsgWaitForMultipleObjects if there are no
5377         subprocesses.
5378
5379         * glyphs-msw.c: fix a couple of potential handle leaks.
5380
5381 1998-08-04  P. E. Jareth Hein  <jareth@camelot.co.jp>
5382
5383         * dgif_lib.c gif_io.c gifrlib.h: New files to put GIF
5384           *decoding ONLY* back into the core.
5385         * glyphs-eimage.c: Change referenced header file for GIF
5386           reading to point to the incore version.
5387
5388 1998-07-20  Martin Buchholz  <martin@xemacs.org>
5389
5390         * casefiddle.c (casify_object):
5391         Change algorithm from O(N**2) to O(N).
5392         Code cleanup.
5393         Doc string cleanup.
5394
5395 1998-07-22  Greg Klanderman  <greg@alphatech.com>
5396
5397         * dired.c (file_name_completion_unwind): don't leak the cons.
5398
5399 1998-07-20  Greg Klanderman  <greg@alphatech.com>
5400
5401         * dired.c (Fuser_name_completion): new function.
5402         (Fuser_name_all_completions): new function.
5403         (user_name_completion): new function.
5404         (syms_of_dired): 2 new DEFSUBRs.
5405         (vars_of_dired): initialize user name cache vars.
5406
5407 1998-07-29  P. E. Jareth Hein  <jareth@camelot.co.jp>
5408
5409         * glyphs-eimage.c (png_instantiate): Add proper handling for background
5410         colors taken from the default face.  Also correct a thinko in
5411         transparency (not alpha) handling.
5412
5413 1998-07-23  Martin Buchholz  <martin@xemacs.org>
5414
5415         * s/decosf4-0.h:  Use a perfectly ordinary link.  Nuke BSD crap.
5416         * unexalpha.c: ANSI C-ize.  Clean compiler warnings.
5417         * lread.c (Fload_internal):  Be very careful with printfs of
5418         size_t's
5419         * gui-x.c (menu_name_to_accelerator): tolower wants an `int'
5420         argument.
5421
5422 1998-07-27  Gunnar Evermann  <Gunnar.Evermann@nats.informatik.uni-hamburg.de>
5423
5424         * callint.c (Fcall_interactively): GCPRO prompt string before
5425         passing it to Fread_key_sequence
5426
5427 1998-07-27  SL Baur  <steve@altair.xemacs.org>
5428
5429         * keymap.c (vars_of_keymap): Initialize Vkey_translation_map and
5430         Vvertical_divider_map.
5431
5432         * mule-canna.c (vars_of_mule_canna): Initialize every symbol to
5433         Qnil or 0, none were initialized prior to this change.
5434
5435         Rename misnamed `V' prefixed integer variables:
5436         Vcanna_empty_info, Vcanna_through_info, Vcanna_underline,
5437         Vcanna_inhibit_hankakukana, Vcanna_henkan_length, Vcanna_henkan_revPos,
5438         Vcanna_henkan_revLen, Vcanna_ichiran_length, Vcanna_ichiran_revPos,
5439         Vcanna_ichiran_revLen.
5440
5441         Rename misnamed `V' prefixed integer variables and initialize
5442         properly in the vars_of routine.
5443         Vcanna_mode_AlphaMode, Vcanna_mode_EmptyMode, Vcanna_mode_KigoMode,
5444         Vcanna_mode_YomiMode, Vcanna_mode_JishuMode, Vcanna_mode_TankouhoMode,
5445         Vcanna_mode_IchiranMode, Vcanna_mode_YesNoMode, Vcanna_mode_OnOffMode,
5446         Vcanna_mode_AdjustBunsetsuMode, Vcanna_mode_ChikujiYomiMode,
5447         Vcanna_mode_ChikujiTanMode, Vcanna_mode_HenkanMode,
5448         Vcanna_mode_HenkanNyuryokuMode, Vcanna_mode_ZenHiraHenkanMode,
5449         Vcanna_mode_HanHiraHenkanMode, Vcanna_mode_ZenKataHenkanMode,
5450         Vcanna_mode_HanKataHenkanMode, Vcanna_mode_HanKataHenkanMode,
5451         Vcanna_mode_ZenAlphaHenkanMode, Vcanna_mode_HanAlphaHenkanMode,
5452         Vcanna_mode_ZenHiraKakuteiMode, Vcanna_mode_HanHiraKakuteiMode,
5453         Vcanna_mode_ZenKataKakuteiMode, Vcanna_mode_HanKataKakuteiMode,
5454         Vcanna_mode_ZenAlphaKakuteiMode, Vcanna_mode_HanAlphaKakuteiMode,
5455         Vcanna_mode_HexMode, Vcanna_mode_BushuMode, Vcanna_mode_ExtendMode,
5456         Vcanna_mode_RussianMode, Vcanna_mode_GreekMode, Vcanna_mode_LineMode,
5457         Vcanna_mode_ChangingServerMode, Vcanna_mode_HenkanMethodMode,
5458         Vcanna_mode_DeleteDicMode, Vcanna_mode_TourokuMode,
5459         Vcanna_mode_TourokuEmptyMode, Vcanna_mode_TourokuHinshiMode,
5460         Vcanna_mode_TourokuDicMode, Vcanna_mode_QuotedInsertMode,
5461         Vcanna_mode_BubunMuhenkanMode, Vcanna_mode_MountDicMode,
5462         Vcanna_fn_SelfInsert, Vcanna_fn_FunctionalInsert,
5463         Vcanna_fn_QuotedInsert, Vcanna_fn_JapaneseMode, Vcanna_fn_AlphaMode,
5464         Vcanna_fn_HenkanNyuryokuMode, Vcanna_fn_Forward, Vcanna_fn_Backward,
5465         Vcanna_fn_Next, Vcanna_fn_Prev, Vcanna_fn_BeginningOfLine,
5466         Vcanna_fn_EndOfLine, Vcanna_fn_DeleteNext, Vcanna_fn_DeletePrevious,
5467         Vcanna_fn_KillToEndOfLine, Vcanna_fn_Henkan, Vcanna_fn_Kakutei,
5468         Vcanna_fn_Extend, Vcanna_fn_Shrink, Vcanna_fn_AdjustBunsetsu,
5469         Vcanna_fn_Quit, Vcanna_fn_ConvertAsHex, Vcanna_fn_ConvertAsBushu,
5470         Vcanna_fn_KouhoIchiran, Vcanna_fn_BubunMuhenkan, Vcanna_fn_Zenkaku,
5471         Vcanna_fn_Hankaku, Vcanna_fn_ExtendMode, Vcanna_fn_ToUpper,
5472         Vcanna_fn_Capitalize, Vcanna_fn_ToLower, Vcanna_fn_Hiragana,
5473         Vcanna_fn_Katakana, Vcanna_fn_Romaji, Vcanna_fn_BaseHiragana,
5474         Vcanna_fn_BaseKatakana, Vcanna_fn_BaseEisu, Vcanna_fn_BaseZenkaku,
5475         Vcanna_fn_BaseHankaku, Vcanna_fn_BaseKana, Vcanna_fn_BaseKakutei,
5476         Vcanna_fn_BaseHenkan, Vcanna_fn_BaseHiraKataToggle,
5477         Vcanna_fn_BaseZenHanToggle, Vcanna_fn_BaseKanaEisuToggle,
5478         Vcanna_fn_BaseKakuteiHenkanToggle, Vcanna_fn_BaseRotateForward,
5479         Vcanna_fn_BaseRotateBackward, Vcanna_fn_Touroku, Vcanna_fn_HexMode,
5480         Vcanna_fn_BushuMode, Vcanna_fn_KigouMode, Vcanna_fn_Mark,
5481         Vcanna_fn_TemporalMode, Vcanna_key_Nfer, Vcanna_key_Xfer,
5482         Vcanna_key_Up, Vcanna_key_Left, Vcanna_key_Right, Vcanna_key_Down,
5483         Vcanna_key_Insert, Vcanna_key_Rollup, Vcanna_key_Rolldown,
5484         Vcanna_key_Home, Vcanna_key_Help, Vcanna_key_KP_Key,
5485         Vcanna_key_Shift_Nfer, Vcanna_key_Shift_Xfer, Vcanna_key_Shift_Up,
5486         Vcanna_key_Shift_Left, Vcanna_key_Shift_Right, Vcanna_key_Shift_Down,
5487         Vcanna_key_Cntrl_Nfer, Vcanna_key_Cntrl_Xfer, Vcanna_key_Cntrl_Up,
5488         Vcanna_key_Cntrl_Left, Vcanna_key_Cntrl_Right, Vcanna_key_Cntrl_Down
5489
5490 1998-07-16  Jan Vroonhof  <vroonhof@math.ethz.ch>
5491
5492         * event-Xt.c (x_to_emacs_keysym): Return nil for modifier keysyms.
5493         (x_event_to_emacs_event): Let x_to_emacs_keysym check for modifier
5494         keys thus no longer considering all keysyms on a key.
5495
5496 1998-07-19  SL Baur  <steve@altair.xemacs.org>
5497
5498         * XEmacs 21.2-beta1 is released.
5499
5500 1998-07-12  Oscar Figueiredo  <Oscar.Figueiredo@di.epfl.ch>
5501
5502         * eldap.c (Fldap_search_internal): When converting the list of
5503         attributes to search Copy the final 0 from Lisp strings to C
5504         strings.
5505         Check base, not Vldap_default_base as a a string
5506
5507 1998-07-13  Jonathan Harris  <jhar@tardis.ed.ac.uk>
5508
5509         * nt.c: Remove Vstdio_str; already defined in console-stream.c.
5510
5511         * unexnt.c: Unconditionally define bss_start and bss_size, and
5512           ensure that they don't go in the .bss section.
5513
5514 1998-07-17  Olivier Galibert  <galibert@pobox.com>
5515
5516         * glyphs-x.c (convert_EImage_to_XImage):  Fix previous patch (conv
5517         byte order is dependant  of  the local  byte order).
5518         From Takeshi Hagiwara <hagiwara@ie.niigata-u.ac.jp>
5519
5520 1998-07-18  SL Baur  <steve@altair.xemacs.org>
5521
5522         * glyphs-msw.c (mswindows_resource_normalize): Qresource ->
5523         Qmswindows_resource.
5524         From Jonathan Harris <jhar@tardis.ed.ac.uk>
5525
5526 1998-07-12  SL Baur  <steve@altair.xemacs.org>
5527
5528         * general.c (syms_of_general): Add defsymbol for Qresource.
5529
5530         * glyphs-msw.c (vars_of_glyphs_mswindows): Rename Qresource to
5531         Qmswindows_resource.
5532         (TopLevel): Rename 'resource image format to 'mswindows_resource.
5533         (mswindows_resource_validate): Rename.
5534         (mswindows_resource_normalize): Rename.
5535         (mswindows_resource_possible_dest_types): Rename.
5536         (mswindows_resource_instantiate): Rename.
5537         (image_instantiator_format_create_glyphs_mswindows): Replace
5538         `resource' with `mswindows.resource'.
5539
5540         * XEmacs 21.0-pre5 is released.
5541
5542 1998-07-10  SL Baur  <steve@altair.xemacs.org>
5543
5544         * mule-wnnfns.c (Fwnn_open): Correctly trap on misdefined Wnn
5545         server type in environment.
5546         Use alloca-ed strings instead of tiny fixed size ones.
5547
5548 1998-07-09  SL Baur  <steve@altair.xemacs.org>
5549
5550         * XEmacs 21.0-pre4 is released.
5551
5552 1998-07-01  James N. Potts  <jnpotts@plutonium.net>
5553
5554         * fileio.c: (expand_file_name): under win32: Don't treat names
5555         as UNC names if a drive letter has been specified.  If a drive
5556         has been specified, strip out extra directory-seperators that
5557         reportedly cause problems under Win95.
5558
5559 1998-07-09  Jonathan Harris  <jhar@tardis.ed.ac.uk>
5560
5561         * windowsnt.h: Define DUMP_SEPARATE_SECTION when building with
5562           MSVC >= 5.0. Put emacs init and zero-init data in a special
5563           section of the executable when this is defined.
5564
5565         * unexnt.c, ntheap.h:
5566           Removed unused find_section() and get_section_size().
5567
5568         * unexnt.c:
5569           Fix up the executable's checksum after dumping otherwise the
5570           profiler complains.
5571           When DUMP_SEPARATE_SECTION is defined, don't need to dump
5572           zero-init data separately from init data. Dump emacs data
5573           into a special section of the executable.
5574           When DUMP_SEPARATE_SECTION not defined, dump .bss up to
5575           my_ebss instead of up to the end of bss.
5576
5577 1998-07-09  Jonathan Harris  <jhar@tardis.ed.ac.uk>
5578
5579         * filelock.c: Removed Vconfigure_lock_directory - already
5580           defined in emacs.c.
5581
5582         * frame-msw.c: Removed Qinitially_unmapped and Qpopup - already
5583           defined in frame.c and general.c respectively.
5584
5585         * glyphs-msw.c: Removed Qresource - already defined in
5586           general.c.
5587
5588 1998-07-05  Oscar Figueiredo  <Oscar.Figueiredo@di.epfl.ch>
5589
5590         * eldap.c (Fldap_search_internal): Docstring fixes
5591
5592 1998-07-04  Jonathan Harris  <jhar@tardis.ed.ac.uk>
5593
5594         * nt.c (init_environment): Removed unused PRELOAD_WINSOCK,
5595           EMACSDOC and TERM variables. Added EMACSDEBUGPATHS,
5596           EMACSPACKAGEPATH and INFOPATH variables.
5597           Removed unused get_emacs_configuration function.
5598
5599         * s/windowsnt.h: Don't define EMACS_CONFIGURATION here because
5600           it is now defined at build-time by the makefile.
5601
5602 1998-07-01  James N. Potts  <jnpotts@plutonium.net>
5603
5604         * fileio.c: (expand_file_name): under win32: Don't treat names as
5605         UNC names if a drive letter has been specified.  If a drive has
5606         been specified, strip out extra directory-seperators that
5607         reportedly cause problems under Win95.
5608
5609 1998-07-05  Andy Piper  <andyp@parallax.co.uk>
5610
5611         * faces.c (complex_vars_of_faces): for the gui-element face don't
5612         fallback to the default face, instead provide reasonable default
5613         fallbacks that were previously hardcoded elsewhere.
5614
5615 1998-07-06  Olivier Galibert  <galibert@pobox.com>
5616
5617         * glyphs-x.c (convert_EImage_to_XImage): Fix pixel writing problem
5618         when the X server endianness is different than the client's one.
5619
5620 1998-06-29  Kyle Jones  <kyle_jones@wonderworks.com>
5621
5622         * eval.c (run_hook_with_args_in_buffer): Check
5623           default (non-buffer-local) value of hook for
5624           nil before treating it as a function.  Don't initialize
5625           the `globals' variable twice.
5626
5627 1998-06-24  Jonathan Harris  <jhar@tardis.ed.ac.uk>
5628
5629         * fileio.c: Don't do directory seperator canonicalisation in
5630           substitute-in-file-name because we don't know that the
5631           filename refers to a local file.
5632
5633 1998-06-24  Adrian Aichner  <aichner@ecf.teradyne.com>
5634
5635         * process-nt.c (nt_create_process): Try appending the standard
5636           executable file extensions to the filename if none supplied.
5637
5638 1998-06-29  SL Baur  <steve@altair.xemacs.org>
5639
5640         * fileio.c (Fsubstitute_in_file_name): Enable double slash notation
5641         for cygwin32.
5642         From Keisuke Mori <ksk@ntts.com>
5643
5644 1998-06-24  Andy Piper  <andyp@parallax.co.uk>
5645
5646         * toolbar-msw.c (mswindows_output_toolbar): only enable masked
5647         images if we have masks. This handles the xbm case (have masks)
5648         and avoids overuse of resources in the xpm case (generally no masks).
5649         Don't output small toolbars.
5650
5651 1998-06-29  Kyle Jones  <kyle_jones@wonderworks.com>
5652
5653         * eval.c (run_hook_with_args_in_buffer): Don't treat
5654           the default value of a buffer local hook as a list of
5655           hooks unless it is both a cons and the car of that cons
5656           is not Qlambda.
5657
5658 1998-06-29  SL Baur  <steve@altair.xemacs.org>
5659
5660         * extents.c: Email address for Ben Wing is ben@xemacs.org.
5661         * process-unix.c: Ditto.
5662         * mule-coding.h: Ditto.
5663         * mule-coding.c: Ditto.
5664         * mule-charset.c: Ditto.
5665         * mule-charset.h: Ditto.
5666         * file-coding.c: Ditto.
5667         * file-coding.h: Ditto.
5668
5669 1998-06-22  Jonathan Harris  <jhar@tardis.ed.ac.uk>
5670
5671         * event-msw.c: Guard against recursion when freeing
5672           FRAME_MSWINDOWS_TARGET_RECT struture in WM_SIZE processing.
5673
5674         * frame-msw.c: Don't set WS_VISIBLE attribute on first frame.
5675           Call ShowWindow twice in init_frame_3 to get round runemacs
5676           weirdness.
5677
5678 1998-06-27  Hrvoje Niksic  <hniksic@srce.hr>
5679
5680         * scrollbar.c (vertical_scrollbar_changed_in_window): Ditto.
5681
5682         * winslots.h: Rename.
5683
5684         * window.c (specifier_vars_of_window): Renamed
5685         vertical-divider-draggable-p to vertical-divider-always-visible-p,
5686         as suggested by Ben Wing.
5687         (specifier_vars_of_window): Fix docstrings.
5688
5689 1998-06-22  Michael Sperber [Mr. Preprocessor]  <sperber@informatik.uni-tuebingen.de>
5690
5691         * unexaix.c: Line number information works correctly again.
5692
5693 1998-06-22  Olivier Galibert  <galibert@pobox.com>
5694
5695         * emacs.c (__sti__iflPNGFile_c___): Added. See comment. Cry.
5696
5697 1998-06-21  Martin Buchholz  <martin@xemacs.org>
5698
5699         * editfns.c (get_home_directory): ANSIfy.
5700         XEmacs is compilable under C *and* C++.
5701         It's XEmacs, not Xemacs!
5702
5703 1998-06-19  Jonathan Harris  <jhar@tardis.ed.ac.uk>
5704
5705         * console-msw.h: added a list of fonts to device data.
5706
5707         * device-msw.c: enumerate list of available fonts in
5708           mswindows_init_device. Free list in mswindows_delete_device.
5709
5710         * objects-msw.c: Added helper function match_font used by
5711           mswindows_initialize_font_instance and mswindows_list_fonts.
5712           Allow a charset to be specified in a font string, even if
5713           previous fields havn't been specified.
5714
5715 1998-06-23  Greg Klanderman  <greg@alphatech.com>
5716
5717         * indent.c (column_at_point): column cache bugfix.
5718         Set last_known_column_point to the buffer position for
5719         which the column was requested, not buffer's point.
5720
5721         * redisplay.c (decode_mode_spec): for current-column, show
5722         window's point's column, not buffer's point's column.
5723
5724 1998-06-23  Andy Piper  <andyp@parallax.co.uk>
5725
5726         * menubar-msw.c (mswindows_handle_wm_command): use
5727         enqueue_misc_user event rather than
5728         mswindows_enqueue_msic_user_event to fix customize problems. Add some
5729         checks that X does.
5730
5731         * console-msw.h: declare mswindows_enqueue_magic_event.
5732
5733         * event-msw.c (mswindows_enqueue_magic_event): make global.
5734
5735 1998-06-24  Hrvoje Niksic  <hniksic@srce.hr>
5736
5737         * line-number.c (LINE_NUMBER_FAR): Reverted to 16384.
5738         (buffer_line_number): Use EMACS_INT_MAX instead of random LOTS.
5739         (add_position_to_cache): Use EMACS_INT instead of int.
5740
5741 1998-06-21  Olivier Galibert  <galibert@pobox.com>
5742
5743         * lisp-disunion.h (XMARKBIT): Have XMARKBIT return something
5744         suitable for an int used as a boolean (btw, C sucks.).
5745
5746 1998-06-18  Andy Piper  <andyp@parallax.co.uk>
5747
5748         * object-msw.c: remove warnings.
5749
5750         * device-msw.c: #define wrongly named cygwin structure elements.
5751
5752         * s/cygwin32.h: define DEMI_BOLD
5753
5754 1998-06-19  Jonathan Harris  <jhar@tardis.ed.ac.uk>
5755
5756         * redisplay-msw.c: new function mswindows_apply_face_effects.
5757           This is called by output_string and output_cursor to display
5758           underline and strikeout on faces.
5759
5760 1998-06-19  Jonathan Harris  <jhar@tardis.ed.ac.uk>
5761
5762         * console-msw.h: added a list of fonts to device data.
5763
5764         * device-msw.c: enumerate list of available fonts in
5765           mswindows_init_device. Free list in mswindows_delete_device.
5766
5767         * objects-msw.c: Added helper function match_font used by
5768           mswindows_initialize_font_instance and mswindows_list_fonts.
5769           Allow a charset to be specified in a font string, even if
5770           previous fields havn't been specified.
5771
5772 1998-06-15  Jonathan Harris  <jhar@tardis.ed.ac.uk>
5773
5774         * objects-msw.c:
5775           Removed compilation warnings from mswindows_string_to_color.
5776           mswindows_list_fonts returns a more general bogus font.
5777           New lisp-visible function mswindows-color-list.
5778
5779 1998-06-19  David Bush <david.bush@adn.alcatel.com>
5780
5781         * editfns.c (Fuser_login_name): Modify to user new function
5782         user_login_name.
5783         (user_login_name): C only function to avoid Lisp object overhead
5784         Returns "unknown" instead of nil in Cygwin environment
5785
5786         * fileio.c (Fexpand_file_name): Treat "~" and "~user" as
5787         equivalent for current user in Cygwin environment. Use new
5788         function user_login_name to get username.
5789
5790         * lisp.h: Declare user_login_name
5791
5792 1998-06-18  Michael Sperber [Mr. Preprocessor]  <sperber@informatik.uni-tuebingen.de>
5793
5794         * unexaix.c (make_hdr): Fixed bias computations so debugging info
5795         works again.
5796         Some other insignificant nitpicks.
5797
5798 1998-06-18  Andy Piper  <andyp@parallax.co.uk>
5799
5800         * toolbar-msw.c (mswindows_output_toolbar): specify ILC_MASK when
5801         creating the image list and make sure he bk color is transparent.
5802
5803 1998-06-18  Jan Vroonhof  <vroonhof@math.ethz.ch>
5804
5805         * event-Xt.c (emacs_Xt_remove_timeout): Also remove timeout from
5806         completed_timeouts. The timer could have expired.
5807
5808 1998-06-17  Andy Piper  <andyp@parallax.co.uk>
5809
5810         * console-msw.h: move XEMACS_RECT_WH inside frame
5811         parameters. define macors to access it.
5812
5813         * frame-msw.c (mswindows_init_frame_1): use new target_rect
5814         parameter to intialise desired sizing. (mswindows_init_frame_2):
5815         enable and size the frame to something sensible when we get
5816         here. (mswindows_set_frame_properites): use new
5817         mswindows_size_frame_internal function and size frame if frame
5818         parameters not just if init is finished - WM_SIZE happens too
5819         early for some specs. (mswindows_size_frame_internal): new
5820         function abstracted from mswindows_set_frame_properties.
5821         (Vmswindows_use_system_frame_size_defaults):
5822         new variable controls whether to allow the system to pick frame
5823         size defaults, defaults to nil.
5824
5825         * event-msw.c: in WM_SIZE use mswindows_size_frame_internal rather
5826         than duplicated code.
5827
5828 1998-06-15  Colin Rafferty <colin@xemacs.org>
5829
5830         * Makefile.in.in: Made EXTW_LINK expand properly.
5831
5832 1998-06-12  Martin Buchholz  <martin@xemacs.org>
5833
5834         * redisplay.c (vars_of_redisplay): default value of
5835         column-number-start-at-one should be NIL!
5836
5837 1998-06-11  Martin Buchholz  <martin@xemacs.org>
5838
5839         * casefiddle.c:
5840         (upcase-initials "fooBar") ==> "FooBar" instead of "Foobar"
5841
5842 1998-06-05  Hrvoje Niksic  <hniksic@srce.hr>
5843
5844         * eldap.c (Fldap_search_internal): Use build_ext_string instead of
5845         build_string to avoid crashes under Mule.
5846
5847 1998-06-13  Andy Piper  <andyp@parallax.co.uk>
5848
5849         * ntplay.c (play_sound_data_1): don't delete the sound data until
5850         the next sound is played and the previous one finished.
5851
5852 1998-06-10  Samuel Mikes  <smikes@alumni.hmc.edu>
5853
5854         * fileio.c (directory-sep-char): Escape backslashes.
5855
5856 1998-06-10  Hrvoje Niksic  <hniksic@srce.hr>
5857
5858         * event-stream.c: Fix docstring reference.
5859
5860 1998-06-12  Hrvoje Niksic  <hniksic@srce.hr>
5861
5862         * alloc.c (make_float): Remove useless initialization of `next'
5863         field.
5864         (make_pure_float): Ditto.
5865
5866         * lisp.h (struct Lisp_Float): Rename `next' to `__unused__next'.
5867
5868 1998-06-08  Kirill M. Katsnelson  <kkm@kis.ru>
5869
5870         * fileio.c (Fmake_directory_internal): Remove conditionals
5871         on WINDOWSNT when calling mkdir.
5872
5873         * ntproc.c: Deleted the following unused functions:
5874         register_child, reap_subprocess, sys_wait.
5875
5876         * nt.c (sys_rename): Ifzeroed this implementation.
5877         Deleted the following unused functions:
5878         sys_access, sys_chdir, sys_chmod, sys_creat, sys_link, sys_mkdir,
5879         sys_mktemp, sys_rmdir, sys_unlink, sys_close, sys_dup, sys_dup2,
5880         sys_read, sys_write.
5881         Merger sys_fopen and sys_open with sysdep.c implementation.
5882
5883         * sysdep.c: Removed MS-DOS code.
5884         (sys_rename): Deal with Microsoft rename weirdness.
5885         (sys_open): Implemented for Windows.
5886         (sys_fopen): Ditto.
5887         (sys_mkdir): Ditto.
5888
5889 1998-06-08  Kirill M. Katsnelson  <kkm@kis.ru>
5890
5891         * buffer.c (complex_vars_of_buffer): Removed %t description from
5892         the docstring.
5893
5894 1998-06-04  Rick Rankin  <Rick_Rankin-P15254@email.mot.com>
5895
5896         * scrollbar-msw.c: initialize the cbSize element of the
5897         SCROLLINFO struct before calling SetScrollInfo. WinNT seems
5898         to ignore the value of cbSize, but Win95 (and I presume Win98)
5899         appear to want it set to sizeof(SCROLLINFO).
5900
5901 1998-06-04  Kirill M. Katsnelson  <kkm@kis.ru>
5902
5903         * event-stream.c: Defined Qcancel_mode_internal.
5904         (syms_of_event_stream): defsymbol'ed it.
5905
5906         * events.h: Externed it.
5907
5908         * event-msw.c (mswindows_wnd_proc, WM_CANCELMODE): Added this handler.
5909
5910 1998-06-04  Oliver Graf <ograf@fga.de>
5911
5912         * frame-x.c (x_cde_destroy_callback): free the data
5913         (cde-start-drag-internal) corrected root position, 21.1 needs this
5914         hardcoded in Button events
5915         (offix-start-drag-internal) corrected root position
5916
5917 1998-06-03  Kirill M. Katsnelson  <kkm@kis.ru>
5918
5919         * process-nt.c (signal_cannot_launch): Use signal_simple_error()
5920         instead of error().
5921
5922 1998-06-03  Kirill M. Katsnelson  <kkm@kis.ru>
5923
5924         * dialog-msw.c (button_width): Removed `inline' from the function
5925         declaration.
5926
5927 1998-06-03  Rick Rankin  <Rick_Rankin-P15254@email.mot.com>
5928
5929         * frame-msw.c: add WS_VISIBLE flag to the first frame created.
5930         Note that adding this flag to subsequent frames causes problems.
5931
5932 1998-06-03  Gunnar Evermann  <Gunnar.Evermann@nats.informatik.uni-hamburg.de>
5933
5934         * glyphs-eimage.c (png_instantiate) move 'struct
5935         png_memory_storage tbr' out of nested block to avoid dangling
5936         reference
5937
5938 1998-06-02  Andy Piper  <andyp@parallax.co.uk>
5939
5940         * faces.h:
5941         * faces.c: rename 3d-object -> gui-element. add toolbar face which
5942         inherits from gui-element.
5943
5944         * glyphs-msw.c: use DIBitmaps for xbm bitmaps to be consistent
5945         with existing code, generate masks correctly.
5946
5947 1998-06-03  P. E. Jareth Hein  <jareth@camelot-soft.com>
5948
5949         * glyphs-eimage.c: Changed included header for gifs to use
5950         Gifreader instead of giflib.
5951
5952         * glyphs-x.c: removed the image-related functions that were
5953         moved into glyphs-eimage.
5954
5955 1998-06-02  David Bush  <david.bush@adnb.alcatel.com>
5956
5957         * glyphs.c (bitmap_to_lisp_data) Define XFree to be free
5958         if built without X Windows support.
5959
5960 1998-06-02  Hrvoje Niksic  <hniksic@srce.hr>
5961
5962         * fns.c (Fconcat): Synch docstring with new reality.
5963
5964 1998-06-03  SL Baur  <steve@altair.xemacs.org>
5965
5966         * frame.c: Remove reference to msdos.h (which is going away).
5967         Suggested by Hrvoje Niksic and Kirill Katsnelson.
5968
5969 1998-06-02  P. E. Jareth Hein  <jareth@camelot-soft.com>
5970
5971         * glyphs-eimage.c (jpeg_instantiate): Fix handling of
5972         grayscale images/
5973
5974
5975 1998-05-30  Kirill M. Katsnelson  <kkm@kis.ru>
5976
5977         * events.h: Fixed commentary about misc-user scrollbar events.
5978
5979         * scrollbar-x.c (x_update_vertical_scrollbar_callback): Use frame
5980         object as an event channel, instead of window object.
5981         (x_update_horizontal_scrollbar_callback): Ditto.
5982
5983 1998-05-29  Andy Piper  <andyp@parallax.co.uk>
5984
5985         * ntplay.c (play_sound_data_1) new function. convert alloca data
5986         to malloc if necessary.
5987         (play_sound_file): if the file is not in our path then convert to
5988         data and play.
5989
5990 1998-06-01  SL Baur  <steve@altair.xemacs.org>
5991
5992         * mule-mcpath.c (mc_chdir): Reverse parameters in call to memcpy.
5993         * msdos.c (Frecent_doskeys): Ditto.
5994
5995         * unexalpha.c (unexec): Reverse parameters in call to memcpy.
5996         Suggested by Reggie Perry <perry@zso.dec.com>
5997
5998         * buffer.h: Eliminate size in declaration.
5999
6000 1998-06-01  Olivier Galibert  <galibert@pobox.com>
6001
6002         * unexelfsgi.c (unexec): Cleanup n/nn and remove useless kludge.
6003
6004 1998-06-01  Kirill M. Katsnelson  <kkm@kis.ru>
6005
6006         * gui.c (gui_item_init): Changed the default value for config member
6007         from Qunbound to Qnil.
6008
6009 1998-06-01  Greg Klanderman  <greg@alphatech.com>
6010
6011         * indent.c (vmotion_pixels): Don't #define abs().
6012
6013 1998-05-30  Kirill M. Katsnelson  <kkm@kis.ru>
6014
6015         * s/windowsnt.h: Defined popen and pclose to be _popen and _pclose
6016         respectively.
6017
6018 1998-05-30  Andy Piper  <andyp@parallax.co.uk>
6019
6020         * glyphs.h: add xbm declarations.
6021
6022         * console.h: add xbm_instantiate_method device method.
6023
6024         * glyphs.c (check_valid_xbm_inline) (xbm_validate)
6025         (bitmap_to_lisp_data) (xbm_mask_file_munging) (xbm_normalize)
6026         (xbm_possible_dest_types): moved here from glyphs-x.c. use
6027         locate_pixmap_file device method and read_bitmap_data_from_file
6028         instead of XmuReadBitmapDataFromFile.
6029         (xbm_instatntiate): make a device method.
6030
6031         * glyphs-x.c: see glyphs.c changes. (read_bitmap_data_from_file)
6032         new function that just calls XmuReadBitmapDataFromFile.
6033         (x_xbm_instatntiate): device method from xbm_instantiate.
6034
6035         * glyphs-msw.c (read_bitmap_data) (NextInt)
6036         (read_bitmap_data_from_file): new functions copied from Xmu
6037         sources.
6038         (xbm_create_bitmap_from_data) from Ben <ben@666.com> convert
6039         inline data to an mswindows bitmap.
6040         (init_image_instance_from_xbm_inline) (xbm_instantiate_1)
6041         (mswindows_xbm_instantiate): mswindows-ized versions of the X
6042         functions.
6043
6044 1998-05-30  Kirill M. Katsnelson  <kkm@kis.ru>
6045
6046         * window.c (specifier_vars_of_window): Renamed `has_modeline-p' to
6047         `modeline-visible-p'.
6048         Declared specifier lisp variables at the beginning oh the file
6049         as static.
6050
6051         * procimpl.h (struct process_methods): Changed semantics of
6052         create_process method so it accepts lisp strings instead of
6053         char pointers.
6054
6055         * process.c (Fstart_process_internal): Moved building of
6056         unix style argv from here to process-unix.c, ...
6057
6058         * process-unix.c (unix_create_process): ... right here.
6059
6060         * process-nt.c (nt_create_process): Changed this function to
6061         support new semantics, so avoided a GC problem.
6062
6063         * events.c (Fmake_event): Document misc-user events properties.
6064         (Fmake_event): Do not allow arbitrary objects for channel property
6065         of misc-user events.
6066         (Fmake_event): Change misc-user event validation: it is function
6067         which is required, not button.
6068
6069         * event-msw.c (mswindows_user_event_p): Recognize misc user events as
6070         user events.
6071         (mswindows_enqueue_misc_user_event): Added function.
6072         (mswindows_bump_queue): Removed function.
6073         (mswindows_enqueue_magic_event): Support NULL HWND parameter.
6074         (mswindows_wnd_proc, WM_CLOSE): Use mswindows_enqueue_misc_user_event().
6075         (mswindows_wnd_proc, WM_EXITSIZEMOVE): Ditto.
6076         (emacs_mswindows_handle_magic_event): Handle XM_BUMPQUEUE, by doing
6077         really nothing, which is my personal favorite thing.
6078
6079         * console-msw.h: Removed prototype for mswindows_bump_queue().
6080         Added prototype for mswindows_enqueue_misc_user_event().
6081
6082         * menubar-msw.c (mswindows_handle_wm_command): Use
6083         mswindows_enqueue_misc_user_event().
6084
6085         * toolbar-msw.c (mswindows_handle_toolbar_wm_command): Ditto.
6086
6087         * dialog-msw.c (dialog_proc): Ditto.
6088
6089         * scrollbar-msw.c (mswindows_handle_scrollbar_event): Ditto.
6090          (mswindows_handle_scrollbar_event): Use frame, not window, for misc
6091         user events channel.
6092
6093 1998-05-29  Greg Klanderman  <greg@alphatech.com>
6094
6095         * window.c (Fwindow_displayed_text_pixel_height): was relying on
6096         incorrect semantics of vmotion_pixels which has been fixed.  don't
6097         use it anymore as it can't easily be used.
6098
6099         * indent.c (vmotion_pixels): fix off by one bug moving up.  also
6100         the motion was reported incorrectly if you tried to go past end of
6101         buffer.
6102
6103 1998-05-30  Kirill M. Katsnelson  <kkm@kis.ru>
6104
6105         * toolbar.h: Removed misleading commentary, as Martin suggested.
6106
6107 1998-05-30  Kirill M. Katsnelson  <kkm@kis.ru>
6108
6109         * lisp.h: Extern Qactivate_menubar_hook.
6110
6111         * menubar-msw.c (unsafe_handle_wm_initmenu_1): Pass correct value to
6112         run_hook ().
6113
6114 1998-05-29  Andy Piper  <andyp@parallax.co.uk>
6115
6116         * glyphs-msw.c: use BPLINE macro.
6117
6118         * select-msw.c (mswindows-selection-exists-p)
6119         (mswindows-delete-selection): doc string fixes.
6120
6121         * toolbar-msw.c (mswindows_output_toolbar): make disabled buttons
6122         unpressable. warning elimination.
6123
6124 1998-05-28  Martin Buchholz  <martin@xemacs.org>
6125
6126         * alloc.c (dbg_constants):
6127         * dbxrc:
6128         * gdbinit:
6129         Remove toolbar_data debugging code, since that lrecord has
6130         also been removed.
6131
6132 Wed May 27, 1998  Darryl Okahata  <darrylo@sr.hp.com>
6133
6134         * alloc.c: zap cached value of (user-home-directory), so that
6135           it's not undumped.
6136
6137         * buffer.c: From init_buffer(), separated out code that
6138           determined the initial directory for the *scratch* buffer, and
6139           put them into a function called "init_initial_directory()".
6140           The initial directory is now available as a global "char *"
6141           called initial_directory.
6142
6143         * buffer.h: Added extern entries for initial_directory[] and
6144           init_initial_directory().
6145
6146         * editfns.c: added new elisp function "user-home-directory",
6147         which basically returns getenv("HOME"), but attempts to use
6148         other values if $HOME isn't set.This may have to be tweaked in
6149         the future as, under Unix, "/" is used if $HOME isn't set (this
6150         probably should be set to the current directory).  To support
6151         this, a new C function, "get_home_directory()", now exists,
6152         which returns the "home directory", as a "char *" string.
6153
6154         * emacs.c: Rearrange NT initialization order so that
6155         environment/registry variables will be properly entered into
6156         Vprocess_enviroment.
6157
6158         * fileio.c: replaced egetenv("HOME") with calls to the new
6159           get_home_directory().
6160
6161         * lisp.h: Added function prototypes for uncache_home_directory()
6162           and get_home_directory(), along with lisp prototypes for
6163           Fuser_home_directory() and friends.
6164
6165         * nt.c: replaced getenv("HOME") with calls to the new
6166           get_home_directory().
6167
6168         * sysfile.h: for WINDOWSNT, #include <direct.h>, to suppress
6169           warnings about getcwd(), etc. not having prototypes.
6170
6171 1998-05-28  Kirill M. Katsnelson  <kkm@kis.ru>
6172
6173         * process-nt.c (send_signal): Emulate SIGHUP.
6174         (validate_signal_number): Ditto.
6175
6176         * event-msw.c (mswindows_wnd_proc, WM_KEYDOWN): Unconditionally
6177         remove MOD_SHIFT from ASCII characters.
6178         (mswindows_wnd_proc, WM_KEYDOWN): Do not activate the menubar when
6179         F10 is pressed.
6180
6181 1998-05-24  Oliver Graf <ograf@fga.de>
6182
6183         * frame-x.c (cde-start-drag-internal): added filename and multi-
6184         data transfers
6185         (x_cde_convert_callback) dito
6186
6187 1998-05-26  Oliver Graf <ograf@fga.de>
6188
6189         * frame-x.c: include event-mod.h also with CDE
6190         (x_cde_convert_callback) made the thing working
6191         (cde-start-drag-internal) also debugging
6192
6193 1998-05-25  Hans Guenter Weigand  <hgweigand@wiesbaden.netsurf.de>
6194
6195         * m/sparc.h:
6196         * getloadavg.c:
6197         * malloc.c:
6198         * unexec.c:
6199         * mem-limits.h:
6200           - add __OpenBSD__ where __NetBSD__ was found.
6201           - TODO: replace platform-specific conditional compilation by
6202             feature tests in configure.in.
6203
6204 1998-05-15  Greg Klanderman  <greg@alphatech.com>
6205
6206         * window.c (Fwindow_displayed_text_pixel_height): New function.
6207         (syms_of_window): DEFSUBR it.
6208
6209         * indent.c (Fvertical_motion_pixels): New function - request
6210         movement in pixels.
6211         (vmotion_pixels): helper.
6212         (syms_of_indent): DEFSUBR.
6213         * lisp.h: declaration for vmotion_pixels().
6214
6215         * indent.c (Fvertical_motion): Add optional third argument PIXELS,
6216         to request returning motion in pixels.
6217         (Fvertical_motion_pixels): Remove, functionality merged into
6218         Fvertical_motion.
6219         * window.c (window_scroll): call Fvertical_motion with 3 arguments.
6220         (Fmove_to_window_line): ditto.
6221         * lisp.h: Change declaration for Fvertical_motion.
6222
6223         * window.c: rename window-text-pixel-{height,width,edges} to
6224         window-text-area-pixel-*.
6225
6226 1998-05-26  Gunnar Evermann  <Gunnar.Evermann@nats.informatik.uni-hamburg.de>
6227
6228         * tooltalk.c (vars_of_tooltalk) added staticpro for
6229         Tooltalk_Message_plist_str and Tooltalk_Pattern_plist_str
6230
6231 1998-05-27  Andy Piper  <andyp@parallax.co.uk>
6232
6233         * faces.c: create a new 3d_object_face, make modeline and
6234         vertical_divider faces fallback to this rather than the default.
6235
6236 1998-05-21  Andy Piper  <andyp@parallax.co.uk>
6237
6238         * s/cygwin32.h: define charsets for cygwin.
6239
6240 1998-05-25  Andy Piper  <andyp@parallax.co.uk>
6241
6242         * toolbar-msw.c (mswindows_output_toolbar): fix up button sizes
6243         and coordinates. resize bitmaps if we have already settled on a
6244         different size.
6245
6246         * glyphs-msw.c (xpm_to_eimage): add ';' for mswindows compiler.
6247
6248 1998-05-25  Hrvoje Niksic  <hniksic@srce.hr>
6249
6250         * toolbar-msw.c (mswindows_handle_toolbar_wm_command): Ditto.
6251
6252         * menubar-msw.c (mswindows_handle_wm_command): Ditto.
6253
6254         * gui.h: Ditto.
6255
6256         * gui-x.c (popup_selection_callback): Ditto.
6257
6258         * dialog-msw.c (dialog_proc): get_callback -> get_gui_callback.
6259
6260         * gui.c (get_callback): Renamed to get_gui_callback.
6261
6262 1998-05-17  Martin Buchholz  <martin@xemacs.org>
6263
6264         * glyphs.h: order rearrangement.
6265
6266         * device-tty.c (tty_asynch_device_change): Warning suppression.
6267         * device-x.c (x_device_system_metrics): Warning suppression.
6268         Make Doc strings consistent with coding standards.
6269
6270 1998-05-24  Martin Buchholz  <martin@xemacs.org>
6271
6272         * general.c: multiple definition of `Qicon'.  general.c seems
6273           like a good home for Qicon.
6274
6275 1998-05-20  Kirill M. Katsnelson  <kkm@kis.ru>
6276
6277         * This patch is to fix compilation warnings under Windows.
6278
6279         * s/windowsnt.h: Encapsulate getpid with sys_getpid.
6280         Added prototypes for FSF inherited functions, with which XEmacs is
6281         sprinkled thoroughly.
6282         Removed some #if 0 code. Bracketed some more definitions, probably
6283         related to Visual C versions prior to 4 (we do not support them).
6284
6285         * sysfloat.h (logb): Finally, get logb() prototyped.
6286
6287         * sysfile.h: Added Windows specific includes.
6288         Removed old Windows specific code bracketed with #if 0.
6289
6290         * sysdep.h: Added prototype for xrealpath().
6291
6292         * sysdep.c (sys_getpid): Added function, to support '95 negative pids.
6293
6294         * symsinit.h: Added prototypes for syms_of_dired_mswindows,
6295         vars_of_dired_mswindows and init_ntproc (Grrr).
6296
6297         * realpath.c: Added Windows specific include files.
6298         (xrealpath): Conditionalized declaration of some auto variables on
6299         S_IFLNK, to avoid warnings.
6300
6301         * ntproc.c: Disabled some compiler warnings. This file is going to
6302         die, so I have not cleaned it up much.
6303         (set_process_dir): Const parameter.
6304         (Fwin32_short_file_name): Down CHECK_* macros to one argument.
6305         (Fwin32_long_file_name): Ditto.
6306         (Fwin32_set_process_priority): Ditto. Why didn't I remove these
6307         three functions?
6308
6309         * nt.h: Added prototypes for set_process_dir and convert_time.
6310
6311         * nt.c: More include files.
6312         (getpwnam): Consted char* argument.
6313         (get_emacs_configuration): Const return value.
6314         (opendir): Const argument.
6315         (stat): Casted converstion long->short.
6316         (stat): Removed ad hoc and questionable support for non-MSC compile.
6317         (sys_pipe): Removed unused auto variable.
6318         (_sys_read_ahead): Removed calls to DebPrint.
6319         (sys_read): Ditto, in 2 places.
6320         (term_ntproc): Added unused int parameter to signal handler, to
6321         avoid a warning when compiling a call to signal().
6322         (msw_sigset): Properly return old signandler or NULL instead of void.
6323
6324         * floatfns.c (Flogb): Casted arguments to unary minus to signed.
6325
6326         * gmalloc.c (morecore): Ditto.
6327         (_free_internal): Ditto.
6328
6329         * lread.c (parse_integer): Ditto.
6330
6331         * dired-msw.c: Added several include files.
6332
6333         * cmdloop.c (Fcommand_loop_1): Added Microsoft C to the Big List
6334         of Compilers to Shut Up.
6335
6336         * callproc.c: Added #includes to suppress warnings under Windows.
6337         (init_callproc): Removed #if0'ed code and unused variables.
6338
6339 1998-05-25  Andy Piper  <andyp@parallax.co.uk>
6340
6341         * device-msw.c (mswindows_device_system_metrics): do planes in a
6342         way consistent with X.
6343
6344         * glyphs-msw.c (mswindows_initialize_image_instance_mask): don't
6345         use SetPixel, use DIBits functions.
6346         (xpm_to_eimage): frob colors more closely like xpm deos.
6347
6348         * toolbar-msw.c: only resize bitmaps when shrinking. Adjust look
6349         to be closer to X version.
6350
6351         * event-msw.c: use tooltip string directly.
6352
6353         * redisplay-msw.c: reinstate Kirill's bg pixmap change.
6354
6355         * objects-msw.c: frob rgb colors that only Kyle uses.
6356
6357         * dialog-msw.c (button_width): INLINE -> inline.
6358
6359 1998-05-23  SL Baur  <steve@altair.xemacs.org>
6360
6361         * getloadavg.c (getloadavg): Fix typo.
6362
6363 1998-05-23  Kirill M. Katsnelson  <kkm@kis.ru>
6364
6365         * objects-msw.c (mswindows_initialize_font_instance): Added support
6366         for font character sets.
6367         Replaced 'XXX' with '####' in comments throughout the file.
6368
6369 1998-05-23  Kirill M. Katsnelson  <kkm@kis.ru>
6370
6371         * emacs.c (main_1): Added calls to vars_of_dialog_mswindows() and
6372         console_type_create_dialog_mswindows(), to initialize Windows dialog
6373         support.
6374
6375         * symsinit.h: Prototyped the above functions.
6376
6377         * dialog-x.c (x_popup_dialog_box): Moved dialog descriptor consistency
6378         checks to dialog.c...
6379
6380         * dialog.c (Fpopup_dialog_box): ...right here. Added more checks: a
6381         device must support dialog boxes, and the descriptor must supply at
6382         least one button.
6383
6384         * dialog-msw.c: New file, dialogs for Windows.
6385
6386 1998-05-21  Oscar Figueiredo  <Oscar.Figueiredo@di.epfl.ch>
6387
6388         * eldap.c (ldap_search_unwind): Return Qnil instead of nothing
6389         (Fldap_search_internal): Removed unused variable `err'
6390
6391         * eldap.h: Moved Lisp_LDAP declaration here instead of using a
6392         forward declaration
6393
6394 1998-05-17  Martin Buchholz  <martin@xemacs.org>
6395
6396         * eldap.h: eldap.[ch] should never be used unless HAVE_LDAP is
6397         defined.  Therefore there is no need to handle the case when
6398         HAVE_LDAP is undefined.  Similarily, there is no reason to have
6399         any code wrapped within `#ifdef emacs', since this code is only
6400         useful within an emacs.  This simplifies the code significantly.
6401
6402         * inline.c: Include eldap.h only if HAVE_LDAP.
6403         * inline.c: Don't bother including TT_C_H_PATH, since tooltalk.h
6404         already does that.
6405
6406 1998-05-21  Kirill M. Katsnelson  <kkm@kis.ru>
6407
6408         * unexnt.c (copy_executable_and_dump_data_section): Suppress
6409         printing dump stats when building without DEBUG_XEMACS.
6410         (dump_bss_and_heap): Ditto.
6411
6412 1998-05-21  Andy Piper  <andyp@parallax.co.uk>
6413
6414         * gnuclient.c: don't suppress window system if there is no display
6415         and we are running under mswindows. send 'mswindows device type if
6416         we are in this situation.
6417
6418 1998-05-20  Andy Piper  <andyp@parallax.co.uk>
6419
6420         * general.c:
6421         * lisp.h: Qbitmap, Qcursor, Qicon moved here from glyphs-msw.c.
6422
6423         * glyphs-msw.c: change cursor imgae type name to resource. Fix
6424         some nits.
6425
6426 1998-05-20  Kirill M. Katsnelson  <kkm@kis.ru>
6427
6428         * EmacsFrame.c (Xt_StringToScrollBarPlacement):  Added support for
6429         {top,bottom}-{left,right} values in addition to
6430         {top,bottom}_{left,right}.
6431
6432 1998-05-18  Hrvoje Niksic  <hniksic@srce.hr>
6433
6434         * fileio.c (Fmake_temp_name): Remove unreached code.
6435
6436         * process-nt.c (validate_signal_number): Use
6437         signal_simple_error().
6438
6439 1998-05-19  Martin Buchholz  <martin@xemacs.org>
6440
6441         * unexhp9k800.c:
6442         * sound.c (vars_of_sound):
6443         * sysdep.c (reset_sigio_on_device):
6444         * window.c (window_bottom_gutter_height):
6445         unexhp9k800.c:258: warning: implicit declaration of function
6446         `calculate_checksum'
6447         sound.c:604: warning: implicit declaration of function `vars_of_hpplay'
6448         sysdep.c:1012: warning: unused variable `owner'
6449         window.c:993: warning: `window_right_toolbar_width' defined but not used
6450
6451 1998-05-19  Andy Piper  <andyp@parallax.co.uk>
6452
6453         * glyphs-msw.c (mswindows_create_resized_mask)
6454         (mswindows_create_resized_bitmap): new funnctions split out from
6455         mswindows_resize_dibitmap_instance.
6456
6457         * glyphs-msw.h: declare new resize functions.
6458
6459         * toolbar-msw.c (mswindows_output_toolbar): use new bitmap resize
6460         functions so that the original bitmaps are preserved.
6461
6462         * sheap.c: fixup static heap exhausted error to avoid FAQs.
6463
6464         * redisplay-msw.c (mswindows_output_blank): fixup brush from bg
6465         color if we are trying to output 0 depth bg pixmap.
6466
6467         * scrollbar-msw.c: warning elimination.
6468
6469 1998-05-18  Martin Buchholz  <martin@xemacs.org>
6470
6471         * frame-x.c (x_update_frame_external_traits): Start preprocessor
6472         directives in column 1.
6473
6474         * search.c (skip_chars): Avoid using xzero with arrays, since some
6475         compilers get confused by the construct &array.
6476
6477 1998-05-18  Kirill M. Katsnelson  <kkm@kis.ru>
6478
6479         * objects-msw.h:
6480         * objects-msw.c: Changed the charset value for a new font from
6481         "don't care" to "ansi".
6482
6483         * glyphs-msw.c (convert_EImage_to_DIBitmap): Warnings fix.
6484
6485 1998-05-18  Kirill M. Katsnelson  <kkm@kis.ru>
6486
6487         * event-msw.c (mswindows_wnd_proc, WM_KEYDOWN): Do not clear shift
6488         modifier on control chars.
6489         Use IsCharAlpha() instead of isaplha().
6490
6491 1998-05-19  Kazuyuki IENAGA <ienaga@jsys.co.jp>
6492
6493         * s/freebsd.h: FreeBSD 2.2.6 now supports setlocale(LC_ALL, "").
6494
6495 1998-05-18  Kirill M. Katsnelson  <kkm@kis.ru>
6496
6497         * objects-msw.c (mswindows_initialize_font_instance): Use ANSI
6498         charset when creating font.
6499         (mswindows_initialize_color_instance): Do not create brush along
6500         with a color.
6501         (mswindows_finalize_color_instance): Do not delete it then.
6502
6503         * objects-msw.h (struct mswindows_color_instance_data): Removed
6504         brush slot, and corresponding accessor macro.
6505
6506 1998-05-18  Kirill M. Katsnelson  <kkm@kis.ru>
6507
6508         * toolbar.c: Removed toolbar_data lrecord implementation.
6509         (mark_frame_toolbar_buttons_dirty): Replase usage of toolbar_data
6510         with toolbar_buttons (via FRAME_TOOLBAR_BUTTONS).
6511         (compute_frame_toolbar_buttons): Ditto.
6512         (CHECK_TOOLBAR): Ditto.
6513         (set_frame_toolbar): Removed allocation of toolbar_data lrecord.
6514         (update_frame_toolbars): Do not check for changed buffer
6515         here. Toolbar information is provided by cached specs in
6516         windows. The check for buffer is eliminated becuase toolbars are
6517         marked changed in set_frame_selected_window() in frame.c
6518         Added check for changed toolbars geometry.
6519         (compute_frame_toolbars_data): Removed unused second parameter;
6520         Adjusted callers of this static function throughout the file.
6521         (init_frame_toolbars): Initialize current_toolbar_size.
6522         (update_frame_toolbars): Use DEVICE_SUPPORTS_TOOLBARS_P instead of
6523         what is its current expansion, for clarity.
6524         (init_frame_toolbars): Ditto.
6525         (init_device_toolbars): Ditto.
6526         (init_global_toolbars): Ditto.
6527
6528         * toolbar.h: Removed definition of toolbar_data lrecord.
6529         Added accessor macros FRAME_TOOLBAR_BUTTONS and
6530         FRAME_CURRENT_TOOLBAR_SIZE.
6531         Added macro DEVICE_SUPPORTS_TOOLBARS_P.
6532
6533         * toolbar-x.c (x_output_toolbar): The same change as in
6534         toolbar-msw.c
6535         (x_output_toolbar): Ditto.
6536         (x_redraw_exposed_toolbar): Ditto.
6537
6538         * toolbar-msw.c (mswindows_output_toolbar): Retrieve current
6539         buttons from toolbar_buttons using FRAME_TOOLBAR_BUTTONS macro.
6540         (mswindows_output_toolbar): Ditto.
6541         (mswindows_output_toolbar): Ditto.
6542
6543         * frame.c (mark_frame): Removed marking of arrays, according to
6544         frameslots.h change.
6545         (nuke_all_frame_slots): Ditto.
6546         (set_frame_selected_window): Mark toolbars changed when
6547         last_nonminibuf_window changes.
6548
6549         * frame.h (struct frame): Moved some slots to frameslots.h.
6550         Added current_toolbar_size array.
6551         Changed references from toolbar_data to toolbar_buttons in macros
6552         FRAME_RAW_THEORETICAL_TOOLBAR_VISIBLE,
6553         FRAME_RAW_THEORETICAL_TOOLBAR_SIZE and
6554         FRAME_RAW_THEORETICAL_TOOLBAR_BORDER_WIDTH.
6555
6556         * frameslots.h: Added macro MARKED_SLOT_ARRAY a la winslots.h
6557         Moved arrays of lisp objects here from frame.h: toolbar_size,
6558         toolbar_visible_p, toolbar_border_width.
6559         Removed toolbar_data slot and added toolbar_buttons.
6560
6561 1998-05-17  Kirill M. Katsnelson  <kkm@kis.ru>
6562
6563         * symsinit.h: Externed syms_of_process_nt()
6564
6565         * emacs.c (main_1): Call syms_of_process_nt()
6566
6567         * process-nt.c: Quote process arguments by a call to Lisp function
6568         `nt-quote-process-args'.
6569         (syms_of_process_nt): New function.
6570         (nt_send_process): Flush data stream after each write, to avoid
6571         leaving buffered data.
6572         (nt_send_process): When blocked on process output, wait for
6573         process to slurp more for progressively increasing time intervals.
6574
6575 1998-05-17  Martin Buchholz  <martin@xemacs.org>
6576
6577         * window.c (have_undivided_common_edge): Make file-local function
6578         static.
6579         (map_windows): Return 0 if all map functions successful.
6580         Fix typos.
6581
6582         * winslots.h: Use unlikely names for local variables in macros to
6583         avoid shadowing warnings.
6584
6585 1998-05-17  Andy Piper  <andyp@parallax.co.uk>
6586
6587         * toolbar-msw.c (mswindows_output_toolbar): hash on toolbar width
6588         so that we re-output if the toolbar size has changed.
6589
6590 1998-05-17  Michael Sperber [Mr. Preprocessor]  <sperber@informatik.uni-tuebingen.de>
6591
6592         * s/aix4-2.h (ALIGN_DATA_RELOC): Undefined to support new unexaix.c.
6593
6594         * s/aix3-1.h (ALIGN_DATA_RELOC): Defined to support new unexaix.c.
6595
6596         * unexaix.c: Massive cleanup and support of AIX 4.2 (and hopefully
6597         greater).
6598
6599 1998-05-16  Kirill M. Katsnelson  <kkm@kis.ru>
6600
6601         * glyphs-msw.c: Defined OEMRESOURCE before including windows.h to
6602         get bitmap manifest constants defined.
6603
6604         * console-msw.h: Include system files in angle brackets, not in
6605         quotes.
6606
6607         * window.c (specifier_vars_of_window): Fixed a typo in
6608         `vertical-divider-line-width' docstirng.
6609
6610 1998-05-16  Olivier Galibert  <galibert@pobox.com>
6611
6612         * line-number.c (delete_invalidate_line_number_cache): Use an
6613         EMACS_INT.
6614         (buffer_line_number): Remove dangerous, plain wrong when using
6615         64bits emacs ints, cast.
6616
6617         * insdel.c (buffer_delete_range): Use an EMACS_INT.
6618
6619         * cmds.c (Fforward_line): Use EMACS_INTs.
6620
6621         * search.c (bi_scan_buffer): Change to use EMACS_INTs.
6622         (scan_buffer): Ditto.
6623         (bi_find_next_newline_no_quit): Remove useless cast.
6624         (find_next_newline_no_quit): Ditto.
6625         (find_next_newline): Ditto.
6626         (find_before_next_newline): Use an EMACS_INT.
6627
6628         * lisp.h: Change scan_buffer to pass EMACS_INTs.
6629
6630 1998-05-16  Hrvoje Niksic  <hniksic@srce.hr>
6631
6632         * menubar-msw.c (mswindows_handle_wm_command): Ditto.
6633
6634         * toolbar-msw.c (mswindows_handle_toolbar_wm_command): Ditto.
6635
6636         * gui-x.c (popup_selection_callback): Use it.
6637
6638         * gui.h (get_callback): Declare it.
6639
6640         * gui.c (get_callback): New function.
6641
6642 1998-05-15  SL Baur  <steve@altair.xemacs.org>
6643
6644         * window.c (have_undivided_common_edge): Guard scrollbar specific
6645         stuff.
6646         (window_needs_vertical_divider_1): Ditto.
6647
6648 1998-05-16  Hrvoje Niksic  <hniksic@srce.hr>
6649
6650         * emacs.c (decode_path): Eliminate compiler warning.
6651         (Fdecode_path): Renamed to Fsplit_path.
6652         (Fsplit_string_by_char): New function.
6653
6654 1998-05-14  Damon Lipparelli  <lipp@primus.com>
6655
6656         * winslots.h: close comment
6657
6658 1998-05-16  Kirill M. Katsnelson  <kkm@kis.ru>
6659
6660         * callproc.c: Removed declared and unused variable Qbuffer_file_type.
6661
6662         * bufslots.h: Removed buffer_file_type slot.
6663
6664         * buffer.c (complex_vars_of_buffer): Removed buffer_file_type from
6665         buffer local flags.
6666         (complex_vars_of_buffer): Removed buffer-file-type variable and
6667         its default reference.
6668
6669 1998-05-15  Kirill M. Katsnelson  <kkm@kis.ru>
6670
6671         * faces.c (complex_vars_of_faces): Defined
6672         Vvertical_divider_face.
6673         (vars_of_faces): Staticpro it.
6674
6675         * faces.h: Externed Vvertical_divider_face.
6676
6677         * redisplay-x.c (x_output_vertical_divider): Use
6678         Vvertical_divider_face to draw the divider instead of modeline
6679         face.
6680
6681         * redisplay-msw.c (mswindows_output_vertical_divider): Draw
6682         divider face using Vvertical_divider_face background.
6683         Fix drawing spacing gaps around the divider.
6684
6685 1998-05-14  Didier Verna  <verna@inf.enst.fr>
6686
6687         * redisplay-x.c (x_output_vertical_divider): removed hard-wired
6688         values for the vertical divider line width and spacing. Use the
6689         cached values from the window structure instead.
6690         (x_divider_width): ditto.
6691
6692         * window.c (specifier_vars_of_window): new specifiers:
6693         vertical-divier -line-width and -spacing.
6694         (vertical_divider_global_width_changed): formerly known as
6695         vertical_divider_shadow_thickness_changed.
6696
6697         * winslots.h: new slots: vertical_specifier _line_width and
6698         _spacing. Plus corrected a comment typo.
6699
6700 1998-05-15  Kirill M. Katsnelson  <kkm@kis.ru>
6701
6702         * window.h: Declared window_divider_width().
6703
6704         * console-stream.c (stream_divider_width): Removed method.
6705         (console_type_create_stream): And declaration for it.
6706
6707         * redisplay.c (pixel_to_glyph_translation): Use
6708         window_divider_width() instead of divider_width redisplay method.
6709         (pixel_to_glyph_translation): Fix top divider edge calculation
6710         when scrollbar is on top.
6711
6712         * window.c (window_divider_width): New function, an outphaser for
6713         divider_width redisplay method.
6714         (window_right_gutter_width): Use it.
6715         (specifier_vars_of_window): For vertical-divider-{spacing,line-width}
6716         specifiers, set fallback values differently on TTYs, and document
6717         the behavior of these on TTYs in the docstrings.
6718
6719         * scrollbar.c (update_scrollbar_instance): Use
6720         window_divider_width() instead of divider_width redisplay method.
6721
6722         * console.h (struct console_methods): Removed divider_width_method.
6723
6724         * redisplay-tty.c (tty_divider_width): Removed device method.
6725         (console_type_create_redisplay_tty): Removed definition for it.
6726         (tty_output_vertical_divider): Respect the value returned by
6727         window_divider_width thus divider line width specification.
6728
6729         * redisplay-msw.c (mswindows_divider_width): Removed device method.
6730         (console_type_create_redisplay_mswindows): Removed definition for it.
6731         (mswinodws_output_vertical_divider): Respect the value returned by
6732         window_divider_width thus divider line width specification.
6733
6734 1998-05-15  Andy Piper  <andyp@parallax.co.uk>
6735
6736         * toolbar-msw.c: guess toolbar frame size a bit more accurately.
6737
6738 1998-05-15  Andy Piper  <andyp@parallax.co.uk>
6739
6740         * glyphs-msw.c: resource loading implementation.
6741         (cursor_normalize): new function.
6742         (cursor_validate): ditto.
6743         (cursor_instantiate): ditto.
6744         (cursor_name_to_resource): ditto.
6745         (cursor_possible_dest_types): ditto.
6746         (check_valid_symbol): ditto.
6747         (check_valid_string_or_int): ditto.
6748
6749 1998-05-14  Martin Buchholz  <martin@xemacs.org>
6750
6751         * sysdep.c (tty_init_sys_modes_on_device): Treat VSUSP just like
6752         VINTR and VQUIT.
6753
6754         * process-unix.c (process_signal_char): Use VSUSP instead of
6755         non-standard VSWTCH.  Always prefer VSUSP to VSWTCH.
6756
6757 1998-05-14  Kirill M. Katsnelson  <kkm@kis.ru>
6758
6759         * specifier.c (specifier_instance): Change locale precedence of
6760         instantiation so window locale has higher priority than buffer
6761         locale.
6762         (Fspecifier_instance): Reflect this in docstring.
6763         (Fadd_spec_list_to_specifier): Ditto.
6764         (Fadd_spec_to_specifier): Ditto.
6765         (Fremove_specifier): Ditto.
6766
6767 1998-05-15  Kirill M. Katsnelson  <kkm@kis.ru>
6768
6769         ** Dialog separation into a device method from Andy Piper
6770
6771         * emacs.c (main_1): Call console_type_create_dialog_x().
6772
6773         * dialog-x.c (x_popup_dialog_box): Old Fpopup_dialog_box converted
6774         into this device method.
6775         (console_type_create_dialog_x): New function.
6776
6777         * dialog.c (Fpopup_dialog_box): New function.
6778         (syms_of_dialog): Defsubr it.
6779
6780         * console.h (struct console_methods): Declared
6781         popup_dialog_box_method().
6782
6783         * symsinit.h: Defined console_type_create_dialog_{x,mswindows}
6784
6785 1998-05-14  Oliver Graf <ograf@fga.de>
6786
6787         * dragdrop.c (vars_of_dragdrop): dragdrop-protocols created
6788         * frame-x.c (x_cde_transfer_callback): checked for merge errors
6789
6790 1998-05-13  Oliver Graf <ograf@fga.de>
6791
6792         * dragdrop.c (vars_of_dragdrop): provide dragdrop-api
6793
6794 1998-05-15  Kirill M. Katsnelson  <kkm@kis.ru>
6795
6796         * console.h (device_metrics): Removed dbcs, input-method-editor
6797         and right-to-left metrics.
6798
6799         * device.c (Fdevice_system_metric): Ditto.
6800         (Fdevice_system_metrics): Ditto.
6801         (syms_of_device): Ditto.
6802         (Fdevice_system_metric): Swapped DEVICE and METRIC parameters back
6803         again.
6804
6805 1998-05-14  Hrvoje Niksic  <hniksic@srce.hr>
6806
6807         * line-number.h (mark_line_number_cache): Remove unused
6808         declaration.
6809
6810         * line-number.c (LINE_NUMBER_FAR): Increase to 32768.
6811         (get_nearest_line_number): Simplify.
6812         (add_position_to_cache): Make the old marker point nowhere.
6813
6814 1998-05-14  Kirill M. Katsnelson  <kkm@kis.ru>
6815
6816         ** Renamed window-divider-map => vertical-divider-map
6817         and event-over-divider-p => event-over-vertical-divider-p,
6818         in the following files/functions:
6819         * events.h:
6820         * events.c (Fevent_over_divider_p):
6821         * keymap.c (get_relevant_keymaps):
6822         (vars_of_keymap):
6823
6824         * redisplay.h (OVER_V_DIVIDER): Renamed so from OVER_DIVIDER.
6825
6826         * redisplay.c (pixel_to_glyph_translation): Use OVER_V_DIVIDER.
6827
6828 1998-05-14  Kirill M. Katsnelson  <kkm@kis.ru>
6829
6830         * window.c (vertical_divider_changed_in_window): Renamed so.
6831         (specifier_vars_of_window): Defined Vvertical_divider_draggable_p.
6832         (window_needs_vertical_divider_1): Decide whether we need it based
6833         on the value of the above specifier. If separators are unwanted,
6834         put them only if there's no scrollbar between this window and its
6835         right neighbor.
6836         (have_undivided_common_edge): New function, helper for the above.
6837         (window_needs_vertical_divider): Return either a cached value,
6838         or clauclate and cache one.
6839         (invalidate_vertical_divider_cache_in_window): Implemented.
6840         (map_windows): Changed return type to int, return the value from
6841         MAPFUN.
6842
6843         * window.h: Prototype invalidate_vertical_divider_cache_in_window.
6844         (struct window): Added need_vertical_divider_p and
6845         need_vertical_divider_valid_p.
6846
6847         * winslots.h: Added vertical_divider_draggable_p slot.
6848
6849         * scrollbar.c (vertical_scrollbar_changed_in_window): Implemented.
6850         (specifier_vars_of_scrollbar): Used it in all vertical specifiers.
6851
6852         * frame.c (invalidate_vertical_divider_cache_in_frame): New function.
6853
6854         * frame.h (MARK_FRAME_WINDOWS_STRUCTURE_CHANGED): Call
6855         invalidate_vertical_divider_cache_in_frame().
6856         Prototype it.
6857
6858 1998-05-14  Andy Piper  <andyp@parallax.co.uk>
6859
6860         * toolbar-msw.c: provide correct parameters to TB_SETROWS.
6861
6862         * glyphs-msw.c (mswindows_initialize_image_instance_mask): size
6863         masks correctly and don't select 0.
6864
6865 1998-05-14  Kirill M. Katsnelson  <kkm@kis.ru>
6866
6867         * winslots.h: New file, declaration of some struct window and
6868         struct saved_window members.
6869
6870         * window.h (struct window): Include it, with required preprocessor
6871         magic.
6872
6873         * window.c (mark_window): Ditto.
6874         (allocate_window): Ditto.
6875         (struct saved_window): Ditto.
6876         (mark_window_config): Ditto.
6877         (saved_window_equal): Ditto.
6878         (Fset_window_configuration): Ditto.
6879
6880 1998-05-14  Kirill M. Katsnelson  <kkm@kis.ru>
6881
6882         * redisplay-msw.c (mswindows_output_vertical_divider): Syntax fix.
6883
6884 1998-05-12  Didier Verna  <verna@inf.enst.fr>
6885
6886         * redisplay-x.c (x_output_vertical_divider): draw shadows around
6887         the divider line. The shadow thickness is currently
6888         hard-wired. This will probably be turned into a specifier soon.
6889
6890 1998-05-12  Didier Verna  <verna@inf.enst.fr>
6891
6892         * console.h (struct console_methods): the divider_width console
6893         method now requires a struct window * argument.
6894
6895         * redisplay-x.c (x_divider_width): ditto. Plus remove
6896         X_DIVIDER_WIDTH, X_DIVIDER_SHADOW_THICKNESS.
6897         (x_output_vertical_divider): give a depressed look when the shadow
6898         thickness is negative.
6899
6900         * console-stream.c (stream_divider_width): pass a struct window *
6901         argument.
6902
6903         * redisplay-tty.c (tty_divider_width): ditto.
6904
6905         * window.c (window_right_gutter_width): totdi.
6906
6907         * redisplay.c (generate_modeline): ittod.
6908
6909         * scrollbar.c (update_scrollbar_instance): ttido.
6910
6911         * redisplay-msw.c (mswindows_divider_width): ottid.
6912         WARNING: this enables to compile, but the feature is not functional.
6913
6914         * window.h (struct window): new field
6915         vertical_divider_shadow_thickness.
6916
6917         * window.c (specifier_vars_of_window): new specifier
6918         vertical-divider-shadow-thickness.
6919         (vertical_divider_shadow_thickness_changed): new function to
6920         inform redisplay that the window has changed.
6921         (mark_window): handle new field vertical_divider_shadow_thickness
6922         from struct window.
6923         (allocate_window): ditto.
6924         (saved_window_equal): toddi.
6925         (Fset_window_configuration): totid.
6926         (save_window_save): ttdio.
6927         (struct saved_window): new field vertical_divider_shadow_thickness.
6928
6929 1998-05-14  Kirill M. Katsnelson  <kkm@kis.ru>
6930
6931         * device-msw.c (mswindows_device_system_metrics): Support a deluge
6932         of metrics.
6933
6934 1998-05-12  Oliver Graf <ograf@fga.de>
6935
6936         * frame-x.c (x_cde_transfer_callback): fixed for the new protocol
6937         * event-Xt.c (x_event_to_emacs_event): C++ compability
6938
6939 1998-05-14  Hrvoje Niksic  <hniksic@srce.hr>
6940
6941         * emacs.c (Fdecode_path): Default SEPCHAR to value of
6942         path-separator.
6943
6944 1998-05-14  Hrvoje Niksic  <hniksic@srce.hr>
6945
6946         * emacs.c (vars_of_emacs): Do it here; change the meaning of
6947         Vpath_separator.
6948
6949         * fileio.c (vars_of_fileio): Don't define Vpath_separator here.
6950
6951 1998-05-14  Hrvoje Niksic  <hniksic@srce.hr>
6952
6953         * emacs.c (decode_path_1): New function.
6954         (decode_path): Use it.
6955         (Fdecode_path): Renamed from Fdecode_path_internal; use
6956         decode_path_1.
6957
6958 1998-05-12  Hrvoje Niksic  <hniksic@srce.hr>
6959
6960         * macros.c (Fzap_last_kbd_macro_event): New function.
6961         (Fend_kbd_macro): Remove REMOVE_LAST kludge.
6962
6963 1998-05-10  Andy Piper  <andyp@parallax.co.uk>
6964
6965         * redisplay-msw.c (mswindows_output_dibitmap_region): make sure
6966         multiple bitmaps are output vertically as well as horizontally.
6967         * (mswindows_output_dibitmap): don't cope with bitmap boundaries
6968         crossing lines this is handled by
6969         mswindows_output_dibitmap_region.
6970
6971 1998-05-12  Martin Buchholz  <martin@xemacs.org>
6972
6973         * inline.c: Include eldap.h
6974
6975         * menubar-x.c (x_update_frame_menubar_internal):
6976         Remove: unused variable `container'
6977
6978 1998-05-11  Martin Buchholz  <martin@xemacs.org>
6979
6980         * s/aix4.h: Allow AIX 4.3 XEmacs to compile cleanly.
6981         Unfortunately, the resulting temacs still cannot dump.
6982
6983         * symbols.c (symbol_is_constant):
6984         (verify_ok_for_buffer_local):
6985         -Wswitch Warning suppression - add default case to switches.
6986
6987         * redisplay.c (decode_mode_spec): Remove unused variables,
6988         Replace Fcoding_system_property (codesys, Qmnemonic) with
6989         XCODING_SYSTEM_MNEMONIC (codesys);
6990         Fcoding_system_property is for users.
6991
6992         * buffer.c:
6993         * fileio.c:
6994         * lread.c:
6995         * xselect.c:
6996         Change empty docstrings into no doc strings at all.
6997         Fix bogus FSF-format docstrings.
6998
6999         * extents.c:
7000         Standardize docstrings.
7001
7002         * floatfns.c:
7003         Explain problems with matherr.
7004
7005         * glyphs.c:  make DEFUNs etags-readable, i.e. single-line
7006
7007         * syssignal.h:
7008         if BROKEN_SIGIO, then SIGIO wants to be undefined.
7009         if SIGIO and not SIGPOLL, SIGPOLL wants to be SIGIO.\
7010         Fix the weird resultant interaction (causes windows problems)
7011
7012         * gdbinit:
7013         * dbxrc:
7014         Take new EMACSBOOTSTRAPLOADPATH into account.
7015         Update documentation strings
7016
7017         * Makefile.in.in:
7018         - Adjust for luser's CDPATH being set to something weird.
7019         - Take into account bash 2.02's tendency to print the cwd when
7020           using CDPATH.  Always use `cd ./foo' instead of `cd foo'.
7021         - fix the run-temacs target to use $(DUMPENV)
7022         - fix the run-puremacs target to use $(DUMPENV)
7023         - fix the `depend' target to properly $(RM) the right files
7024         - Generate a better TAGS file for XEmacs' lisp code using
7025           hand-crafted regexps.
7026         - Use standard coding conventions for modules/Makefile.in
7027
7028 1998-05-12  Didier Verna  <verna@inf.enst.fr>
7029
7030         * redisplay.c: removed the scrolling modeline code that didn't
7031         make it for 21.0. To be continued ...
7032
7033 1998-05-13  Michael Sperber [Mr. Preprocessor]  <sperber@informatik.uni-tuebingen.de>
7034
7035         * emacs.c (Fdecode_path_internal): Removed bogus handling of nil
7036         and empty string inputs.
7037
7038 1998-05-12  Hrvoje Niksic  <hniksic@srce.hr>
7039
7040         * redisplay-x.c (x_output_vertical_divider): Fixed typo.
7041
7042 1998-05-10  Oliver Graf <ograf@fga.de>
7043
7044         * event-stream.c (enqueue_misc_user_event_pos): created
7045         * lisp.h (enqueue_misc_user_event_pos): prototype added
7046         * frame-x.c (x_cde_transfer_callback): debug code plus API changes
7047         * emacs.c: call vars_of_dragdrop
7048         * dragdrop.c (vars_of_dragdrop): provide dragdrop
7049
7050 1998-05-11  Oliver Graf <ograf@fga.de>
7051
7052         * frame-x.c (x_cde_transfer_callback): return at correct pos
7053         * event-Xt.c (x_event_to_emacs_event): changed format of drop
7054         object for MIME (see comment in dragdrop.c)
7055         * dragdrop.c: API change documented in comment
7056         removed provide of dragdrop [is provided by dragdrop.el]
7057
7058 1998-05-12  Kirill M. Katsnelson  <kkm@kis.ru>
7059
7060         * window.c (window_needs_vertical_divider): Enable vertical
7061         dividers for every non-rightmost window.
7062         (window_left_gutter_width): Left gutter consists of mythical
7063         toolbar and a virtual scrollbar.
7064         (window_right_gutter_width): The right one may have a divider
7065         also.
7066
7067         * scrollbar.c (update_scrollbar_instance): Position vertical
7068         scrollbar left to divider if the latter present.
7069
7070         * redisplay.h: Declared OVER_DIVIER constant.
7071
7072         * redisplay.c (pixel_to_glyph_translation): Handle OVER_DIVIDER
7073         case.
7074
7075         * redisplay-x.c (x_output_vertical_divider): Output divider along
7076         the right side of the window, down to window bottom. Swapped
7077         foreground and background colors so it is visible by default.
7078
7079         * redisplay-tty.c (tty_output_vertical_divider): Uncondiionally
7080         stick the divider to the right window side.
7081
7082         * redisplay-msw.c (mswindows_redisplay_deadbox_maybe): Fixed
7083         deadbox painting.
7084         (mswindows_divider_width): Ask system for user preferred value.
7085         (mswindows_output_vertical_divider): Always output the divider on
7086         the right side of a window, down to bottom.
7087
7088         * keymap.c (get_relevant_keymaps): Route mouse button events which
7089         happened over a window divider through window-divider-map.
7090         (Fkey_binding): Documented that in the docstring.
7091         Defined the variable Vwindow_divider_map.
7092
7093         * events.c (Fevent_over_divider_p): Added this function.
7094
7095         * events.h: EXFUNed it.
7096
7097 1998-05-12  Kirill M. Katsnelson  <kkm@kis.ru>
7098
7099         * toolbar.c (update_frame_toolbars): Re-layout frame windows if
7100         toolbar geometry is suspected to change.
7101
7102 1998-05-11  Jonathan Harris  <jhar@tardis.ed.ac.uk>
7103
7104         * src/device-msw.c
7105         * src/event-msw.c
7106         Condition dnd and dde code on HAVE_DRAGNDROP.
7107
7108 1998-05-11  Hrvoje Niksic  <hniksic@srce.hr>
7109
7110         * events.c (format_event_object): Print space as SPC etc.
7111
7112 1998-05-11  Hrvoje Niksic  <hniksic@srce.hr>
7113
7114         * print.c (print_internal): In the default case, abort() if
7115         ERROR_CHECK_TYPECHECK.
7116
7117         * fileio.c (Fmake_temp_name): Doc fix.
7118
7119 1998-05-10  Hrvoje Niksic  <hniksic@srce.hr>
7120
7121         * xgccache.c (describe_gc_cache): Define only if DEBUG_XEMACS.
7122
7123         * undo.c (Fprimitive_undo): Fixed typo.
7124
7125 1998-05-11  Hrvoje Niksic  <hniksic@srce.hr>
7126
7127         * fns.c (concat): Signal error on integer argument.
7128
7129 1998-05-10  Kirill M. Katsnelson  <kkm@kis.ru>
7130
7131         * console.h (device_metrics): Prefixed each constatnt with DM_
7132
7133         * device.c: (Fdevice_system_metric): Renamed so from plural form
7134         (metrics); Changed parameters order and added DEFAULT parameter;
7135         Unabbreviated some metric constants; Fixed and untabified doc string.
7136         (Fdevice_system_metrics): Added. Returns a plist of all provided
7137         metrics.
7138
7139         * device-msw.c (mswindows_device_system_metrics): Renamed
7140         device_metrics enum constants.
7141         Return Qunbound instead of Qnil.
7142
7143         * device-tty.c (tty_device_system_metrics): Ditto.
7144
7145         * device-x.c (x_device_system_metrics): Ditto.
7146
7147 1998-05-10  Andy Piper  <andyp@parallax.co.uk>
7148
7149         * redisplay-msw.c: implement background pixmaps (really!). Make
7150         sure bg color is transparent if we have bg pmaps.
7151         * (mswindows_output_string) (mswindows_clear_region): output bg
7152         pmap if required.
7153         * (mswindows_output_dibitmap_region): new function.
7154         * (mswindows_output_dibitmap): output offset pixmaps, blt masks in
7155         the bg color rather than transparently.
7156
7157         * toolbar-msw.c: use masks if they exist.
7158
7159         * glyphs-msw.c: set up masks correctly.
7160
7161         * event-msw.c: typedef SOCKET if cygwin and not msg select().
7162
7163 1998-05-10  Hrvoje Niksic  <hniksic@srce.hr>
7164
7165         * regex.c (re_match_2_internal): Check for quit.
7166
7167 1998-05-10  Hrvoje Niksic  <hniksic@srce.hr>
7168
7169         * frame.c (Ffocus_frame): New function.