g_build_filename_va is only use in the G_OS_WIN32 case, so compile it
[platform/upstream/glib.git] / ChangeLog.pre-2-8
1 Thu Jun 23 15:52:08 2005  Manish Singh  <yosh@gimp.org>
2
3         * glib/gfileutils.c: g_build_filename_va is only use in the G_OS_WIN32
4         case, so compile it conditionally.
5
6 2005-06-23  Matthias Clasen  <mclasen@redhat.com>
7
8         * tests/keyfile-test.c (test_group_remove): Don't leak
9         memory here.
10
11         * glib/gkeyfile.c (g_key_file_load_from_data_dirs): Don't
12         leak output_path.  (#308546, Kjartan Maraas)
13
14         * glib/glib.symbols: 
15         * glib/gfileutils.h: 
16         * glib/gfileutils.c (g_build_pathv, g_build_filenamev): 
17         Variants of g_build_path() and g_build_filename()
18         which take a string array instead of varargs.  
19         (#149092, Todd A. Fisher)
20
21         * tests/strfunc-test.c: Add tests for g_build_pathv() 
22         and g_build_filenamev().
23
24 2005-06-22  Tor Lillqvist  <tml@novell.com>
25
26         * glib/gfileutils.c
27         * glib/gfileutils.h
28         * glib/glib.symbols
29         * tests/testglib.c: Rename g_makepath() to g_mkdir_with_parents().
30
31 2005-06-22  Matthias Clasen  <mclasen@redhat.com>
32
33         * glib/goption.c (parse_short_option, parse_long_option): 
34         Pass the option name also in the NO_ARG case.  (#308602,
35         Masatake YAMATO)
36         (parse_arg): Properly store changes for arrays.  (#308528,
37         Roger Leigh)
38
39 2005-06-22  Tor Lillqvist  <tml@novell.com>
40
41         * glib/gfileutils.c (g_makepath): New function. Creates a
42         directory including intermediate parent directories as
43         needed. (#60509)
44
45         * glib/gfileutils.h: Declare it.
46
47         * glib/gutils.c (g_get_host_name): New function. Returns the
48         machine's name, or one of its names. Document that it is
49         best-effort only, and not guaranteed to be unique or anything.
50         (g_get_any_init): Get the host name here. On Unix use
51         gethostname(), on Windows use GetComputerName(). (#5200)
52
53         * glib/gutils.h: Declare it.
54
55         * glib/glib.symbols: Add new functions.
56
57         * tests/testglib.c: Test g_makepath() and g_get_host_name().
58         
59 2005-06-18  Matthias Clasen  <mclasen@redhat.com>
60
61         * glib/goption.h: 
62         * glib/goption.c: Add G_OPTION_FLAG_NO_ARG and
63         G_OPTION_FLAG_FILENAME to allow greater control of
64         G_OPTION_ARG_CALLBACK options. (#302632, Dan Winship)
65
66         * tests/option-test.c: test callback args
67
68 2005-06-14  Theppitak Karoonboonyanan  <thep@linux.thai.net>
69
70         * configure.in: Added 'th' (Thai) to ALL_LINGUAS.
71
72 2005-06-10  Matthias Clasen  <mclasen@redhat.com>
73
74         * configure.in: Bump version
75
76         * === Released 2.7.0 ===
77
78         * NEWS: Updates
79
80 2005-06-09  Matthias Clasen  <mclasen@redhat.com>
81
82         * glib/gkeyfile.c (g_key_file_parse_value_as_integer): Better
83         error checking. (#306389, Morten Welinder)
84
85         * glib/goption.c (parse_int): Set errno to 0 before calling
86         strtol.  (#306388, Morten Welinder)
87
88 2005-06-09  Tor Lillqvist  <tml@novell.com>
89
90         * glib/gstdio.h
91         * glib/gstdio.c
92         * glib/glib.symbols: Add a chdir() wrapper, too.
93
94         * glib/glib.symbols: Add g_win32_locale_filename_from_utf8().
95
96         * glib/gwin32.c (g_win32_locale_filename_from_utf8): Clarify doc
97         comment.
98
99 2005-06-08  Tor Lillqvist  <tml@novell.com>
100
101         * glib/gutils.c (get_windows_directory_root): New helper function
102         on Win32, returns the root of the drive (or possibly share) where
103         the Windows directory is. (In the case of Terminal Server sessions
104         the Windows directory is a per-user folder.)
105         (g_get_any_init): Use get_windows_directory_root() as last resort
106         for both temp directory and home directory. g_get_home_dir() now
107         never returns NULL on Win32. Don't look at HOMEDRIVE and
108         HOMEPATH. HOME, USERPROFILE, CSIDL_PROFILE and Windows directory
109         drive root should be enough.
110
111 2005-06-08  Matthias Clasen  <mclasen@redhat.com>
112
113         * glib/glib.symbols: 
114         * glib/gunicode.h: 
115         * glib/gunicollate.c (g_utf8_collate_key_for_filename): 
116         New function to calculate collation keys which are more
117         suitable for sorting filenames.  (#172690, Ole Laursen)
118
119 Fri May 27 17:18:00 2005  Manish Singh  <yosh@gimp.org>
120
121         * glib/goption.c (parse_short_option): initialize option_name
122         before using it.
123
124 2005-05-27  Matthias Clasen  <mclasen@redhat.com>
125
126         * glib/goption.c (parse_short_option, parse_long_option):
127         Return an error if an option is missing its argument.  (#305576,
128         Björn Lindqvist)
129
130         * tests/option-test.c (missing_arg_test): Add a testcase.
131
132 Wed May 25 15:33:51 2005  Manish Singh  <yosh@gimp.org>
133
134         * glib/goption.c (print_help): rest_description should be const.
135
136 2005-05-25  Matthias Clasen  <mclasen@redhat.com>
137
138         * glib/gunidecomp.c (combine_hangul): Don't eat Hangul 
139         when normalizing.  (#301742, reported by Christian Biere,
140         patch by Noah Levitt)
141
142 2005-05-24  Matthias Clasen  <mclasen@redhat.com>
143
144         * glib/goption.c (print_help): If the remaining argument
145         has an arg_description, display the synopsis as
146         PROGNAME [OPTION...] REST  (#305346, Noah Levitt)
147
148 2005-05-20  Federico Mena Quintero  <federico@ximian.com>
149
150         Merged from glib-2-6:
151
152         * glib/gspawn.c (g_spawn_command_line_sync): Clarify the meaning
153         of exit_status(); it's not the return code from the child, but
154         rather the waitpid() status.
155
156 2005-05-18  Matthias Clasen  <mclasen@redhat.com>
157
158         * glib/gunidecomp.c: Correct the end of the Hangul 
159         Syllables range, from 0xd7af to 0xd7a3, in several
160         places.  (#301984, Changwoo Ryu)
161
162 2005-05-17  Matthias Clasen  <mclasen@redhat.com>
163
164         * tests/tree-test.c (main): Check the return values of
165         g_tree_remove().
166
167         * glib/gtree.c (g_tree_remove, g_tree_steal): Return
168         a boolean indicating wether the key was found.  (#302545,
169         Matthew F. Barnes)
170
171 2005-05-06  Brian Cameron  <brian.cameron@sun.com>
172
173         * configure.in, gmodule-no-export-2.0-uninstalled.pc.in,
174           Makefile.am:  Added gmodule-no-export-2.0-uninstalled.pc.in
175           to allow building of other libraries like pango when 
176           glib is uninstalled.
177
178 2005-05-06  Matthias Clasen  <mclasen@redhat.com>
179
180         * tests/option-test.c: Add a testcase.
181         
182         * glib/goption.c (g_option_context_parse): Treat '-'
183         on its own as a non-option argument.  (#168008, Tim Musson,
184         Thomas Leonard and others)
185
186 2005-05-05  Owen Taylor  <otaylor@redhat.com>
187
188         * glib/gdataset.[ch] glib/gdatasetprivate.h: Add 
189         g_datalist_set/unset_flags(), g_datalist_get_flags() functions
190         to squeeze some bits into a GDataSet... this is needed for
191         efficient implementation of toggle references in GObject.
192
193         * tests/gobject/references.c tests/gobject/Makefile.am:
194         Add a test case for weak and toggle references.
195
196         * glib/gfileutils.[ch]: Rename g_file_replace() back
197         to g_file_set_contents().
198
199         * glib/glib.symbols: Update.
200
201 2005-05-02  Matthias Clasen  <mclasen@redhat.com>
202
203         * glib/gstring.c (g_str_equal, g_str_hash): Move docs
204         inline.
205
206 2005-05-01  Matthias Clasen  <mclasen@redhat.com>
207
208         * glib/ghash.h: Rename some parameters to make gtk-doc
209         happy.
210
211         * glib/gutils.c: 
212         * glib/gwin32.c: 
213         * glib/gstdio.c: Fix some typos, mark new API as "Since 2.8".
214
215 2005-04-29  Matthias Clasen  <mclasen@redhat.com>
216
217         * glib/gtree.c: Clarify some docs. (#302062, Matthew F. Barnes)
218
219 2005-04-28  Matthias Clasen  <mclasen@redhat.com>
220
221         * glib/gstrfuncs.c (g_strcompress): Warn and don't crash
222         when meeting a trailing \\.  (#301373, Benjamin Otte)
223
224 2005-04-27  Tor Lillqvist  <tml@novell.com>
225
226         * glib/gconvert.c (open_converter, g_convert_with_iconv): Don't
227         call g_set_error() unless the GError pointer is non-NULL. This
228         avoids infinite recursion problems in certain rare situations on
229         Windows, when g_locale_from_utf8() is called from
230         _glib_get_locale_dir() after the change below. It's the
231         _glib_gettext() calls to translate error messages that are
232         parameters to g_set_error() that cause the recursion, not
233         g_set_error() itself.
234
235         * glib/gwin32.c (g_win32_locale_filename_from_utf8): New
236         function. Converts a filename to the system codepage, and if a
237         straight conversion isn't possible (because the filename contains
238         characters not in the system codepage), try looking up the
239         filename (which should refer to an existing file for this to
240         succeed) with short (8.3) pathname components.
241
242         * glib/gutils.c (_glib_get_locale_dir): No need to cache the
243         result, this function is normally called only once. Return the
244         path to the locale directory in system codepage, not UTF-8. The
245         path is passed to bindtextdomain(), which doesn't use UTF-8 file
246         names. Use g_win32_locale_filename_from_utf8(). (#301772)
247
248         Don't do run-time lookup of message catalog directory on
249         Cygwin. Cygwin is supposed to look and feel like Unix, and on Unix
250         we use paths fixed at configure time.
251
252 2005-04-19  Tor Lillqvist  <tml@novell.com>
253
254         * glib/gutils.h: Minor comment improvement.
255
256 2005-04-18  Tor Lillqvist  <tml@novell.com>
257
258         * glib/gfileutils.c: No <sys/wait.h> on Win32. Definition of
259         save_errno was missing in one place.
260
261 Sat Apr 16 20:15:44 2005  Soeren Sandmann  <sandmann@redhat.com>
262
263         * glib/gfileutils.c (g_file_replace): Save the errno in various
264         places
265
266         * glib/gfileutils.c (set_umask_permissions): Fork a child and do
267         chmod() to the umask() permissions there.
268
269 2005-04-10  Matthias Clasen  <mclasen@redhat.com>
270
271         * glib/gmessages.h (g_debug): Use G_LOG_LEVEL_DEBUG in
272         both definitions.  (#300071, Tommi Komulainen)
273
274 2005-04-09  Tor Lillqvist  <tml@novell.com>
275
276         * glib/gutils.c: Include <process.h> on Win32 for getpid(). (#173094)
277
278 2005-04-08  Tor Lillqvist  <tml@novell.com>
279
280         * glib/gstdio.h
281         * glib/gstdio.c
282         * glib/glib.symbols (g_access, g_chmod, g_creat): Wrap also
283         access(), chmod() and creat(). (#169623, #171285)
284
285 2005-04-08  Tor Lillqvist  <tml@novell.com>
286
287         Improve g_get_system_data_dirs() on Windows. A library that calls
288         g_get_system_data_dirs() might be installed in a different
289         top-level prefix than GLib or the application being run.
290
291         * glib/gutils.h (g_win32_get_system_data_dirs): New static
292         function defined in this header. Calls
293         g_win32_get_system_data_dirs_for_module() passing the address of
294         itself as parameter. g_get_system_data_dirs() is #defined as this
295         function.
296
297         * glib/gutils.c (g_win32_get_system_data_dirs_for_module): New
298         function. If the address parameter is non-NULL, the corresponding
299         module's installation location is used for one of the returned
300         path names, in addition to the COMMON_APPDATA, COMMON_DOCUMENTS,
301         glib top-level and application top-level folders.
302         (g_get_system_data_dirs): Now just for backward compatibility on
303         Win32. Just call g_win32_get_system_data_dirs_for_module(NULL).
304
305         * glib/glib.symbols: Add g_win32_get_system_data_dirs_for_module.
306
307         * glib/gutils.c (read_aliases): Not used on Windows.
308         (unalias_lang): Don't do anything on Windows, there is no
309         /usr/share/locale/locale.alias file..
310         
311 Thu Apr  7 22:51:15 2005  <yosh@gimp.org>
312
313         * glib/gutils.c (g_get_system_data_dirs): Declare glib_top_share_dir
314         and exe_top_share_dir only in G_OS_WIN32.
315
316 2005-04-08  Tor Lillqvist  <tml@novell.com>
317
318         * glib/gutils.c (g_get_system_data_dirs): After investigating more
319         closely the actual use cases of this function, I understand better
320         what it needs to do on Windows. In addition to the Windows
321         COMMON_APPDATA and COMMON_DOCUMENTS folders, also return the
322         "share" subfolders of GLib's installation location and the
323         application .exe's installation location, hoping that either
324         matches what the function's caller is looking for.
325
326         * glib/gutils.h (G_WIN32_DLLMAIN_FOR_DLL_NAME): Use wide char API
327         if available, and store dll name in UTF-8.
328
329 2005-04-05  Matthias Clasen  <mclasen@redhat.com>
330
331         * glib/gfileutils.c (get_contents_stdio): Avoid memory 
332         leaks in borderline cases.  (#172612, Morten Welinder)
333
334 2005-04-04  Matthias Clasen  <mclasen@redhat.com>
335
336         * glib/gconvert.c: Clarify docs in some places. (#172404, 
337         Morten Welinder)
338
339 2005-04-03  Matthias Clasen  <mclasen@redhat.com>
340
341         * glib/gutils.h: Undef G_CAN_INLINE if G_IMPLEMENT_INLINES is 
342         defined. This was the pre-2.6 behaviour, and without it,
343         G_IMPLEMENT_INLINES cannot be used in multiple .c files
344         at all.  (#165852, Dave Benson)
345
346 2005-04-01  Matthias Clasen  <mclasen@redhat.com>
347
348         * glib/gmain.c (g_child_watch_source_new): Add a note regarding
349         waitpid(-1).
350         (g_child_watch_source_init_multi_threaded): 
351         (g_child_watch_source_init_single): Don't use SA_RESTART,
352         since it causes problems on at least one platform. (#168352)
353
354 2005-03-30  Steve Murphy  <murf@e-tools.com>
355
356         * configure.in: Added "rw" to ALL_LINGUAS.
357
358 2005-03-30  Sven Neumann  <sven@gimp.org>
359
360         * glib/gfileutils.c (get_contents_stdio): handle the unlikely case
361         that no bytes are read from the file and allocate an empty string.
362
363 2005-03-30  Tor Lillqvist  <tml@novell.com>
364
365         * glib/giowin32.c (g_io_win32_fd_get_flags_internal): Always claim
366         file descriptors open to devices are readable, since we can't
367         know. fstat() doesn't give any useful information. (#145326)
368
369 2005-03-29  Tor Lillqvist  <tml@novell.com>
370
371         * glib/gmain.c (g_poll): [Win32] If the event fired, assign
372         f->revents=f->events. We can't know whether the upper layer using
373         the event actually is readable, writeable or what, so say that all
374         the conditions hold. Remove the ResetEvent() call that has been
375         ifdeffed out anyway for a long time. Remove an "#ifdef 1" and
376         #endif pair of lines, that code is not optional.
377         (g_get_current_time): [Win32] Use GetSystemTimeAsFileTime()
378         instead of time() and GetTickCount(). Much simpler.
379
380 2005-03-28  Matthias Clasen  <mclasen@redhat.com>
381
382         * tests/date-test.c: 
383         * tests/testgdate.c: Add tests for 
384         g_date_get_iso8601_week_of_year().
385
386         * glib/gdate.c (g_date_get_iso8601_week_of_year): 
387         Fix the calculation.  (#169858, Jon-Kare Hellan)
388
389 2005-03-27  Tor Lillqvist  <tml@novell.com>
390
391         * configure.in: Apparently AC_LIBTOOL_WIN32_DLL isn't deprecated
392         after all, and in fact necessary with HEAD libtool.
393
394 2005-03-23  Tor Lillqvist  <tml@novell.com>
395
396         * glib/gutils.c (g_getenv): [Win32] Fix corner case bug when
397         environment variable value is exactly one character.
398
399 2005-03-21  Matthias Clasen  <mclasen@redhat.com>
400
401         * glib/glib.symbols: Add g_try_malloc0
402
403         * glib/gmem.h: Add g_try_new, g_try_new0, g_try_renew and
404         g_try_malloc0.  (#169611, Stefan Kost)
405
406         * glib/gmem.c: Implement g_try_malloc0.
407
408 2005-03-20  Tor Lillqvist  <tml@novell.com>
409
410         * glib/gspawn-win32.c (do_spawn_with_pipes): Close the process
411         handle if the caller doesn't want it also in the case without a
412         helper process.
413         (g_spawn_sync): Don't ask for a child pid which we don't need.
414
415         * glib/gtimer.c: On Win32, use GetSystemTimeAsFileTime() instead
416         of GetTickCount(). (#159507)
417
418         * glib/gmessages.c (g_log_default_handler)
419         * glib/gutils.c (g_get_prgname): Move the Win32 code that asks the
420         program name from the system to g_get_prgname(). Do output the pid
421         also on Win32 (useful in case there are several instances of the
422         same program running).
423
424         * tests/testglib.c (main): Print more detailled output from the
425         timer tests. Don't print home directory twice. Test
426         g_win32_error_message().
427
428         * tests/spawn-test.c (run_tests): On Win32, run netstat instead of
429         ipconfig. On Windows XP collecting output from ipconfig doesn't
430         seem to work for some reason.
431
432 2005-03-18  Hans Breuer  <hans@breuer.org>
433
434         * glib/makefile.msc.in : handle galiasdef.c (although completely 
435         useless for msvc build)
436
437         * glib/gbacktrace.c glib/gmessage.c : need at least _WIN_VER 0x0401
438         for IsDebuggerPresent()
439
440 2005-03-17  Matthias Clasen  <mclasen@redhat.com>
441
442         * glib/gkeyfile.c: Update the documentation, reflecting the
443         fact that the special case for !group_name --> start_group
444         got removed.  (#170566, Tim-Philipp Müller)
445
446 2005-03-15  Matthias Clasen  <mclasen@redhat.com>
447
448         * glib/goption.c (g_option_context_set_main_group): Warn 
449         if there already is a main group.  (#170445, Jeff Franks)
450
451 Sun Mar 13 22:01:17 2005  Manish Singh  <yosh@gimp.org>
452
453         * tests/array-test.c: delete a bunch of dead code.
454
455 Sun Mar 13 21:28:47 2005  Manish Singh  <yosh@gimp.org>
456
457         * glib/gdataset.c: remove spurious IA prefix from g_quark_try_string.
458
459 2005-03-13  Matthias Clasen  <mclasen@redhat.com>
460
461         * glib/gatomic.c:
462         * glib/gcache.c: Small fixes to the previous commit.
463
464 2005-03-13  Matthias Clasen  <mclasen@redhat.com>
465
466         Make PLT-reduction work with gcc4, and don't include
467         everything in galias.h:
468         
469         * glib/glib.symbols: Group symbols by header and source file.
470         * glib/makegalias.pl: Protect definitions by the same 
471         preprocessor symbols used to guard the headers. Move
472         the alias declarations to a separate file which is 
473         produced when calling makegalias.pl -def
474         * glib/Makefile.am (galiasdef.c): Add a rule to generate this
475         file.
476         * glib/*.c: Include galias.h after the other GLib headers,
477         include galiasdef.c at the bottom.
478
479         * glib/glib.symbols: Add g_listenv and g_file_replace.
480
481 Fri Mar 11 23:51:12 2005  Soeren Sandmann  <sandmann@redhat.com>
482
483         * glib/gfileutils.c (write_to_temp_file): Don't try and generate
484         a dotfile from the name -- it doesn't work with absolute
485         paths. Also make documentation indicate that symlinks will be
486         overwritten. Both pointed out by Alexis S. L. Carvalho.
487
488 2005-03-11  Matthias Clasen  <mclasen@redhat.com>
489
490         * m4macros/glib-gettext.m4: Avoid stupid compiler complaints
491         about precision loss.
492
493 2005-03-10  Matthias Clasen  <mclasen@redhat.com>
494
495         * glib/gdate.c: Remove a lot of pointless g_return_if_fail()
496         checks.  (#169859, Morten Welinder)
497
498 2005-03-10  Sven Neumann  <sven@gimp.org>
499
500         * tests/file-test.c: include <gstdio.h>.
501
502 2005-03-10  Sven Neumann  <sven@gimp.org>
503
504         * glib/gfileutils.c (get_contents_stdio): delay memory allocation
505         until after the first read. Saves a bunch of reallocs. Also
506         increased the buffer size to 4096 bytes. (bug #165954)
507
508         * tests/file-test.c (test_get_contents): added a (very basic) test
509         for g_file_get_contents().
510
511 Wed Mar  9 19:06:45 2005  Manish Singh  <yosh@gimp.org>
512
513         * glib/glib.symbols: Add g_file_replace.
514
515 2005-03-09  Matthias Clasen  <mclasen@redhat.com>
516
517         * configure.in: Bump version
518
519 2005-03-09  Sven Neumann  <sven@gimp.org>
520
521         * glib/gfileutils.c (g_file_replace): avoid unnecessary filename
522         conversions.
523
524 2005-03-09  Tor Lillqvist  <tml@novell.com>
525
526         * glib/gutils.c (g_get_user_data_dir, g_get_user_config_dir,
527         g_get_user_cache_dir, g_get_system_data_dirs,
528         g_get_system_config_dirs): [Win32] Don't leak return value from
529         get_special_folder(). (#169348, Daniel Atallah) Guard against
530         g_home_dir being NULL, use g_tmp_dir/g_user_name in that case.
531
532 Tue Mar  8 15:46:54 2005  Søren Sandmann  <sandmann@redhat.com>
533
534         * glib/gfileutils.c (g_file_replace): New API. A function to
535         atomically create a file.
536
537 2005-03-08  Matthias Clasen  <mclasen@redhat.com>
538
539         * glib/glib.symbols: Add the new attributes here too.
540
541         * glib/gmacros.h: Define G_GNUC_NULL_TERMINATED.
542         (#164706, Marc Meissner)
543
544         * glib/gstrfuncs.h: 
545         * glib/gfileutils.h: Use G_GNUC_NULL_TERMINATED where
546         appropriate.
547
548         * glib/goption.c (parse_int): Fix an error message.  
549         (#168751, Hazael Maldonado Torres)
550
551 2005-03-07  Matthias Clasen  <mclasen@redhat.com>
552
553         * glib/gdebug.h: Small cleanup (use G_BEGIN/END_DECLS).
554         (#168474, Fabricio Barros Cabral)
555
556 2005-03-07  Matthias Clasen  <mclasen@redhat.com>
557
558         * glib/gutils.c (g_find_program_in_path): Mark the last
559         paragraph of the docs as Windows-specific.  (#169433)
560
561 2005-03-06  Matthias Clasen  <mclasen@redhat.com>
562
563         * glib/gmarkup.c: Add G_GNUC_PRINTF attribute
564         to set_error.
565         (g_markup_parse_context_end_parse): Fix an
566         error message, noticed by Tim Janik.
567
568 2005-02-24  Tor Lillqvist  <tml@novell.com>
569
570         * glib/Makefile.am (BUILT_EXTRA_DIST): Don't distribute
571         glib.def. (#167496, J. Ali Harlow)
572
573         * glib/gfileutils.c (get_contents_win32): Use g_fopen(). (#168341,
574         Daniel Atallah)
575
576 2005-02-23  Matthias Clasen  <mclasen@redhat.com>
577
578         * configure.in: Don't forget to set G_THREAD_LIBS_FOR_GTHREAD 
579         on non-linux platforms.  (#168177, Michael Banck)
580
581         * tests/keyfile-test.c (test_locale_string): Set LANGUAGE 
582         instead of LC_ALL to shield against LANGUAGE being set in 
583         the environment.  (#168311, Suren A. Chilingaryan)
584
585 Tue Feb 22 22:03:38 2005  Manish Singh  <yosh@gimp.org>
586
587         * glib/gstdio.h: On G_OS_UNIX, simple #define g_open and co. as
588         aliases for their respective C library functions, instead of
589         using the function wrappers. This avoids library users having to
590         care about matching large file support with whatever glib has been
591         built with. Fixes bug #167942.
592
593         * glib/gstdio.c
594         * glib/abicheck.sh
595         * glib/glib.symbols
596         * glib/makegalias.pl: Logic to make the gstdio wrappers still
597         available for compatibility, but not used in new code.
598
599 Tue Feb 22 18:33:07 2005  Manish Singh  <yosh@gimp.org>
600
601         * glib/gtimer.c (g_usleep): Simplify the loop for the fix below.
602
603 2005-02-20  Matthias Clasen  <mclasen@redhat.com>
604
605         * glib/gqueue.c (g_queue_new): Use a memchunk for
606         sizeof(GQueue)-sized chunks.  (#167984, Fabrício Barros Cabral)
607
608         * glib/gtimer.c (g_usleep): Fix usage of 
609         nanosleep().  (#163039, Bastien Nocera)
610
611 2005-02-16  Adi Attar  <aattar@cvs.gnome.org>
612
613         * configure.in: Added "xh" to ALL_LINGUAS.
614
615 2005-02-11  Tor Lillqvist  <tml@novell.com>
616
617         * glib/giowin32.c: Include winsock2.h before windows.h, to avoid
618         compilation errors with MSVC. (#167105)
619
620 2005-02-10  Matthias Clasen  <mclasen@redhat.com>
621
622         * glib/goption.c (print_help): Take main group options into
623         account when calculating column size.  (#166921)
624         (g_option_context_parse): Accept -? as documented.  (#166977)
625
626 2005-02-09  Matthias Clasen  <mclasen@redhat.com>
627         * glib/gkeyfile.c (find_file_in_data_dirs): Don't leak path
628         here.  (#166801, Kjartan Maraas)
629
630 2005-02-08  Matthias Clasen  <mclasen@redhat.com>
631
632         * glib/gkeyfile.c (g_key_file_parse_value_as_string): Don't
633         write out of bounds.
634
635         * glib/goption.c (g_option_context_parse): Fix a 
636         one-too-short memory allocation.  (#166609, Nicolas Laurent)
637
638         * tests/Makefile.am (TESTS_ENVIRONMENT): Add tests with
639         MALLOC_CHECK_.
640
641         * tests/option-test.c: Add a test for unkown short options.
642
643 2005-02-07  Matthias Clasen  <mclasen@redhat.com>
644
645         * glib/glib.symbols: 
646         * glib/gutils.h: 
647         * glib/gutils.c (g_listenv): New function to list all 
648         environment variables.  (#166327, Hans Petter Jansson)
649
650 2005-02-07  Tor Lillqvist  <tml@novell.com>
651
652         * glib-zip.in: Add gmodule-no-export-2.0.pc.
653
654 Sun Feb  6 21:59:09 2005  Manish Singh  <yosh@gimp.org>
655
656         * glib/abicheck.sh: feed the contents of config.h and glibconfig.h
657         into the preprocessor, since glib.symbols could need #defines
658         from them.
659
660 Sun Feb  6 12:09:55 2005  Manish Singh  <yosh@gimp.org>
661
662         * glib/gatomic.c: Don't use matching constraints for asm mem
663         parameters. This makes the code match with current glibc, and
664         quiets some warnings with gcc 3.4.
665
666 2005-02-05  Tor Lillqvist  <tml@novell.com>
667
668         * configure.in (G_LIBS_EXTRA)
669         * glib/giowin32.c: I think we can include <winsock2.h> and link
670         with -lws2_32. Only Windows 95 originally didn't have Winsock 2,
671         and it's available as an update for it. Not that we use any actual
672         Winsock 2 -only features, but still, simpler to link directly with
673         ws2_32.dll instead of going through wsock32.dll.
674
675         * glib/gfileutils.c (g_file_get_contents): In the Win32 ABI
676         stability version, call g_file_get_contents_utf8(), not
677         itself. (#166386, Bill Skaggs)
678
679 2005-02-04  Matthias Clasen  <mclasen@redhat.com>
680
681         * configure.in: Remove the --enable-ansi option  (#160469)
682
683         * configure.in: Define a HAVE_GNUC_VISIBILITY automake
684         conditional.
685
686         * glib/Makefile.am (TESTS): Only check the abi if
687         the compiler supports visibility, otherwise we
688         know there will be (harmless) extra symbols.  
689         (#166181, Ed Avis)
690
691 2005-02-02  Tor Lillqvist  <tml@novell.com>
692
693         * glib/gwin32.h: Remove unnecessary MSVC-only typedef for
694         pid_t. (#165910) GLib does not pretend to be a POSIX emulation
695         library.
696
697         * glib/gstdio.c: In the Win32 part of all functions, handle
698         invalid UTF-8 more robustly. Don't pass the resulting NULL
699         wide-char or codepage strings on to C library functions, but bail
700         out early. (#166084)
701
702         * glib/gfileutils.c: Don't use potentially incorrect errno in
703         several places. (#165951)
704         (g_mkstemp): Set errno appropriately.
705
706 2005-02-02  Matthias Clasen  <mclasen@redhat.com>
707
708         * glib/gutils.c: Move doc comments inline.
709
710         * glib/ghash.h: Adjust some argument names.
711
712         * configure.in: Give meaningful names to g_memmove() 
713         arguments.
714
715 2005-02-01  Matthias Clasen  <mclasen@redhat.com>
716
717         * tests/keyfile-test.c (test_key_remove): Add test case for
718         key removal.
719
720         * glib/gkeyfile.c (g_key_file_remove_key): Actually remove 
721         the key from the list of pairs.  (#165980, David Hoover)
722
723         * glib/gkeyfile.c: Doc clarifications.  (#165907, Vincent Untz)
724
725         * tests/keyfile-test.c (test_group_remove): Add test case for
726         group removal.
727
728         * glib/gkeyfile.c (g_key_file_remove_group): Don't segfault
729         if the group doesn't exist.  (#165887, Mathias Hasselmann)
730
731 2005-01-30  Matthias Clasen  <mclasen@redhat.com>
732
733         * tests/keyfile-test.c: Some more unit tests.
734
735 2005-01-28  Christian Rose  <menthos@menthos.com>
736
737         * configure.in: Added "tl" to ALL_LINGUAS.
738
739 2005-01-24  Matthias Clasen  <mclasen@redhat.com>
740
741         * tests/run-markup-tests.sh: Let $srcdir default to .
742
743         * tests/markups/fail-40.gmarkup: Add a test with a long entity
744         name.
745
746         * glib/gmarkup.c (unescape_text_state_inside_entity_name): Don't
747         copy the entity name into a short buffer of fixed length. Instead,
748         compare it in place with strncmp(), and do a full strdup() in the
749         error path.  (#165100, Simon Budig)
750
751 2005-01-22  Tor Lillqvist  <tml@novell.com>
752
753         * glib/gdate.c (g_date_set_time): Don't g_assert that localtime()
754         returns non-NULL. It does return NULL at least on Win32 if you
755         pass it a negative time_t, which although wrong, shouldn't cause
756         an application to abort. Instead return 2000-01-01 as a default
757         date. Print a warning unless G_DISABLE_CHECKS. (#164622)
758
759 2005-01-20  Matthias Clasen  <mclasen@redhat.com>
760
761         * glib/gkeyfile.c (g_key_file_parse_value_as_integer): Don't
762         interpret leading zeros as octal. The specification requires
763         %f parsing, and %f doesn't allow octal.  
764
765         * tests/keyfile-test.c: Add some more tests.
766
767         * glib/gkeyfile.c (g_key_file_get_keys): Return keys in
768         the order found in the file, rather than the opposite.
769         (g_key_file_parse_value_as_string): Fix error reporting.
770
771 2005-01-19  Matthias Clasen  <mclasen@redhat.com>
772
773         * glib/gkeyfile.c (g_key_file_parse_data): Accept \r\n as 
774         line end.  (#163030, Bastian Nocera)
775         (g_key_file_load_from_data): Make -1 work as a size.
776         
777         * tests/keyfile-test.c: Some unit tests for the keyfile
778         parser.  
779
780         * tests/Makefile.am (test_programs): Add keyfile-test.
781
782 2005-01-19  Tor Lillqvist  <tml@novell.com>
783
784         * glib/gbacktrace.c (g_on_error_stack_trace): On Win32 call
785         G_BREAKPOINT() if being debugged.
786
787         * glib/gmessages.c (g_logv): For fatal messages on Win32, use
788         G_BREAKPOINT() also without G_ENABLE_DEBUG, but only if being
789         debugged. Suggestion by Ulf Lamping.
790
791 2005-01-18  Matthias Clasen  <mclasen@redhat.com>
792
793         * glib/gqsort.c: Don't include alloca.h. It is not needed,
794         and does not exist on win32.  (#164468, Kazuki IWAMOTO)
795
796         * glib/gkeyfile.c (g_key_file_get_boolean_list): Fix a
797         sparse warning.  (#164467, Kjartan Maraas)
798
799 2005-01-17  Matthias Clasen  <mclasen@redhat.com>
800
801         * glib/gconvert.c (g_get_filename_charsets): Don't crash
802         if G_FILENAME_ENCODING is empty.  (#164330, Pawel Sakowski)
803
804 2005-01-15  Tor Lillqvist  <tlillqvist@novell.com>
805
806         * configure.in: sh portability fix. Use "test" and not [.
807         (#163144, Robert Ögren)
808
809 2005-01-13  Matthias Clasen  <mclasen@redhat.com>
810
811         * glib/gqsort.c: Sync to glibc.  (#133994, Morten Welinder, 
812         patch by Kjartan Maraas)
813
814 2005-01-11  Owen Taylor <otaylor@redhat.com>
815
816         * configure.in: Add gmodule-export-2.0.pc to AC_CONFIG_FILES.
817
818         * glib/Makefile.am gobject/Makefile.am gthread/Makefile.am:
819         Use grep | head -n 1 instead of grep -m 1 which doesn't work
820         with slightly older versions of GNU grep in 
821         install-libtool-import-lib rule.
822
823 2005-01-11  Matthias Clasen  <mclasen@redhat.com>
824
825         * glib/gdir.c (g_dir_open): Typo fix.
826
827 2005-01-10  Owen Taylor  <otaylor@redhat.com>
828
829         * Makefile.am (EXTRA_DIST): Add missing ChangeLog.pre*
830
831 2005-01-09  Hans Breuer  <hans@breuer.org>
832
833         * glib/gfileutils.c : make it compile with mvc6 default sdk,
834         (#define INVALID_FILE_ATTRIBUTES, FILE_ATTRIBUTE_DEVICE)
835
836 2005-01-09  Tor Lillqvist  <tlillqvist@novell.com>
837
838         * glib/gwin32.c: Include also wchar.h for wcslen on
839         Cygwin.
840         (g_win32_error_message): Fix cast. (#163133, Roger Leigh)
841
842         * glib/gfileutils.c: Include <io.h> on Windows for
843         prototypes. (#163390, Kazuki Iwamoto)
844
845 2005-01-07  Matthias Clasen  <mclasen@redhat.com>
846
847         * NEWS: Typo fixes.
848
849         * configure.in: Bump version
850
851         * === Released 2.6.1 ===
852
853 2005-01-07  Matthias Clasen  <mclasen@redhat.com>
854
855         * configure.in: 
856         * Makefile.am: Generate and distribute gmodule-export-2.0.pc,
857         which is currently just a copy of gmodule-2.0.pc, but makes
858         it explicit that it adds --export-dynamic.
859         
860         * gmodule-export-2.0.pc.in: Copy of gmodule-2.0.pc.in.
861
862 2005-01-06  Tor Lillqvist  <tml@iki.fi>
863
864         * glib/Makefile.am
865         * gobject/Makefile.am: glib.def and gobject.def are generated, not
866         in $(srcdir). (#163143, J. Ali Harlow)
867
868         * configure.in
869         * glib/Makefile.am
870         * gobject/Makefile.am: Win32 cross-compilation fixes. (#163144,
871         J. Ali Harlow)
872
873 2005-01-05  Matthias Clasen  <mclasen@redhat.com>
874
875         * glib/gutils.h: Simplify the inlining magic to make it
876         work at Oh zero.  (#162990, Kalpesh Shah) 
877
878 2005-01-04  Tor Lillqvist  <tml@iki.fi>
879
880         * glib/guniprop.c (get_locale_type): Use g_win32_getlocale()
881         instead of setlocale() on Windows. setlocale() returns strings
882         like "Turkish_Turkey".
883
884 2005-01-04  Matthias Clasen  <mclasen@redhat.com>
885
886         Fix the inlining magic.  (#157536, Jens Hatlak, and
887         #149907, Morten Welinder)
888         
889         * configure.in: Define G_CAN_INLINE in glibconfig.h
890
891         * glib/gutils.h: Streamline the inlining magic a bit,
892         don't use extern when implementing the non-inlined 
893         version.
894
895 2005-01-03  Matthias Clasen  <mclasen@redhat.com>
896
897         * glib/gutils.c (g_find_program_in_path): Don't return
898         directories.  (#160738, Tommi Komulainen)
899
900         * glib/gfileutils.c (g_file_get_contents): Clarify the 
901         documentation.  (#162251, Mariano Suárez-Alvarez)
902
903 2005-01-02  Matthias Clasen  <mclasen@redhat.com>
904
905         * glib/gutils.c (g_setenv, g_unsetenv): Clarify the 
906         docs.  (#162747, Crispin Flowerday)
907
908 2005-01-01  J. Ali Harlow  <ali@juiblex.co.uk>
909
910         * configure.in: Don't use AC_TRY_RUN to test for long long format
911         when using the MSVCRT.DLL runtime since we know the answer anyway
912         and it causes some mild inconvience when cross compiling.
913
914         * README.win32: Add a reference to the cross compiling section
915         of the reference manual.
916
917         * docs/reference/glib/cross.sgml: MinGW uses MSVCRT.DLL which
918         requires %I64i instead of %lli. (#161306)
919
920 2005-01-01  Tor Lillqvist  <tml@iki.fi>
921
922         * glib/gutils.c: Make the g_getenv() ABI backward compatibility
923         wrapper more robust.
924
925 2005-01-01  Tor Lillqvist  <tml@iki.fi>
926
927         * glib/glib.symbols
928         * glib/gutils.h
929         * glib/gutils.c: Make also g_getenv(), g_setenv(), g_unsetenv()
930         and g_find_program_in_path() take and return UTF-8 strings on
931         Win32. Implement DLL ABI backward compatility for them, too. Move
932         all the DLL ABI stability wrappers to the end of the file. Use
933         wide character API when available in inner_find_program_in_path().
934
935         * glib/gfileutils.c: With the UTF-8ness of g_getenv() above, just
936         use g_getenv() to get PATHEXT. (Yeah, it's probably overdoing it
937         to consider somebody actually having anything else than ASCII
938         in PATHEXT, but...)
939
940 2004-12-31  Tor Lillqvist  <tml@iki.fi>
941
942         * glib/gfileutils.c (g_file_test): Rewrite the Win32 version to
943         use GetFileAttributes() instead of stat(). stat() is unreliable
944         for corner cases like '\\server\share' or '.\'. Part of fixing
945         #161797. When testing for executability, in addition to the fixed
946         set of executable file name extensions also check the PATHEXT
947         environment variable.
948
949 2004-12-30  Tor Lillqvist  <tml@iki.fi>
950
951         * glib/gutils.c (g_get_current_dir): In the Win32 version, use
952         GetCurrentDirectory() directly for simpler buffer length
953         management. I don't trust getcwd() getting it right all the time.
954
955 2004-12-30  Matthias Clasen  <mclasen@redhat.com>
956
957         * glib/gfileutils.c (g_file_test): Typo fix.
958
959 2004-12-30  Tor Lillqvist  <tml@iki.fi>
960
961         * glib/gutils.c (g_path_skip_root): Require UNC paths to start
962         with exactly two slashes.
963         (g_get_current_dir): Use wide character API when available.
964         (g_path_get_dirname): Handle UNC paths better. Part of fix for
965         #161797.
966
967 2004-12-27  Matthias Clasen  <mclasen@redhat.com>
968
969         * configure.in: Add an OS_LINUX conditional.
970
971         * glib/Makefile.am (TESTS): Only check the ABI on 
972         linux, since the shell script is not portable, and libtool
973         deficiencies may distort the ABI on other platforms.  (#161741)
974
975 2004-12-21  Matthias Clasen  <mclasen@redhat.com>
976
977         * glib/goption.c (print_entry): Don't show
978         the special G_OPTION_REMAINING entry.  (#161934,
979         Matthew F. Barnes)
980
981 2004-12-20  Tor Lillqvist  <tml@iki.fi>
982
983         * glib/gconvert.c (g_locale_to_utf8, g_filename_to_uri): Improve
984         docs.
985
986 2004-12-20  Matthias Clasen  <mclasen@redhat.com>
987
988         * tests/option-test.c: Add some tests for '--' 
989         stripping.
990
991         * glib/goption.c (g_option_context_parse): Don't
992         strip '--' if it would be needed by a second option
993         parser.  (#161701)
994
995         * glib/gunicollate.c (g_utf8_collate): Make docs 
996         more accurate.  (#161683, Marcin Krzyzanowski)
997
998 2004-12-19  Matthias Clasen  <mclasen@redhat.com>
999
1000         * glib/goption.c (g_option_context_parse): Call
1001         post-parse hooks also if argv is NULL.  (#161668,
1002         Marcin Krzyzanowski)
1003