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