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