Add a missing "Since: 2.6" comment.
[platform/upstream/glib.git] / ChangeLog.pre-2-6
1 2004-10-28  Matthias Clasen  <mclasen@redhat.com>
2
3         * glib/gkeyfile.c: Add a missing "Since: 2.6" comment.
4
5 2004-10-28  Tor Lillqvist  <tml@iki.fi>
6
7         * glib/gstdio.c: Include glib.h early to get G_OS_WIN32. Include
8         errno.h for errno.
9
10         * glib/gkeyfile.c: Include gstdio.h and use g_open().
11
12 2004-10-27  Ray Strode  <rstrode@redhat.com>
13
14         * glib/gkeyfile.c:
15          (g_key_file_load_from_fd), 
16          (g_key_file_load_from_file): 
17          Move file is regular check to load_from_file to use
18          fstat() instead of race prone g_file_test().  Don't
19          clear/init until needed. Change error messages to be
20          more consistent.
21          (g_key_file_load_from_data),
22          (g_key_file_load_from_data_dirs),
23          (g_key_file_parse_data),
24          (g_key_file_get_value),
25          (g_key_file_get_string),
26          (g_key_file_set_string),
27          (g_key_file_get_string_list),
28          (g_key_file_set_string_list),
29          (g_key_file_set_locale_string),
30          (g_key_file_get_locale_string),
31          (g_key_file_set_locale_string_list),
32          (g_key_file_get_boolean),
33          (g_key_file_set_boolean),
34          (g_key_file_get_boolean_list),
35          (g_key_file_set_boolean_list),
36          (g_key_file_get_integer),
37          (g_key_file_get_integer_list),
38          (g_key_file_set_integer_list),
39          (g_key_file_remove_key):
40          Add more g_return_*if_fail checks for public functions.
41
42 2004-10-27  Matthias Clasen  <mclasen@redhat.com>
43
44         * configure.in: Bump version.
45
46         * === Released 2.5.4 ===
47
48 2004-10-27  Matthias Clasen  <mclasen@redhat.com>
49
50         * glib/abicheck.sh: Strip Win32 specific defs file syntax.
51
52         * NEWS: Updates. 
53
54 2004-10-27  Matthias Clasen  <mclasen@redhat.com>
55
56         Introduce the idea of a filename encoding, which is 
57         *literally* the filename encoding on Unix. On windows, 
58         use the Unicode name converted to UTF-8. (#101792,
59         Tor Lillqvist, Owen Taylor)
60         
61         * glib/gdir.[hc]: 
62         * glib/gconvert.[hc]: 
63         * glib/gfileutils.[hc]: 
64         * glib/gutils.[hc]: 
65         * glib/giowin32.c: On Windows, keep old ABI versions 
66         of GLib pathname api for DLL ABI stability. Use different 
67         names for the new-style UTF-8 versions. Hide this through 
68         a #define.
69
70         * glib/gstdio.[hc]: New files containing wrappers for
71         POSIX pathname api.
72
73         * glib/glib.symbols: Add new symbols.
74
75         * glib/makegalias.pl: Drop Win32 specific .def syntax,
76         include gstdio.h
77
78 2004-10-27  Matthias Clasen  <mclasen@redhat.com>
79
80         * glib/gkeyfile.c: Fix includes. (#156500, #156499, 
81         Kazuki IWAMOTO)
82
83         * glib/Makefile.am (galias.h): Fix srcdir != builddir 
84         builds.  (#156447, Thomas Fitzsimmons)
85
86 2004-10-26  Gora Mohanty  <gmohanty@cvs.gnome.org>
87
88         * configure.in: Added 'or' to ALL_LINGUAS.
89
90 2004-10-26  Matthias Clasen  <mclasen@redhat.com>
91
92         * glib/gkeyfile.c: Include galias.h.
93         
94         * glib/gkeyfile.c (g_key_file_parse_value_as_comment): 
95         Don't compare strings and chars.
96
97         * glib/glib.symbols: Add new symbols.
98
99         * glib/gkeyfile.c (g_key_file_new): Fix docs.
100
101         * glib/gkeyfile.h: Use the same parameter names as in
102         the implementation and the docs.
103
104         * glib/gwin32.c (g_win32_get_windows_version): Make this
105         function thread-safe in the GLib style.
106         * glib/gthreadinit.h: 
107         * glib/gwin32.c (_g_win32_thread_init): New function to
108         initialize the version.
109         * glib/gthread.c (g_thread_init_glib): Call 
110         _g_win32_thread_init() from here.
111
112 2004-10-26  Ray Strode  <rstrode@redhat.com>
113
114         * glib/gkeyfile.c: Add Matthias to "Written by" lines
115          (GKeyFileGroup): add field to hold comments about groups
116          (g_key_file_load_from_fd): return TRUE on success and
117          FALSE on failure.  Don't close fd's opened by other
118          parent function.  
119          (g_key_file_load_from_file): run FILE_IS_REGULAR test
120          before trying to open file, to save an fd from being
121          leaked (would probably be better to use fstat()). Close
122          fd when done with it. Return TRUE on success and FALSE
123          on failure.
124          (g_key_file_load_from_data): Return TRUE on success and
125          FALSE on failure.
126          (g_key_file_load_from_data_dirs): remove superfluous
127          const modifier.  Return TRUE on success and FALSE on
128          failure.  Stop trying to load files when one succeeds.
129          (g_key_file_parse_key_value_pair): don't validate input
130          for UTF-8 until users uses a getter that does
131          validation.  Don't leak copy of start_group_name.
132          (g_key_file_to_data): serialize new comment field for
133          groups.
134          (g_key_file_get_keys): Remove convenience code to let
135          NULL group mean start group.  Get rid of unneeded NULL
136          check before g_strdup.
137          (g_key_file_get_groups): Reverse groups list before
138          sending to user because it is maintained in backward
139          order internally. 
140          (g_key_file_get_value),
141          (g_key_file_set_value): add g_return checks at top of
142          public functions.
143          (g_key_file_get_string), 
144          (g_key_file_get_string_list): validate key value is UTF-8.
145          (g_key_file_[sg]et_*comment): new functions for
146          setting/getting comments
147          (g_key_file_remove_comment): new function to remove
148          comment block
149          (g_key_file_remove_key_value_pair_node): new function to
150          pull a key-value pair out of the list and free it.
151          (g_key_file_remove_group_node): call
152          g_key_file_remove_key_value_pair_node instead of 
153          freeing the list immediately to get better statistics
154          for approximate_size.
155          (g_key_file_remove_group): use lookup_group_node instead
156          of lookup_group to prevent a g_list_find call.
157          (g_key_file_add_key): report group also when unable to
158          find key.
159          (g_key_file_lookup_group_node): new function to make
160          getting the group node from a group name easier.
161          (g_key_file_lookup_group): use lookup_group_node under
162          the hood.
163          (g_key_file_lookup_key_value_pair_node): new function to
164          make getting the key-value pair from a group and key
165          name eaiser.
166          (g_key_file_parse_comment_as_value): new function to add '#' to the
167          beginning of every line.
168          (g_key_file_parse_value_as_comment): new function that
169          attempts to be the inverse of comment as value.
170
171 2004-10-26  Matthias Clasen  <mclasen@redhat.com>
172
173         * glib/gutils.c: 
174         * glib/gkeyfile.c: Don't include ctype.h needlessly.  (#156424,
175         Morten Welinder)
176
177         * tests/strtod-test.c (test_string): Improve error reporting.
178
179 Mon Oct 25 15:05:18 2004  Manish Singh  <yosh@gimp.org>
180
181         * autogen.sh: rm autom4te.cache, since it might interfere with
182         differing autoconf versions.
183
184         * tests/child-test.c: use GINT_TO_POINTER for g_child_watch_add
185         user data.
186
187         * glib/gfileutils.c: G_IS_DIR_SEPARATOR is defined in gutils.h now,
188         don't redefine it here.
189
190 2004-10-24  Matthias Clasen  <mclasen@redhat.com>
191
192         * glib/gkeyfile.c (g_key_file_remove_group_node): Don't
193         destroy the lookup map if it is NULL.
194
195 2004-10-23  Matthias Clasen  <mclasen@redhat.com>
196
197         * glib/gasyncqueue.c, glib/gatomic.c, glib/gdate.c, 
198         glib/giochannel.c, glib/gmain.c, glib/gspawn.c, 
199         glib/libcharset/localcharset.c: Apply a patch to fix
200         sparse warnings. (#154696, Kjartan Maraas)
201
202         * glib/gnulib/g-gnulib.h: Undef libc functions before defining
203         them, since they may also be macros.  (#155177, Andrea Campi)
204
205         * glib/gkeyfile.h: 
206         * glib/gkeyfile.c: Add a parser for desktop entries and
207         similar files with a .ini-like syntax.  (#139974, Ray Strode)
208
209         * glib/glib.h: Include gkeyfile.h
210
211         * glib/Makefile.am (libglib_2_0_la_SOURCES): Add gkeyfile.c
212         (glibsubinclude_HEADERS): Add gkeyfile.h
213
214         * glib/gutils.c (_g_compute_locale_variants): Make this 
215         non-static and use it in gkeyfile.c
216
217 2004-10-22  Matthias Clasen  <mclasen@redhat.com>
218
219         * tests/uri-test.c (run_uri_list_tests): Add some
220         uri list tests.c.
221
222         * glib/gconvert.h:
223         * glib/gconvert.c (g_uri_list_extract_uris): New function to
224         split a text/uri-list data into individual uris and strip comments.
225
226 2004-10-20  Matthias Clasen  <mclasen@redhat.com>
227
228         * glib/goption.c (get_change): Don't return the wrong 
229         change.  (#155856, Lucas Rocha)
230
231 2004-10-17  Matthias Clasen  <mclasen@redhat.com>
232
233         * glib/gutils.h (G_IS_DIR_SEPARATOR): 
234         * glib/gutils.c: Make public.  (#155589, Tim-Philipp MĆ¼ller) 
235
236 2004-10-08  Matthias Clasen  <mclasen@redhat.com>
237
238         * glib/gmain.c (g_child_watch_add_full): 
239         * glib/gmain.c (g_child_watch_add): Document that GLib supports only
240         a single callback per pid. (#154828, Gustavo Carneiro)
241
242 2004-10-06  Matthias Clasen  <mclasen@redhat.com>
243
244         * glib/gfileutils.c: Fix some C99isms.  (#154676, Kjartan Maraas)
245
246 2004-10-05  Anders Carlsson  <andersca@gnome.org>
247
248         * glib/goption.c: (g_option_context_parse):
249         Add check for if argc is 0.
250         
251         * tests/option-test.c: (empty_test3), (main):
252         Add test case.
253         
254 2004-10-05  Matthias Clasen  <mclasen@redhat.com>
255
256         * NEWS: Update
257
258 2004-10-04  Matthias Clasen  <mclasen@redhat.com>
259
260         * glib/gmem.c (g_mem_set_vtable): Only set vtable_set if the
261         vtable is set.  (#154352, Philippe Blain)
262
263 2004-10-03  Anders Carlsson  <andersca@gnome.org>
264
265         * glib/goption.c: (parse_arg):
266         Set arg_data on filenames. (Discovered by Mats-Ola Persson).
267         
268         * tests/option-test.c: (arg_test3), (ignore_test3), (main):
269         Add test for filename args.
270         
271 2004-10-01  Tor Lillqvist  <tml@iki.fi>
272
273         * glib/goption.c (g_option_context_parse): Use
274         g_path_get_basename() instead of strrchr(), so that either slash
275         is accepted on Windows.
276
277 2004-09-30  Matthias Clasen  <mclasen@redhat.com>
278
279         * glib/gfileutils.c: Convert filenames to UTF-8 before 
280         putting them in GErrors.  (#154078, Morten Welinder)
281
282 2004-09-29  Matthias Clasen  <mclasen@redhat.com>
283
284         * glib/glib.symbols: Add g_assert_warning.
285
286         * glib/gmessages.h:
287         * glib/gmessages.c (g_assert_warning): Treat g_assert 
288         in the same way as g_return_if_fail and move the string 
289         constants into a helper function, which also takes 
290         care of removing the "IA__" prefix from internal aliases.
291
292         * glib/gmessages.h: Move the declaration of 
293         g_return_if_fail_warning() out of the ifdefs, so that
294         building with G_DISABLE_ASSERT works.
295
296 2004-09-27  Murray Cumming  <murrayc@murrayc.com>
297
298         * glib/goptions.[h|c], glib/glib.symbols: Rename 
299         g_context_option_error_quark() to g_option_error_quark(), because that 
300         is consistent with normal naming conventions, and what bindings expect.
301
302 .2004-09-26  Matthias Clasen  <mclasen@redhat.com>
303
304         Fix #153649, Hidetaka Iwai:
305         
306         * glib/goption.c (parse_long_option): Don't forget to set parsed
307         to TRUE when parsing a long ARG_NONE option. 
308         (free_changes_list): Fix the memory management for string
309         and filename arrays.
310
311 2004-09-22  Tor Lillqvist  <tml@iki.fi>
312
313         * glib/gmessages.c: [Win32] Don't ever open a console
314         window. (Which we used to do if standard output or standard error
315         are invalid, as they are for GUI applications.) These console
316         windows that open up unexpectedly have caused endless amounts of
317         confusion among end-users. (#141102, #151175)
318
319         Don't output the process id on Windows. Only output the program
320         name. If not set with g_set_prgname(), fetch the application
321         executable's name and use that.
322
323 Mon Sep 20 00:35:14 2004  Matthias Clasen  <maclas@gmx.de>
324
325         * glib/gutf8.c (g_utf16_to_utf8): Add a note explaining how to
326         convert UTF-16 byte stream of ambiguous endianness.  (#152954,
327         Linus Walleij)
328
329 Mon Sep 20 00:17:37 2004  Matthias Clasen  <maclas@gmx.de>
330
331         * tests/option-test.c (error_test3_post_parse): 
332         * tests/option-test.c (error_test2_post_parse): 
333         * tests/option-test.c (error_test1_post_parse): Don't call 
334         g_set_error () with a NULL format.  (#153103, Robert Ć–gren) 
335
336 Mon Sep 20 00:13:48 2004  Matthias Clasen  <maclas@gmx.de>
337
338         Make GOption remove long options completely. (#153113, Robert Ć–gren)
339
340         * glib/goption.c (parse_long_option): Fix a wrong index.
341
342         * tests/option-test.c (ignore_test3): Test handling of unknown
343         options some more.
344
345 Sun Sep 19 23:56:15 2004  Matthias Clasen  <maclas@gmx.de>
346
347         * glib/goption.c (g_option_context_parse): Call error_func
348         on error, not post_parse_func again.  (#153107, Robert Ć–gren)
349
350 Sun Sep 19 23:52:35 2004  Matthias Clasen  <maclas@gmx.de>
351
352         * glib/gmessages.c (mklevel_prefix): 
353         * glib/gmessages.c (g_logv): Fix the types of some variables
354         to be GLogLevelFlags instead of guint.  (#153042, Philippe Blain)
355
356 2004-09-18  Matthias Clasen  <mclasen@redhat.com>
357
358         * Version bump
359
360         * === Released 2.5.3 ===
361
362 2004-09-17  Matthias Clasen  <mclasen@redhat.com>
363
364         * NEWS: More updates.
365
366 Thu Sep 16 18:42:46 2004  Manish Singh  <yosh@gimp.org>
367
368         * glib/abicheck.sh: don't hardcode lengths for cut, instead split on
369         the third field.
370
371 Thu Sep 16 18:15:32 2004  Manish Singh  <yosh@gimp.org>
372
373         * glib/gstrfuncs.c (g_strncasecmp): Make it take a guint for number
374         of characters, instead of a gsize. Technically this is incorrect,
375         but this makes it match the prototype, and this is a deprecated
376         function anyway.
377
378 2004-09-16  Matthias Clasen  <mclasen@redhat.com>
379
380         * glib/Makefile.am (EXTRA_DIST): Add abicheck.sh
381
382 Thu Sep 16 02:03:15 2004  Matthias Clasen  <maclas@gmx.de>
383
384         Implement the same PLT reduction technique used in GTK+:
385         
386         * glib/glib.symbols: Master list of symbols
387
388         * glib/makegalias.pl: Perl script which creates galias.h
389
390         * glib/abicheck.sh: Compares actual exports against glib.symbols 
391
392         * glib/glib.def: Removed. This file is now generated from
393         glib.symbols
394         
395         * glib/Makefile.am: Add rules to generate galias.h and glib.def,
396         and add abicheck.sh to TESTS. Don't export _-prefixed symbols.
397         
398         * configure.in: Add --disable-visibility to suppress the 
399         use of ELF visibility attributes.
400
401         * glib/*.c: Include galias.h
402
403 2004-09-15  Tor Lillqvist  <tml@iki.fi>
404
405         * glib/gwin32.c (g_win32_error_message): Convert message to
406         UTF-8. Technically this breaks API, but the actual use cases in
407         gdk/win32 have assumed it is UTF-8 anyway. Fix
408         documentation. (#152618, Kazuki Iwamoto)
409
410         * glib/gwin32.h: Don't define ftruncate as a macro. Was never a
411         good idea, and it clashes with newest mingw headers, which have a
412         ftruncate implementation as an inline function. Thanks to Dominik R.
413
414         * glib/gwin32.c (g_win32_ftruncate): Simplify implementation, just
415         call _chsize() in the C library.
416
417 2004-09-15  Matthias Clasen  <mclasen@redhat.com>
418
419         * NEWS: Update.
420
421 2004-09-09  Matthias Clasen  <mclasen@redhat.com>
422
423         * glib/gmessages.c (g_return_if_fail_warning): Strip the
424         prefix "IA__" from function names, since that is what
425         GTK+ uses for the PLT-reduction aliases. 
426
427 Thu Sep  9 13:52:26 2004  Owen Taylor  <otaylor@redhat.com>
428
429         * glib/gmessages.c (g_return_if_fail_warning): 
430         Include implementation of g_return_if_fail_internal().
431
432 Thu Sep  9 10:37:41 2004  Owen Taylor  <otaylor@redhat.com>
433
434         * glib/gmessages.h (g_return_[val_]if_fail): Use
435         a helper function to reduce code size; omit FILE/LINE
436         when we have __PRETTY_FUNCTION__.
437
438 2004-09-09  Matthias Clasen  <mclasen@redhat.com>
439
440         * glib/gutils.c (g_get_home_dir): Remove a misleading comment.
441
442 Thu Sep  9 00:10:40 2004  Matthias Clasen  <maclas@gmx.de>
443
444         * glib/gstrfuncs.h: 
445         * glib/gstrfuncs.c (g_strv_length): Add a function to 
446         calculate the length of a NULL-terminated string 
447         array.  (#150455, Tim-Philipp MĆ¼ller)
448
449         * tests/strfunc-test.c (main): Add a test for g_strv_length().
450
451 2004-09-08  Tor Lillqvist  <tml@iki.fi>
452
453         * glib/gutils.c (guess_category_value): On Win32, as last resort
454         call g_win32_getlocale() to get the current thread locale. There
455         usually aren't any POSIXish LANG or LC_* environment variables
456         present on Windows machines.
457
458         * glib/glib.def: Add g_get_language_names.
459
460 2004-09-07  Matthias Clasen  <mclasen@redhat.com>
461
462         * glib/gutils.h: 
463         * glib/gutils.c (g_get_language_names): Add a function to
464         return a list of applicable locale names.  (#95587, 
465         Hidetoshi Tajima)
466         (guess_category_value, compute_locale_variants):
467         (explode_locale, unalias_lang, read_aliases): Helper 
468         functions for g_get_language_names()
469
470         * tests/testglib.c (main): Show the results of 
471         g_get_language_names()
472
473 Sun Sep  5 01:46:11 2004  Matthias Clasen  <maclas@gmx.de>
474
475         * glib/glib.def: 
476         * glib/gmessages.h: 
477         * glib/gmessages.c (g_log_set_default_handler): New
478         function to install an alternate default log 
479         handler.  (#66387, Darin Adler)
480
481 2004-09-03  Tor Lillqvist  <tml@iki.fi>
482
483         * glib/glib.def: Update.
484
485 Wed Sep  1 20:22:39 2004  Matthias Clasen  <maclas@gmx.de>
486
487         * glib/gdate.h:
488         * glib/gdate.c (g_date_get_iso8601_week_of_year): Add
489         a function to calculate the ISO 8601 week number of 
490         a date.  (#92579, Niklas Lundell)
491
492 2004-09-01  Anders Carlsson  <andersca@gnome.org>
493
494         * glib/goption.c: (g_option_context_parse):
495         Set program name before calling the pre-parse hooks.
496         
497 2004-09-01  Anders Carlsson  <andersca@gnome.org>
498
499         * glib/goption.c: (g_option_context_free), (print_help),
500         (g_option_context_parse):
501         Handle option contexts without a main group.
502         
503         * tests/option-test.c: (empty_test2), (main):
504         Add test case for that.
505         
506 2004-08-30  Anders Carlsson  <andersca@gnome.org>
507
508         * glib/goption.c: (g_option_context_parse):
509         Set prgname to <unknown> if argc and argv are NULL.
510         
511         * tests/option-test.c: (empty_test1), (main):
512         Add test case for that.
513         
514 Sun Aug 29 23:58:38 2004  Matthias Clasen  <maclas@gmx.de>
515
516         * glib/ghash.c (g_hash_table_lookup): Point to 
517         g_hash_table_lookup_extended() for differentiation between
518         not-found and value-is-NULL.  (#150960, Morten Welinder)
519
520 2004-08-27  Matthias Clasen  <mclasen@redhat.com>
521
522         Fix #151193, Stepan Kasal:
523         
524         * glib/gfileutils.c (g_file_error_from_errno): 
525         * glib/gfileutils.h (enum GFileError): Add G_FILE_ERROR_NOSYS.
526
527 Fri Aug 27 00:45:41 2004  Matthias Clasen  <maclas@gmx.de>
528
529         * glib/goption.c (g_option_context_parse): Set the program name
530         from argv[0], noticed by Masatake YAMATO.
531
532 2004-08-26  Tor Lillqvist  <tml@iki.fi>
533
534         * tests/testglib.c (main): Test the new XDG basedir functions.
535
536 2004-08-25  Tor Lillqvist  <tml@iki.fi>
537
538         * glib/gwin32.c (g_win32_get_windows_version): New
539         function. Returns the Windows version code like GetVersion(),
540         except that one can pretend to be running on Win9x by setting the
541         G_WIN32_PRETEND_WIN9X environment variable. This is mainly for
542         debugging purposed.
543
544         * glib/gwin32.h: Declare it. Define macros G_WIN32_WINDOWS_IS_NT_BASED 
545         and G_WIN32_HAVE_WIDECHAR_API to test Windows features at run-time.
546
547 2004-08-25  Matthias Clasen  <mclasen@redhat.com>
548
549         * configure.in: Post-release version bump.
550
551         * === Released 2.5.2 ===
552
553 Wed Aug 25 00:25:08 2004  Matthias Clasen  <maclas@gmx.de>
554
555         * NEWS: Update for 2.5.2
556
557 2004-08-25  Tor Lillqvist  <tml@iki.fi>
558
559         Win32 equivalences of the XDG folders
560         
561         * glib/gutils.c (get_special_folder): New function, calls
562         SHGetSpecialFolderLocation() to get path to places like the My
563         Documents folder.
564         (g_get_any_init): Use CSIDL_PROFILE as HOME if not
565         overridden by env vars.
566         (g_get_user_data_dir): Use CSIDL_PERSONAL.
567         (g_get_user_config_dir): Use CSIDL_APPDATA.
568         (g_get_user_cache_dir): Use CSIDL_INTERNET_CACHE. Debatable...
569         (g_get_system_data_dirs): Use CSIDL_COMMON_APPDATA and
570         CSIDL_COMMON_DOCUMENTS.
571         (g_get_system_config_dirs): Use CSIDL_COMMON_APPDATA.
572
573         * configure.in: Add -lole32 to G_LIBS_EXTRA for mingw.
574
575         * glib/glib.def: Add the new functions.
576
577 Mon Aug 23 16:16:35 2004  Manish Singh  <yosh@gimp.org>
578
579         * glib/goption.c (g_option_group_add_entries): remove unused
580         variable.
581
582 Mon Aug 23 01:35:18 2004  Matthias Clasen  <maclas@gmx.de>
583
584         * glib/gutils.c (g_get_user_cache_dir): 
585         * glib/gutils.c (g_get_user_config_dir): 
586         * glib/gutils.c (g_get_user_data_dir): Don't call g_get_home_dir()
587         while holding the g_utils_global lock, simply use g_home_dir. 
588         (#150695, Jody Goldberg)
589
590 2004-08-21  Tor Lillqvist  <tml@iki.fi>
591
592         * glib/giowin32.c (g_io_win32_finalize): Tell select_thread to
593         break out of its loop. Prevents a thread leak. (#147392, Peter
594         Zelezny)
595
596         * glib/gunicollate.c (g_utf8_collate_key): Guard against bogus
597         return value from strxfrm(). For instance Microsoft's strxfrm()
598         returns INT_MAX on errors. (#141124)
599
600 2004-08-19  Tor Lillqvist  <tml@iki.fi>
601
602         * glib/gunicollate.c (g_utf8_collate, g_utf8_collate_key): Correct
603         source and destination charset parameter order in g_convert()
604         call. (#150394, possibly also #141124)
605
606 2004-08-20  Jon K Hellan  <hellan@acm.org>
607
608         * glib/goption.h: Remove trailing commas.
609
610 2004-08-17  Matthias Clasen  <mclasen@redhat.com>
611
612         * configure.in: Check for all four values of the
613         visibility attribute; gcc 2.96 seems to miss 
614         "default".  (#150379, Vincent Noel)
615
616 2004-08-16  Christian Rose  <menthos@menthos.com>
617
618         * configure.in: Added "bs" to ALL_LINGUAS.
619
620 2004-08-11  Ray Strode  <rstrode@redhat.com>
621
622         * docs/reference/glib/glib-sections.txt: 
623         * glib/gutils.[ch] (g_get_user_data_dir),
624         (g_get_user_config_dir), (g_get_user_cache_dir),
625         (g_get_system_data_dirs), (g_get_system_config_dirs): 
626         Add new XDG basedir API (bug 139973).
627
628 2004-08-10  Matthias Clasen  <mclasen@redhat.com>
629
630         * glib/gmacros.h: Remove G_GNUC_INTERNAL from here.
631         * configure.in: Check whether the visibility attribute
632         works and define G_HAVE_GNUC_VISIBILITY and 
633         G_GNUC_INTERNAL in glibconfig.h correspondingly.
634
635 Mon Aug  9 17:37:56 2004  Matthias Clasen  <maclas@gmx.de>
636
637         * glib/gmacros.h (G_GNUC_INTERNAL): Define empty if gcc is too old.
638
639 2004-08-06  Hans Breuer  <hans@breuer.org>
640
641         * glib/makefile.msc.in glib/glib.def : updated
642
643         * glib/gutils.c : avoid 'inconsitent dll linkage' by not
644         defining extern char** environ with msvc
645
646 2004-08-06  Matthias Clasen  <mclasen@redhat.com>
647
648         * m4macros/glib-gettext.m4: Require ngettext.  (#123847,
649         Danilo Segan)
650
651 Thu Aug  5 20:53:00 2004  Ray Strode  <rstrode@redhat.com>
652
653         * glib/gutils.h (g_get_codeset): strdup result so caller
654         doesn't free internally managed memory.
655
656 2004-08-04  Tor Lillqvist  <tml@iki.fi>
657
658         * glib/glib.def: Add glib_check_version.
659
660         * config.h.win32.in: Update to match what configure produces. Add
661         the G_ATOMIC_*. Define G_ATOMIC_I486 when compiling with gcc. Move
662         HAVE_INT64_AND_I64 to where the configure script puts it. Add
663         HAVE_INTTYPES_H_WITH_UINTMAX. Define intmax_t as __int64 for MSVC.
664
665 Tue Aug  3 16:19:44 2004  Matthias Clasen  <maclas@gmx.de>
666
667         * glib/goption.c: Mark user visible strings for translation.
668
669 Tue Aug  3 15:50:55 2004  Matthias Clasen  <maclas@gmx.de>
670
671         * glib/goption.[hc]: Pedantically use g types throughout.
672
673 Tue Aug  3 14:58:20 2004  Matthias Clasen  <maclas@gmx.de>
674
675         * glib/gutils.h: 
676         * glib/gutils.c (glib_check_version): New function to
677         check the version of GLib at runtime.  (#149175, Michael Natterer)
678
679 2004-08-03  Anders Carlsson  <andersca@gnome.org>
680
681         * glib/goption.h:
682         * glib/gtypes.h:
683         Move GTranslateFunc to gtypes.h
684         
685 2004-08-02  Anders Carlsson  <andersca@gnome.org>
686
687         * glib/Makefile.am:
688         * glib/glib.h:
689         * glib/goption.c:
690         * glib/goption.h:
691         * tests/.cvsignore:
692         * tests/Makefile.am:
693         * tests/option-test.c: 
694         Add GOption.
695
696 2004-08-02  Matthias Clasen  <mclasen@redhat.com>
697
698         * glib/gmacros.h: Add a G_GNUC_INTERNAL macro to mark function
699         declarations as internal and avoid PLT indirections for 
700         them.  (#145465, Arjan van de Ven)
701
702         * glib/gunicodeprivate.h: 
703         * glib/gthreadinit.h: 
704         * glib/gmessages.h: 
705         * glib/gdebug.h: 
706         * glib/gconvert.c: Use G_GNUC_INTERNAL for _g_charset_get_aliases(),
707         _g_debug_init(), _g_log_fallback_handler(), _g_mem_thread_init(),
708         _g_messages_thread_init(), _g_convert_thread_init(), 
709         _g_rand_thread_init(), _g_main_thread_init(), _g_atomic_thread_init(),
710         _g_mem_thread_private_init(), _g_messages_thread_private_init(),
711         _g_utf8_normalize_wc() and _g_unichar_combining_class().
712
713         * glib/gatomic.c: Include gthreadinit.h here to see the declaration
714         for _g_atomic_thread_init().
715
716 Sun Aug  1 13:19:18 2004  Manish Singh  <yosh@gimp.org>
717
718         * tests/uri-test.c: move newline printing from run_from_uri_tests()
719         to run_roundtrip_tests().
720
721 2004-08-01 Matthias Clasen  <mclasen@redhat.com>
722
723         * Post-release version bump
724
725         * === Released 2.5.1 ===
726
727 Sat Jul 31 23:17:05 2004  Matthias Clasen  <maclas@gmx.de>
728
729         * NEWS: Updates.
730
731 Sat Jul 31 20:33:07 2004  Matthias Clasen  <maclas@gmx.de>
732
733         * tests/shell-test.c: Include a test involving consecutive
734         backslashes followed by a non-escaped doublequote.
735         
736         * glib/gshell.c (tokenize_command_line): Count consecutive
737         backslashes mod 2 to detect escaped doubleqotes.  (#127306)
738
739 2004-07-30  Matthias Clasen  <mclasen@redhat.com>
740
741         * glib/gconvert.c (g_unescape_uri_string): Don't validate
742         for UTF-8 here.  (#148420, Robert Ć–gren)
743
744         * tests/uri-test.c (run_roundtrip_tests): Add tests for 
745         roundtrip compatibility. Going from filename to uri and 
746         back should always give you the same filename back. 
747
748 2004-07-28  Matthias Clasen  <mclasen@redhat.com>
749
750         * tests/markups/valid-{9,10,11}.gmarkup: 
751         * tests/markups/fail-{37,38,39}.gmarkup: Tests for handling
752         of whitespace inside tags.
753
754         * glib/gmarkup.c (enum GMarkupParseState): Add 
755         STATE_AFTER_ATTRIBUTE_NAME and STATE_AFTER_CLOSE_TAG_NAME.
756         (g_markup_parse_context_parse): Accept whitespace between
757         attribute names, '=' and attribute values and between
758         close tag name and '>'. (#148646, Hiroyuki Ikezoe)
759
760 Tue Jul 27 02:01:31 2004  Matthias Clasen  <maclas@gmx.de>
761
762         * glib/gstrfuncs.c (g_strsplit_set): s/g_strsplit/g_strsplit_set/
763         as well.
764
765 Sat Jul 24 17:50:07 2004  Soeren Sandmann  <sandmann@daimi.au.dk>
766
767         * glib/gstrfuncs.c (g_strsplit_set):
768         s/g_strtokenize/g_strsplit_set/ in docs.
769
770 Fri Jul 23 10:37:50 2004  Matthias Clasen  <maclas@gmx.de>
771
772         * tests/type-test.c (main): Actually test G_MAXSIZE with
773         a gsize variable.
774
775 2004-07-21  Matthias Clasen  <mclasen@redhat.com>
776
777         Fix #132858, Sven Neumann, patch by James Henstridge:
778         
779         * glib-gettextize.in: modify so that mkinstalldirs will 
780         get installed into auxdir.
781
782         * Makefile.am (gettext_SCRIPTS): install mkinstalldirs.
783
784 2004-07-21  Matthias Clasen  <mclasen@redhat.com>
785
786         Fix #147651, reported by Oliver Guntermann:
787
788         * glib/gprintfint.h (_g_vasprintf): Don't wrap vasprintf(),
789         _g_gnulib_vasprintf() in a macro, since they behave 
790         differently wrt. to memory allocation.
791
792         * glib/gprintf.c (g_vasprintf): Instead, differentiate 
793         here between the three cases: system vasprintf(), 
794         _g_gnulib_vasprintf(), no vasprintf().  
795
796 2004-07-20  Crispin Flowerday  <gnome@flowerday.cx>
797
798         * NEWS: Fix a typo in my name
799
800 Tue Jul 20 04:31:40 2004  Soeren Sandmann  <sandmann@daimi.au.dk>
801
802         * configure.in: Bump version number
803
804 Sun Jul 18 19:40:30 2004  Soeren Sandmann  <sandmann@daimi.au.dk>
805
806         * === Released 2.5.0 ===
807
808         * Makefile.am (BUILT_EXTRA_DIST): move gtk-doc.make here.
809
810 Sun Jul 18 01:40:28 2004  Matthias Clasen  <maclas@gmx.de>
811
812         * NEWS: Updates for 2.5.0
813
814 Mon Jul 12 00:02:40 2004  Matthias Clasen  <maclas@gmx.de>
815
816         * glib/gi18n-lib.h: Remove the ENABLE_NLS check here as well.
817
818 2004-07-09  Matthias Clasen  <mclasen@redhat.com>
819
820         * glib/gdir.c (g_dir_open): Convert filename to UTF-8 
821         before using it in the error message.  (#146054, Federico
822         Mena Quintero)
823
824 Thu Jul  8 00:54:32 2004  Matthias Clasen  <maclas@gmx.de>
825
826         * glib/gi18n.h: Remove the ENABLE_NLS check, since GLib can't
827         be built without anyway.  (#135899, Murray Cumming)
828
829 Mon Jul  5 18:50:27 2004  Matthias Clasen  <maclas@gmx.de>
830
831         * glib/gmessages.h (g_debug): Complete the g_log() 
832         family.  (#135730, Sven Herzberg)
833
834 Mon Jul  5 18:42:30 2004  Matthias Clasen  <maclas@gmx.de>
835
836         * glib/gnulib/Makefile.am (INCLUDES): Add top_srcdir to 
837         make srcdir != . work.  (#145166, Kaz Sasayama)
838
839 Sun Jul  4 01:52:18 2004  Matthias Clasen  <maclas@gmx.de>
840
841         * configure.in: Use a small test library instead of
842         libpthread.so for testing RTLD_GLOBAL brokenness.  (#139567,
843         Julio M. Merino Vidal)
844         
845 2004-07-02  Sebastian Wilhelmi  <seppi@seppi.de>
846
847         * glib/gatomic.c: Rename __asm to __asm__ and __volatile to
848         __volatile__ to make the file consistent. Spotted by Benoit
849         Carpentier <gtkool_2kx@yahoo.fr>.
850
851 2004-07-01  John Ehresman  <jpe@wingide.com>
852
853         * glib/giowin32.c (g_io_channel_win32_init, g_io_win32_free)
854         Initialize reset_send & reset_recv fields and don't close
855         sockets unless they were created.  (#145153)
856
857 Fri Jun 11 22:56:46 2004  Matthias Clasen  <maclas@gmx.de>
858
859         * glib/gscanner.c (g_scanner_get_token_ll): Ignore a 
860         missing newline at EOF for single line comments.  
861         (#83674, Sven Neumann)
862
863 Thu Jun 10 23:38:02 2004  Matthias Clasen  <maclas@gmx.de>
864
865         * tests/printf-test.c (TEST): Actually set any_failed on 
866         failure.  (#143552, Philippe Blain)
867
868 2004-06-09  Federico Mena Quintero  <federico@ximian.com>
869
870         * tests/uri-test.c (to_uri_tests): Fix expected results (ha ha)
871         for URIs that *should* have been invalid, or viceversa.
872         (from_uri_tests): Likewise.
873
874 2004-06-07  Federico Mena Quintero  <federico@ximian.com>
875
876         Fixes #140532.
877
878         * glib/gconvert.c (is_asciialphanum): Renamed from
879         is_escalphanum(); ensures that this is an ASCII character.
880         (is_asciiescalpha): Renamed from is_escalpha().
881         (hostname_validate): Use the two functions above.
882         (g_filename_to_uri): Don't convert the filename to UTF-8.
883         (g_filename_from_uri): Don't convert the filename from UTF-8.
884
885 Mon Jun  7 22:25:24 2004  Matthias Clasen  <maclas@gmx.de>
886
887         * tests/run-markup-tests.sh: Default to silence, but support
888         a -v argument to get the old output back. 
889
890 2004-06-06  Tor Lillqvist  <tml@iki.fi>
891
892         * glib/gutils.c (g_get_any_init): Check home for being
893         NULL. (#143812, Ivan Wong)
894
895 Sun Jun  6 15:23:00 2004  Pawan Chitrakr  <pawan@nplinu.org>
896
897         * configure.in: Added "ne" (Nepali) in ALL_LINGUAS
898
899 Fri Jun  4 19:26:47 2004  Manish Singh  <yosh@gimp.org>
900
901         * glib/galloca.h: cpp #directives should always have the "#" in the
902         first column of the the line. Do that for "#pragma alloca". Fixes
903         bug #143744.
904
905 Wed Jun  2 00:57:16 2004  Matthias Clasen  <maclas@gmx.de>
906
907         * glib/gtypes.h: Use higher precision for the mathematical
908         constants.  (#141941, Morten Welinder)
909
910 Tue Jun  1 22:01:40 2004  Matthias Clasen  <maclas@gmx.de>
911
912         * glib/gmarkup.c (advance_char): Fix an off-by-one error 
913         in g_markup_parse_context_parse().  (#142794, Morten Welinder)
914
915 Sun May 16 23:23:29 2004  Matthias Clasen  <maclas@gmx.de>
916
917         Merged from 2.4:
918         
919         * glib/gcompletion.c (g_completion_add_items):
920         (g_completion_remove_items): Remove unnecessary 
921         checks.  (#142559, Morten Welinder)
922
923 2004-05-15  Tor Lillqvist  <tml@iki.fi>
924
925         * glib/gutils.c (g_get_any_init): [Win32] Only believe HOME if it
926         is an absolute path and exists. (#138618)
927
928 2004-05-14  Tor Lillqvist  <tml@iki.fi>
929
930         * glib/gnulib/vasnprintf.c (vasnprintf): Handle empty digit string
931         for precision correctly. (#142400)
932
933         For backward compatibility with the Trio implementation, make "ll"
934         format modifer work on Win32, too. Change into "I64" before
935         passing to the system printf. (#142433)
936
937         * tests/printf-test.c (main): Add tests for the above.
938
939 2004-05-10  Matthias Clasen  <mclasen@redhat.com>
940
941         Merge from 2.4:
942         
943         * glib/gmain.c (block_source, unblock_source): Make these 
944         static.  (#142230, Morten Welinder)
945
946 2004-05-10  Tor Lillqvist  <tml@iki.fi>
947
948         * glib/giowin32.c (g_win32_print_gioflags): Remove two duplicated
949         lines. Thanks to BenoĆ®t Carpentier.
950
951 Sun May  9 02:04:14 2004  Matthias Clasen  <maclas@gmx.de>
952
953         Merge from 2.4:
954         
955         * glib/guniprop.c (g_utf8_casefold): Avoid an unnecessary
956         memleak.  (#141998, Nikolai Weibull)
957
958 Sat May  8 23:02:26 2004  Matthias Clasen  <maclas@gmx.de>
959
960         Merge from 2.4:
961         
962         * glib/gutils.h: Remove vestigial g_get_codeset().
963         * glib/gutils.c (g_get_codeset): Call g_get_charset().
964         (#137703, Owen Taylor)
965
966 2004-05-06  Matthias Clasen  <mclasen@redhat.com>
967
968         * configure.in: Bump version number to 2.5.0.
969
970 Wed May  5 23:35:44 2004  Matthias Clasen  <maclas@gmx.de>
971
972         * glib/gconvert.c (g_filename_from_uri): Quote the file
973         scheme to mark it as untranslatable. String change.  
974         (#133144, Danilo Segan)
975
976 2004-05-03  Pablo Saratxaga  <pablo@mandrakesoft.com>
977
978         * configure.in: Added Walloon (wa) to ALL_LINGUAS
979
980 Sun May  2 03:51:59 2004  Manish Singh  <yosh@gimp.org>
981
982         * glib/gtypes.h: check for __pentium4__ when deciding whether to
983         use bswap for GUINT32_SWAP_LE_BE_IA32(). Fixes bug #141620.
984
985 2004-05-01  Hans Breuer  <hans@breuer.org>
986
987         * glib/gnulib/Makefile.am : added makefile.msc to EXTRA_DIST
988         fixes #141563, Steve Lhomme
989
990 2004-04-30  Matthias Clasen  <mclasen@redhat.com>
991
992         * === Released 2.4.1 ===
993
994         * configure.in: Version 2.4.1, interface age 1. 
995
996         * NEWS: Updates
997         
998 2004-04-25  Tor Lillqvist  <tml@iki.fi>
999
1000         * glib/gwin32.c (g_win32_get_package_installation_subdirectory):
1001         Plug memory leak. (#140770, John Ehresman)
1002
1003 2004-04-23  Matthias Clasen  <mclasen@redhat.com>
1004
1005         * glib/libcharset/localcharset.c (_g_locale_get_charset_aliases): 
1006         Reinstate LIBCHARSET_ALIAS_DIR support which got lost at some
1007         point.  (#139134, Piotr Klaban)
1008
1009         * glib/gconvert.c (open_converter): Don't call g_strerror() here, 
1010         since it can lead to infinite recursion.  (#139133, Piotr Klaban)
1011
1012 2004-04-22  Matthias Clasen  <mclasen@redhat.com>
1013
1014         * tests/testglib.c (main): Trivial warning fix.  (#140345)
1015
1016         * tests/queue-test.c (main): Add some tests for off-by-one errors.
1017
1018         * glib/gqueue.c (g_queue_pop_nth_link): Fix an off-by-one 
1019         error.  (#139703, Philippe Blain)
1020
1021         * tests/testglib.c (main): Add testcases for g_message() involving
1022         non-printable and unsafe characters.
1023
1024         * glib/gmessages.c (escape_string): Don't assume that
1025         string->str remains unchanged over g_string_insert() 
1026         calls.  (#139030, Christophe Saout)
1027
1028         * glib/gstrfuncs.c (g_ascii_strtod): Fix problems when a 
1029         locale-specific decimal separator directly follows a 
1030         number.  (#138424, Nickolay V. Shmyrev)
1031
1032         * tests/strtod-test.c (main): Add some more testcases.
1033
1034         * glib/gmain.c (g_main_context_query): Only set time_is_current to 
1035         FALSE if context->timeout is not zero.  (#137795, Christian Krause)
1036
1037 2004-04-21  Matthias Clasen  <mclasen@redhat.com>
1038
1039         * tests/printf-test.c (main): Comment out a nonessential testcase
1040         which fails on HP-UX.  (#136283, Jonas Jonsson)
1041
1042 2004-04-15  Matthias Clasen  <mclasen@redhat.com>
1043
1044         * tests/patterntest.c (main): Add tests for the empty pattern.
1045
1046         * glib/gpattern.c (g_pattern_spec_new): Don't read and write out 
1047         of bounds when the pattern is empty.  (#140032, Stanislav Brabec,
1048         Stefan Fent)
1049
1050 2004-04-10  Tor Lillqvist  <tml@iki.fi>
1051
1052         * glib/gwin32.c (g_win32_getlocale): Add new language and
1053         sublanguage codes, from GNU gettext. (#137958)
1054         
1055         * glib/giowin32.c
1056         * glib/gmain.c
1057         * glib/gstrfuncs.c
1058         * glib/gthread.c: Decorating variable definitions with
1059         __declspec(dllexport) causes problems on Cygwin build, and isn't
1060         really needed for a native Win32 build with mingw or MSVC, so
1061         remove. (#138402, Roger Leigh)
1062
1063         * glib/libcharset/localcharset.c: Use Win32-specific code also on
1064         Cygwin.
1065         * tests/uri-test.c: Don't assume that local filenames are in UTF-8
1066         on Cygwin, either. (#138412, Roger Leigh)
1067
1068 2004-04-08  Guntupalli Karunakar  <karunakar@freedomink.org>
1069
1070         * configure.in: Added "gu" (Gujarati) to ALL_LINGUAS.
1071
1072 2004-04-03  Tor Lillqvist  <tml@iki.fi>
1073
1074         * configure.in: Remove AC_CYGWIN, obsolete. Don't let pthreads be
1075         found on Cygwin, they don't work. (#138401, Roger Leigh)
1076
1077 2004-03-31  Tor Lillqvist  <tml@iki.fi>
1078
1079         * tests/spawn-test-win32-gui.c: Minor Cygwin fix. (#138405, Roger
1080         Leigh)
1081
1082         * tests/unicode-encoding.c (process): Use UTF-16LE explicitly also
1083         on Cygwin. (#138423, Roger Leigh)
1084
1085 2004-03-30  Adam Weinberger  <adamw@gnome.org>
1086
1087         * configure.in: Added en_CA to ALL_LINGUAS.
1088
1089 2004-03-21  Tor Lillqvist  <tml@iki.fi>
1090
1091         * glib/gutils.c (g_path_get_dirname): Fix Win32 behaviour in some
1092         cases where a drive letter is present. For 'a:' or 'a:foo', return
1093         'a:.'. This is mostly just for consistency with the behaviour
1094         without a drive letter. But very important is to for 'a:\foo' or
1095         'a:\', return 'a:\', and not 'a:'. (Ditto for forward slashes
1096         instead of backslashes.) (#137316)
1097
1098         * tests/dirname-test.c (main): More complete testing on Win32. If
1099         a test fails, include expected and actual result in error message.
1100
1101 Fri Mar 19 15:21:09 2004  Owen Taylor  <otaylor@redhat.com>
1102
1103         * glib/gmain.c: Fix the accidental revert of the
1104         fixes from #112222 that happened when the GChildWatch
1105         code was added. (Caught by Christian Persch)
1106
1107 Fri Mar 19 11:07:06 2004  Owen Taylor  <otaylor@redhat.com>
1108
1109         * tests/atomic-test.c (main): Make computation
1110         of "biggest_pointer" vaguely more portable.
1111         (#137498, Jonas Jonsson)
1112
1113 2004-03-16  Tor Lillqvist  <tml@iki.fi>
1114
1115         * configure.in: Define HAVE_INT64_AND_I64 also in the mingw (gcc
1116         on Win32) case, where the 64-bit type is called long long, but the
1117         system printf/scanf format modifier for 64-bit integers is still I64.
1118
1119 2004-03-16  Gareth Owen  <gowen72@yahoo.com>
1120
1121         * configure.in: Added en_GB to ALL_LINGUAS
1122