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