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