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