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