Mercurial > hg > xemacs-beta
comparison src/ChangeLog @ 4834:b3ea9c582280
Use new cygwin_conv_path API with Cygwin 1.7 for converting names between Win32 and POSIX, UTF-8-aware, with attendant changes elsewhere
author | Ben Wing <ben@xemacs.org> |
---|---|
date | Tue, 12 Jan 2010 01:38:04 -0600 |
parents | e6dec75ded0e |
children | 1e90dc478938 |
comparison
equal
deleted
inserted
replaced
4833:4dd2389173fc | 4834:b3ea9c582280 |
---|---|
1 2010-01-11 Ben Wing <ben@xemacs.org> | |
2 | |
3 * database.c: | |
4 * intl-encap-win32.c (qxeUpdateICMRegKey): | |
5 Cosmetic fixes. | |
6 | |
7 * device-x.c (signal_if_x_error): | |
8 * editfns.c (Fformat_time_string): | |
9 * editfns.c (Fencode_time): | |
10 * editfns.c (Fcurrent_time_zone): | |
11 * editfns.c (Fset_time_zone_rule): | |
12 * event-gtk.c (gtk_reset_key_mapping): | |
13 * fileio.c (Fsysnetunam): | |
14 * font-mgr.c: | |
15 * font-mgr.c (Ffc_config_app_font_add_dir): | |
16 * font-mgr.c (Ffc_config_filename): | |
17 * glyphs-eimage.c (my_jpeg_output_message): | |
18 * glyphs-eimage.c (jpeg_instantiate): | |
19 * glyphs-shared.c (read_bitmap_data_from_file): | |
20 * glyphs-x.c (x_redisplay_widget): | |
21 * glyphs-x.c (x_widget_instantiate): | |
22 * glyphs-x.c (x_widget_property): | |
23 * glyphs-x.c (x_tab_control_redisplay): | |
24 * hpplay.c (player_error_internal): | |
25 * hpplay.c (play_sound_file): | |
26 * hpplay.c (play_sound_data): | |
27 * process-unix.c: | |
28 * process-unix.c (unix_canonicalize_host_name): | |
29 * process.c (init_xemacs_process): | |
30 * sound.h (sound_perror): | |
31 * sysdep.c: | |
32 * sysdep.c (qxe_execve): | |
33 * sysdep.c (copy_in_passwd): | |
34 * sysdep.c (qxe_getpwnam): | |
35 * sysdep.c (qxe_ctime): | |
36 * sysdll.c (dll_error): | |
37 * sysdll.c (dll_open): | |
38 * tooltalk.c (check_status): | |
39 * tooltalk.c (Fadd_tooltalk_message_arg): | |
40 * tooltalk.c (Fadd_tooltalk_pattern_attribute): | |
41 * tooltalk.c (Fadd_tooltalk_pattern_arg): | |
42 Change all occurrences of Qnative to some more specific encoding. | |
43 Create Qtime_function_encoding, Qtime_zone_encoding, | |
44 Quser_name_encoding, Qerror_message_encoding, | |
45 Qjpeg_error_message_encoding, Qtooltalk_encoding, Qgtk_encoding, | |
46 Qx_error_message_encoding. | |
47 | |
48 * intl-win32.c (init_intl_win32): | |
49 Provide cygwin-use-utf-8 if this is the case. | |
50 | |
51 * fileio.c (Ffile_truename): | |
52 * realpath.c: | |
53 * syswindows.h (LOCAL_FILE_FORMAT_TO_TSTR): | |
54 * syswindows.h (TSTR_TO_LOCAL_FILE_FORMAT): | |
55 * syswindows.h (LOCAL_FILE_FORMAT_TO_INTERNAL_MSWIN): | |
56 * syswindows.h (INTERNAL_MSWIN_TO_LOCAL_FILE_FORMAT): | |
57 * syswindows.h (LISP_LOCAL_FILE_FORMAT_MAYBE_URL_TO_TSTR): | |
58 * win32.c (urlify_filename): | |
59 * win32.c (tstr_to_local_file_format): | |
60 * win32.c (Fmswindows_cygwin_to_win32_path): | |
61 Rename LOCAL_FILE_FORMAT_TO_INTERNAL_WIN32 and | |
62 INTERNAL_WIN32_TO_LOCAL_FILE_FORMAT to | |
63 LOCAL_FILE_FORMAT_TO_INTERNAL_MSWIN and | |
64 INTERNAL_MSWIN_TO_LOCAL_FILE_FORMAT, since "win32" is a misnomer. | |
65 | |
66 2010-01-11 Ben Wing <ben@xemacs.org> | |
67 | |
68 * config.h.in: | |
69 Add def for HAVE_CYGWIN_CONV_PATH. | |
70 | |
71 * dialog-msw.c (handle_directory_dialog_box): | |
72 * dialog-msw.c (handle_file_dialog_box): | |
73 * fileio.c: | |
74 * fileio.c (Ffile_truename): | |
75 * syswindows.h: | |
76 * syswindows.h (CCP_POSIX_TO_WIN_T): | |
77 * syswindows.h (LISP_LOCAL_FILE_FORMAT_TO_TSTR): | |
78 * syswindows.h (INTERNAL_WIN32_TO_LOCAL_FILE_FORMAT): | |
79 * syswindows.h (LISP_LOCAL_FILE_FORMAT_MAYBE_URL_TO_TSTR): | |
80 * win32.c (urlify_filename): | |
81 * win32.c (tstr_to_local_file_format): | |
82 * win32.c (Fmswindows_shell_execute): | |
83 * win32.c (Fmswindows_cygwin_to_win32_path): | |
84 Rename LOCAL_FILE_FORMAT_TO_TSTR to LISP_LOCAL_FILE_FORMAT_TO_TSTR. | |
85 Rename LOCAL_FILE_FORMAT_MAYBE_URL_TO_TSTR to | |
86 LISP_LOCAL_FILE_FORMAT_MAYBE_URL_TO_TSTR. Both of these renames | |
87 reflect the fact that their 'in' argument is a Lisp object. | |
88 | |
89 Create new LOCAL_FILE_FORMAT_TO_TSTR that accepts an Ibyte *. | |
90 | |
91 Rename LOCAL_TO_WIN32_FILE_FORMAT to | |
92 LOCAL_FILE_FORMAT_TO_INTERNAL_WIN32; rename WIN32_TO_LOCAL_FILE_FORMAT | |
93 to INTERNAL_WIN32_TO_LOCAL_FILE_FORMAT similarly. | |
94 This clarifies the fact that the result is a file in MS-Windows format | |
95 rather than POSIX format, but still in internal-format instead of | |
96 UTF-16. | |
97 | |
98 Fix up the *LOCAL_FILE_FORMAT* functions to use cygwin_conv_path() | |
99 if available. This converts between a UTF-8 POSIX path and a | |
100 UTF-16 Windows path (or ANSI Windows path, in the increasingly | |
101 unlikely situation that we're using Windows 9x). Previously, we | |
102 used an old API and operated on internal-format data, because the | |
103 external format was unpredictable. This doesn't work any more, | |
104 even with the old API (it tries to convert to UTF-8). So instead, | |
105 when the new API is available we use the new API and operate on | |
106 external-format data. This necessitates that if we want to convert | |
107 to/from internal-format Windows-style paths, we need to first convert | |
108 to external format, do the conversion, and convert back to | |
109 internal format. To avoid this, we change some callers of the | |
110 macros to use the right version (internal or external format | |
111 destination) and avoid doing the internal/external conversions | |
112 themselves. | |
113 | |
114 * realpath.c: | |
115 * fileio.c (check_writable): | |
116 Cosmetic fixes to check_writable. | |
117 | |
118 Avoid directly calling cygwin_conv_to_full_win32_path | |
119 (fileio.c:check_writable did this) or cygwin_posix_to_win32_path_list | |
120 (realpath.c:readlink_or_correct_case did this); use the | |
121 *LOCAL_FILE_FORMAT* macros instead. | |
122 | |
123 * fileio.c (Ffile_exists_p): | |
124 * glyphs-msw.c (mswindows_resource_instantiate): | |
125 * sysdll.c (dll_open): | |
126 * sysfile.h: | |
127 * sysfile.h (PATHNAME_CONVERT_OUT_TSTR): | |
128 Add PATHNAME_CONVERT_OUT_TSTR and PATHNAME_CONVERT_OUT_UTF_8 for | |
129 conversion involving specified coding systems rather than `file-name'. | |
130 Use them in *LOCAL_FILE_FORMAT* macros. | |
131 | |
132 * emacs.c (main_1): | |
133 * symsinit.h: | |
134 * unicode.c: | |
135 New function complex_vars_of_unicode(). In it, create the utf-8 | |
136 coding system. Call it appropriately in emacs.c. Sort the | |
137 prototypes of complex_vars_of_*() in symsinit.h, for cosmetic | |
138 reasons. | |
139 | |
140 | |
141 2010-01-11 Ben Wing <ben@xemacs.org> | |
142 | |
143 * regex.c (re_compile_fastmap): | |
144 The code to compute the fastmap in charset_mule_not was totally | |
145 messed up. I'm surprised it hasn't led to more visible bugs. | |
146 | |
147 2010-01-11 Ben Wing <ben@xemacs.org> | |
148 | |
149 * rangetab.c: | |
150 * rangetab.c (external_to_internal_adjust_ends): | |
151 * rangetab.c (put_range_table): | |
152 * rangetab.c (Fmap_range_table): | |
153 * rangetab.c (struct unified_range_table): | |
154 * rangetab.c (unified_range_table_copy_data): | |
155 * rangetab.c (unified_range_table_get_range): | |
156 Add an entry to unified range tables to keep track of their type. | |
157 Factor out code to adjust the endpoints of ranges between the | |
158 external format (either end can be open or closed) and internal | |
159 format (always closed/open). Use code also when returning | |
160 ranges out of unified range tables. Fixes an off-by-one error | |
161 in regex.c where it was getting ranges with an end one greater | |
162 than expected, since it creates closed-closed range tables and | |
163 was getting passed the internal-format ranges. | |
164 | |
165 2010-01-11 Ben Wing <ben@xemacs.org> | |
166 | |
167 * file-coding.c (default_query_method): | |
168 OOOOOPS! Had = instead of ==. | |
169 | |
170 2010-01-11 Ben Wing <ben@xemacs.org> | |
171 | |
172 * config.h.in: | |
173 * config.h.in (ERROR_CHECK_GLYPHS): | |
174 Trying to avoid link errors referring to the ERROR_CHECK_TYPES | |
175 functions, either in eldap.o (if we don't include references to | |
176 ERROR_CHECK_TYPES in xemacs.def.in.in) or xemacs-export.o (if | |
177 we do include such references): | |
178 | |
179 Add line for USE_GPLUSPLUS, set by configure. | |
180 Define INLINE_HEADERS_ARE_STATIC when we add static to inline headers. | |
181 (Possibly used when setting NEED_ERROR_CHECK_TYPES_INLINES.) | |
182 Currently, set NEED_ERROR_CHECK_TYPES_INLINES when ERROR_CHECK_TYPES | |
183 and USE_GPLUSPLUS. | |
184 | |
185 * xemacs.def.in.in: | |
186 Use NEED_ERROR_CHECK_TYPES_INLINES here to bracket things like | |
187 `error_check_cons' instead of just ERROR_CHECK_TYPES. | |
188 | |
189 * faces.c (complex_vars_of_faces): | |
190 Bracket various font variables with defined(USE_XFT or MULE) to | |
191 avoid warnings. | |
192 | |
193 * fileio.c: | |
194 Make sure the `expand-file-name' handler returns a string, to | |
195 avoid a potential crash. | |
196 | |
197 * floatfns.c (round_one_bigfloat_1): | |
198 #if-0 out an assert that can never be triggered and which | |
199 generates warnings "dereferencing type-punned pointer will break | |
200 strict-aliasing rules". | |
201 | |
202 * redisplay-x.c (separate_textual_runs_nomule): | |
203 Remove unused variable in non-Mule case. | |
204 | |
205 * specifier.c (charset_matches_specifier_tag_set_p): | |
206 Variable CHARSET is unused when not Mule. | |
207 | |
208 * specifier.c (specifier_instance_from_inst_list): | |
209 Add a comment questioning why font-specific stuff is littering | |
210 specifier.c. | |
211 | |
212 * syswindows.h: | |
213 Expand on the comments on a #if 0 I added in a previous patch. | |
214 | |
215 * vdb-win32.c: | |
216 * vdb-win32.c (win32_fault_handler): | |
217 * vdb-win32.c (vdb_install_signal_handler): | |
218 Change return type to LONG instead of DWORD to avoid warning or | |
219 error. | |
220 | |
221 2010-01-11 Ben Wing <ben@xemacs.org> | |
222 | |
223 * database.c: Cygwin prototypes in ndbm.h are incomplete and | |
224 cause C++ compile errors; fix them. | |
225 | |
226 * fileio.c (check_writable): | |
227 Fix compile errors. Also move the call to C_STRING_TO_TSTR | |
228 earlier, which is probably wrong, but fixed in a later patch. | |
229 | |
230 * intl-encap-win32.c (qxeGetICMProfile): | |
231 Ifdef out a fix to work around a previous bogosity in Cygwin | |
232 header files which has now been fixed. Keeping in the fix | |
233 led to compile errors. #### Proper way to do it is to figure | |
234 out when it got fixed, perhaps put in a configure test, but it | |
235 seems not worth it. | |
236 | |
237 * intl-encap-win32.c (qxeUpdateICMRegKey): | |
238 Cosmetic change, undone in a later patch. | |
239 * mule-charset.c (Fset_charset_ccl_program): | |
240 Remove unused variable. | |
241 * nas.c: | |
242 #if-0 out some unused static code to avoid a warning. | |
243 * syswindows.h: | |
244 Don't declare prototypes for GetCurrentFiber and GetFiberData, | |
245 it causes a compile error. | |
246 * unicode.c (unicode_query): | |
247 invalid_lower_limit might have been used uninitted, so initialize it. | |
248 | |
1 2010-01-09 Didier Verna <didier@xemacs.org> | 249 2010-01-09 Didier Verna <didier@xemacs.org> |
2 | 250 |
3 * glyphs.c (query_string_font): Use proper domain for cachel | 251 * glyphs.c (query_string_font): Use proper domain for cachel |
4 updating. | 252 updating. |
5 | 253 |