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