1 2004-11-01 Ray Strode <rstrode@redhat.com>
4 (g_key_file_get_locale_string): don't return an
5 error if we come across a value with invalid utf8 or
6 if we don't find a translated string. Just fallback
7 to the untranslated string (Mark McLoughlin, bug
11 (g_key_file_init), (g_key_file_clear): track the
12 actual start GKeyFileGroup rather than just its name
13 (g_key_file_parse_group): allow add_group() to
14 update the start group.
15 (g_key_file_remove_group_node): update the start
16 group if it gets removed (Mark McLoughlin, bug
20 (g_key_file_parse_string_as_value): Don't escape
21 tabs and spaces in the middle of key values.
23 2004-11-01 Matthias Clasen <mclasen@redhat.com>
29 * gthread/gthread-posix.c
30 * tests/timeloop-closure.c
31 * tests/timeloop.c: Fix sparse warnings. (#157014, Kjartan Maraas)
33 2004-11-01 Matthias Clasen <mclasen@redhat.com>
35 * glib/goption.c: Documentation updates.
37 Handle conflicts between options in different groups. (#156808)
39 * glib/goption.c (g_option_context_parse): When a long option does not
40 match exactly, try to parse it as --group-option.
41 (g_option_context_add_group): Warn if a group name conflict occurs.
43 * glib/goption.c (print_help): Print out the effective options, ie
44 don't print shadowed short options, and for long options print
45 --group-option instead of --option if appropriate.
47 2004-10-31 Matthias Clasen <mclasen@redhat.com>
49 * glib/gwin32.c: Add bits of markup to g_win32_get_windows_version()
52 2004-10-31 Tor Lillqvist <tml@iki.fi>
54 * glib/gwin32.c: Document g_win32_get_windows_version().
56 * glib/gstdio.[ch]: Add g_lstat().
58 2004-10-29 Matthias Clasen <mclasen@redhat.com>
60 * glib/goption.c: Doc additions.
62 * glib/goption.c (parse_arg): Convert filenames to UTF-8 on
65 2004-10-29 Hans Breuer <hans@breuer.org>
67 * glibconfig.h */makefile.msc.in : updated [and finally fixed my
68 script to produce ready to go de-in(ed) files, w/o autotools]
70 * */*.rc.in : updated copyrights to 2004
72 * glib/gutils.c : some CSIDL_* defines lacking from older SDK;
73 use the same fallback mecahnism as on *NIX where ever applicable
75 2004-10-29 Matthias Clasen <mclasen@redhat.com>
77 * tests/option-test.c: Add tests for the handling of
78 non-option arguments, "--" and G_OPTION_REMAINING.
80 * glib/goption.[hc]: #define G_OPTION_REMAINING, which is
81 a special long option name, which can be used for an option
82 in the main group which collects the non-option arguments.
83 It must be of type G_OPTION_ARG_STRING_ARRAY or
84 G_OPTION_ARG_FILENAME_ARRAY. If the main group doesn't contain
85 an option whose name is G_OPTION_REMAINING, the non-option
86 arguments are left behind in argv as before.
88 * glib/goption.c: Add documentation.
90 2004-10-28 Matthias Clasen <mclasen@redhat.com>
92 * glib/gmessages.h: Mark g_assert_warning as G_GNUC_NORETURN,
93 to avoid compiler warnings. (#156767, Owen Taylor)
95 2004-10-29 Tor Lillqvist <tml@iki.fi>
97 * glib/gstdio.c: Include also <direct.h> for mkdir() prototype
98 with MSVC. [156727, Kazuki IWAMOTO]
100 * glib/giochannel.h (g_io_channel_new_file): Redefine also
101 g_io_channel_new_file to the UTF-8 version on Win32. [156725,
104 2004-10-28 Ray Strode <rstrode@redhat.com>
107 (find_file_in_data_dirs): clean up a leak (#156652,
109 (g_key_file_load_from_fd): propagate fstat() error
110 conditions and retry read on EAGAIN (#156647, Morten
111 Welinder). Return error if file is NOT regular, not if
112 it is regular (bug introduced from last commited bug
114 (g_key_file_load_from_data_dirs): allocate enough space
115 for the terminating NULL.
117 2004-10-28 Ray Strode <rstrode@redhat.com>
119 * glib/gkeyfile.c: Don't use S_ISREG macro (#156728,
122 2004-10-28 Matthias Clasen <mclasen@redhat.com>
124 * glib/gstdio.c: Include galias.h before glib.h (#156697,
127 * glib/gkeyfile.c: Add a missing "Since: 2.6" comment.
129 2004-10-28 Tor Lillqvist <tml@iki.fi>
131 * glib/gstdio.c: Include glib.h early to get G_OS_WIN32. Include
134 * glib/gkeyfile.c: Include gstdio.h and use g_open().
136 2004-10-27 Ray Strode <rstrode@redhat.com>
139 (g_key_file_load_from_fd),
140 (g_key_file_load_from_file):
141 Move file is regular check to load_from_file to use
142 fstat() instead of race prone g_file_test(). Don't
143 clear/init until needed. Change error messages to be
145 (g_key_file_load_from_data),
146 (g_key_file_load_from_data_dirs),
147 (g_key_file_parse_data),
148 (g_key_file_get_value),
149 (g_key_file_get_string),
150 (g_key_file_set_string),
151 (g_key_file_get_string_list),
152 (g_key_file_set_string_list),
153 (g_key_file_set_locale_string),
154 (g_key_file_get_locale_string),
155 (g_key_file_set_locale_string_list),
156 (g_key_file_get_boolean),
157 (g_key_file_set_boolean),
158 (g_key_file_get_boolean_list),
159 (g_key_file_set_boolean_list),
160 (g_key_file_get_integer),
161 (g_key_file_get_integer_list),
162 (g_key_file_set_integer_list),
163 (g_key_file_remove_key):
164 Add more g_return_*if_fail checks for public functions.
166 2004-10-27 Matthias Clasen <mclasen@redhat.com>
168 * configure.in: Bump version.
170 * === Released 2.5.4 ===
172 2004-10-27 Matthias Clasen <mclasen@redhat.com>
174 * glib/abicheck.sh: Strip Win32 specific defs file syntax.
178 2004-10-27 Matthias Clasen <mclasen@redhat.com>
180 Introduce the idea of a filename encoding, which is
181 *literally* the filename encoding on Unix. On windows,
182 use the Unicode name converted to UTF-8. (#101792,
183 Tor Lillqvist, Owen Taylor)
186 * glib/gconvert.[hc]:
187 * glib/gfileutils.[hc]:
189 * glib/giowin32.c: On Windows, keep old ABI versions
190 of GLib pathname api for DLL ABI stability. Use different
191 names for the new-style UTF-8 versions. Hide this through
194 * glib/gstdio.[hc]: New files containing wrappers for
197 * glib/glib.symbols: Add new symbols.
199 * glib/makegalias.pl: Drop Win32 specific .def syntax,
202 2004-10-27 Matthias Clasen <mclasen@redhat.com>
204 * glib/gkeyfile.c: Fix includes. (#156500, #156499,
207 * glib/Makefile.am (galias.h): Fix srcdir != builddir
208 builds. (#156447, Thomas Fitzsimmons)
210 2004-10-26 Gora Mohanty <gmohanty@cvs.gnome.org>
212 * configure.in: Added 'or' to ALL_LINGUAS.
214 2004-10-26 Matthias Clasen <mclasen@redhat.com>
216 * glib/gkeyfile.c: Include galias.h.
218 * glib/gkeyfile.c (g_key_file_parse_value_as_comment):
219 Don't compare strings and chars.
221 * glib/glib.symbols: Add new symbols.
223 * glib/gkeyfile.c (g_key_file_new): Fix docs.
225 * glib/gkeyfile.h: Use the same parameter names as in
226 the implementation and the docs.
228 * glib/gwin32.c (g_win32_get_windows_version): Make this
229 function thread-safe in the GLib style.
230 * glib/gthreadinit.h:
231 * glib/gwin32.c (_g_win32_thread_init): New function to
232 initialize the version.
233 * glib/gthread.c (g_thread_init_glib): Call
234 _g_win32_thread_init() from here.
236 2004-10-26 Ray Strode <rstrode@redhat.com>
238 * glib/gkeyfile.c: Add Matthias to "Written by" lines
239 (GKeyFileGroup): add field to hold comments about groups
240 (g_key_file_load_from_fd): return TRUE on success and
241 FALSE on failure. Don't close fd's opened by other
243 (g_key_file_load_from_file): run FILE_IS_REGULAR test
244 before trying to open file, to save an fd from being
245 leaked (would probably be better to use fstat()). Close
246 fd when done with it. Return TRUE on success and FALSE
248 (g_key_file_load_from_data): Return TRUE on success and
250 (g_key_file_load_from_data_dirs): remove superfluous
251 const modifier. Return TRUE on success and FALSE on
252 failure. Stop trying to load files when one succeeds.
253 (g_key_file_parse_key_value_pair): don't validate input
254 for UTF-8 until users uses a getter that does
255 validation. Don't leak copy of start_group_name.
256 (g_key_file_to_data): serialize new comment field for
258 (g_key_file_get_keys): Remove convenience code to let
259 NULL group mean start group. Get rid of unneeded NULL
260 check before g_strdup.
261 (g_key_file_get_groups): Reverse groups list before
262 sending to user because it is maintained in backward
264 (g_key_file_get_value),
265 (g_key_file_set_value): add g_return checks at top of
267 (g_key_file_get_string),
268 (g_key_file_get_string_list): validate key value is UTF-8.
269 (g_key_file_[sg]et_*comment): new functions for
270 setting/getting comments
271 (g_key_file_remove_comment): new function to remove
273 (g_key_file_remove_key_value_pair_node): new function to
274 pull a key-value pair out of the list and free it.
275 (g_key_file_remove_group_node): call
276 g_key_file_remove_key_value_pair_node instead of
277 freeing the list immediately to get better statistics
278 for approximate_size.
279 (g_key_file_remove_group): use lookup_group_node instead
280 of lookup_group to prevent a g_list_find call.
281 (g_key_file_add_key): report group also when unable to
283 (g_key_file_lookup_group_node): new function to make
284 getting the group node from a group name easier.
285 (g_key_file_lookup_group): use lookup_group_node under
287 (g_key_file_lookup_key_value_pair_node): new function to
288 make getting the key-value pair from a group and key
290 (g_key_file_parse_comment_as_value): new function to add '#' to the
291 beginning of every line.
292 (g_key_file_parse_value_as_comment): new function that
293 attempts to be the inverse of comment as value.
295 2004-10-26 Matthias Clasen <mclasen@redhat.com>
298 * glib/gkeyfile.c: Don't include ctype.h needlessly. (#156424,
301 * tests/strtod-test.c (test_string): Improve error reporting.
303 Mon Oct 25 15:05:18 2004 Manish Singh <yosh@gimp.org>
305 * autogen.sh: rm autom4te.cache, since it might interfere with
306 differing autoconf versions.
308 * tests/child-test.c: use GINT_TO_POINTER for g_child_watch_add
311 * glib/gfileutils.c: G_IS_DIR_SEPARATOR is defined in gutils.h now,
312 don't redefine it here.
314 2004-10-24 Matthias Clasen <mclasen@redhat.com>
316 * glib/gkeyfile.c (g_key_file_remove_group_node): Don't
317 destroy the lookup map if it is NULL.
319 2004-10-23 Matthias Clasen <mclasen@redhat.com>
321 * glib/gasyncqueue.c, glib/gatomic.c, glib/gdate.c,
322 glib/giochannel.c, glib/gmain.c, glib/gspawn.c,
323 glib/libcharset/localcharset.c: Apply a patch to fix
324 sparse warnings. (#154696, Kjartan Maraas)
326 * glib/gnulib/g-gnulib.h: Undef libc functions before defining
327 them, since they may also be macros. (#155177, Andrea Campi)
330 * glib/gkeyfile.c: Add a parser for desktop entries and
331 similar files with a .ini-like syntax. (#139974, Ray Strode)
333 * glib/glib.h: Include gkeyfile.h
335 * glib/Makefile.am (libglib_2_0_la_SOURCES): Add gkeyfile.c
336 (glibsubinclude_HEADERS): Add gkeyfile.h
338 * glib/gutils.c (_g_compute_locale_variants): Make this
339 non-static and use it in gkeyfile.c
341 2004-10-22 Matthias Clasen <mclasen@redhat.com>
343 * tests/uri-test.c (run_uri_list_tests): Add some
347 * glib/gconvert.c (g_uri_list_extract_uris): New function to
348 split a text/uri-list data into individual uris and strip comments.
350 2004-10-20 Matthias Clasen <mclasen@redhat.com>
352 * glib/goption.c (get_change): Don't return the wrong
353 change. (#155856, Lucas Rocha)
355 2004-10-17 Matthias Clasen <mclasen@redhat.com>
357 * glib/gutils.h (G_IS_DIR_SEPARATOR):
358 * glib/gutils.c: Make public. (#155589, Tim-Philipp MĆ¼ller)
360 2004-10-08 Matthias Clasen <mclasen@redhat.com>
362 * glib/gmain.c (g_child_watch_add_full):
363 * glib/gmain.c (g_child_watch_add): Document that GLib supports only
364 a single callback per pid. (#154828, Gustavo Carneiro)
366 2004-10-06 Matthias Clasen <mclasen@redhat.com>
368 * glib/gfileutils.c: Fix some C99isms. (#154676, Kjartan Maraas)
370 2004-10-05 Anders Carlsson <andersca@gnome.org>
372 * glib/goption.c: (g_option_context_parse):
373 Add check for if argc is 0.
375 * tests/option-test.c: (empty_test3), (main):
378 2004-10-05 Matthias Clasen <mclasen@redhat.com>
382 2004-10-04 Matthias Clasen <mclasen@redhat.com>
384 * glib/gmem.c (g_mem_set_vtable): Only set vtable_set if the
385 vtable is set. (#154352, Philippe Blain)
387 2004-10-03 Anders Carlsson <andersca@gnome.org>
389 * glib/goption.c: (parse_arg):
390 Set arg_data on filenames. (Discovered by Mats-Ola Persson).
392 * tests/option-test.c: (arg_test3), (ignore_test3), (main):
393 Add test for filename args.
395 2004-10-01 Tor Lillqvist <tml@iki.fi>
397 * glib/goption.c (g_option_context_parse): Use
398 g_path_get_basename() instead of strrchr(), so that either slash
399 is accepted on Windows.
401 2004-09-30 Matthias Clasen <mclasen@redhat.com>
403 * glib/gfileutils.c: Convert filenames to UTF-8 before
404 putting them in GErrors. (#154078, Morten Welinder)
406 2004-09-29 Matthias Clasen <mclasen@redhat.com>
408 * glib/glib.symbols: Add g_assert_warning.
411 * glib/gmessages.c (g_assert_warning): Treat g_assert
412 in the same way as g_return_if_fail and move the string
413 constants into a helper function, which also takes
414 care of removing the "IA__" prefix from internal aliases.
416 * glib/gmessages.h: Move the declaration of
417 g_return_if_fail_warning() out of the ifdefs, so that
418 building with G_DISABLE_ASSERT works.
420 2004-09-27 Murray Cumming <murrayc@murrayc.com>
422 * glib/goptions.[h|c], glib/glib.symbols: Rename
423 g_context_option_error_quark() to g_option_error_quark(), because that
424 is consistent with normal naming conventions, and what bindings expect.
426 .2004-09-26 Matthias Clasen <mclasen@redhat.com>
428 Fix #153649, Hidetaka Iwai:
430 * glib/goption.c (parse_long_option): Don't forget to set parsed
431 to TRUE when parsing a long ARG_NONE option.
432 (free_changes_list): Fix the memory management for string
435 2004-09-22 Tor Lillqvist <tml@iki.fi>
437 * glib/gmessages.c: [Win32] Don't ever open a console
438 window. (Which we used to do if standard output or standard error
439 are invalid, as they are for GUI applications.) These console
440 windows that open up unexpectedly have caused endless amounts of
441 confusion among end-users. (#141102, #151175)
443 Don't output the process id on Windows. Only output the program
444 name. If not set with g_set_prgname(), fetch the application
445 executable's name and use that.
447 Mon Sep 20 00:35:14 2004 Matthias Clasen <maclas@gmx.de>
449 * glib/gutf8.c (g_utf16_to_utf8): Add a note explaining how to
450 convert UTF-16 byte stream of ambiguous endianness. (#152954,
453 Mon Sep 20 00:17:37 2004 Matthias Clasen <maclas@gmx.de>
455 * tests/option-test.c (error_test3_post_parse):
456 * tests/option-test.c (error_test2_post_parse):
457 * tests/option-test.c (error_test1_post_parse): Don't call
458 g_set_error () with a NULL format. (#153103, Robert Ćgren)
460 Mon Sep 20 00:13:48 2004 Matthias Clasen <maclas@gmx.de>
462 Make GOption remove long options completely. (#153113, Robert Ćgren)
464 * glib/goption.c (parse_long_option): Fix a wrong index.
466 * tests/option-test.c (ignore_test3): Test handling of unknown
469 Sun Sep 19 23:56:15 2004 Matthias Clasen <maclas@gmx.de>
471 * glib/goption.c (g_option_context_parse): Call error_func
472 on error, not post_parse_func again. (#153107, Robert Ćgren)
474 Sun Sep 19 23:52:35 2004 Matthias Clasen <maclas@gmx.de>
476 * glib/gmessages.c (mklevel_prefix):
477 * glib/gmessages.c (g_logv): Fix the types of some variables
478 to be GLogLevelFlags instead of guint. (#153042, Philippe Blain)
480 2004-09-18 Matthias Clasen <mclasen@redhat.com>
484 * === Released 2.5.3 ===
486 2004-09-17 Matthias Clasen <mclasen@redhat.com>
488 * NEWS: More updates.
490 Thu Sep 16 18:42:46 2004 Manish Singh <yosh@gimp.org>
492 * glib/abicheck.sh: don't hardcode lengths for cut, instead split on
495 Thu Sep 16 18:15:32 2004 Manish Singh <yosh@gimp.org>
497 * glib/gstrfuncs.c (g_strncasecmp): Make it take a guint for number
498 of characters, instead of a gsize. Technically this is incorrect,
499 but this makes it match the prototype, and this is a deprecated
502 2004-09-16 Matthias Clasen <mclasen@redhat.com>
504 * glib/Makefile.am (EXTRA_DIST): Add abicheck.sh
506 Thu Sep 16 02:03:15 2004 Matthias Clasen <maclas@gmx.de>
508 Implement the same PLT reduction technique used in GTK+:
510 * glib/glib.symbols: Master list of symbols
512 * glib/makegalias.pl: Perl script which creates galias.h
514 * glib/abicheck.sh: Compares actual exports against glib.symbols
516 * glib/glib.def: Removed. This file is now generated from
519 * glib/Makefile.am: Add rules to generate galias.h and glib.def,
520 and add abicheck.sh to TESTS. Don't export _-prefixed symbols.
522 * configure.in: Add --disable-visibility to suppress the
523 use of ELF visibility attributes.
525 * glib/*.c: Include galias.h
527 2004-09-15 Tor Lillqvist <tml@iki.fi>
529 * glib/gwin32.c (g_win32_error_message): Convert message to
530 UTF-8. Technically this breaks API, but the actual use cases in
531 gdk/win32 have assumed it is UTF-8 anyway. Fix
532 documentation. (#152618, Kazuki Iwamoto)
534 * glib/gwin32.h: Don't define ftruncate as a macro. Was never a
535 good idea, and it clashes with newest mingw headers, which have a
536 ftruncate implementation as an inline function. Thanks to Dominik R.
538 * glib/gwin32.c (g_win32_ftruncate): Simplify implementation, just
539 call _chsize() in the C library.
541 2004-09-15 Matthias Clasen <mclasen@redhat.com>
545 2004-09-09 Matthias Clasen <mclasen@redhat.com>
547 * glib/gmessages.c (g_return_if_fail_warning): Strip the
548 prefix "IA__" from function names, since that is what
549 GTK+ uses for the PLT-reduction aliases.
551 Thu Sep 9 13:52:26 2004 Owen Taylor <otaylor@redhat.com>
553 * glib/gmessages.c (g_return_if_fail_warning):
554 Include implementation of g_return_if_fail_internal().
556 Thu Sep 9 10:37:41 2004 Owen Taylor <otaylor@redhat.com>
558 * glib/gmessages.h (g_return_[val_]if_fail): Use
559 a helper function to reduce code size; omit FILE/LINE
560 when we have __PRETTY_FUNCTION__.
562 2004-09-09 Matthias Clasen <mclasen@redhat.com>
564 * glib/gutils.c (g_get_home_dir): Remove a misleading comment.
566 Thu Sep 9 00:10:40 2004 Matthias Clasen <maclas@gmx.de>
569 * glib/gstrfuncs.c (g_strv_length): Add a function to
570 calculate the length of a NULL-terminated string
571 array. (#150455, Tim-Philipp MĆ¼ller)
573 * tests/strfunc-test.c (main): Add a test for g_strv_length().
575 2004-09-08 Tor Lillqvist <tml@iki.fi>
577 * glib/gutils.c (guess_category_value): On Win32, as last resort
578 call g_win32_getlocale() to get the current thread locale. There
579 usually aren't any POSIXish LANG or LC_* environment variables
580 present on Windows machines.
582 * glib/glib.def: Add g_get_language_names.
584 2004-09-07 Matthias Clasen <mclasen@redhat.com>
587 * glib/gutils.c (g_get_language_names): Add a function to
588 return a list of applicable locale names. (#95587,
590 (guess_category_value, compute_locale_variants):
591 (explode_locale, unalias_lang, read_aliases): Helper
592 functions for g_get_language_names()
594 * tests/testglib.c (main): Show the results of
595 g_get_language_names()
597 Sun Sep 5 01:46:11 2004 Matthias Clasen <maclas@gmx.de>
601 * glib/gmessages.c (g_log_set_default_handler): New
602 function to install an alternate default log
603 handler. (#66387, Darin Adler)
605 2004-09-03 Tor Lillqvist <tml@iki.fi>
607 * glib/glib.def: Update.
609 Wed Sep 1 20:22:39 2004 Matthias Clasen <maclas@gmx.de>
612 * glib/gdate.c (g_date_get_iso8601_week_of_year): Add
613 a function to calculate the ISO 8601 week number of
614 a date. (#92579, Niklas Lundell)
616 2004-09-01 Anders Carlsson <andersca@gnome.org>
618 * glib/goption.c: (g_option_context_parse):
619 Set program name before calling the pre-parse hooks.
621 2004-09-01 Anders Carlsson <andersca@gnome.org>
623 * glib/goption.c: (g_option_context_free), (print_help),
624 (g_option_context_parse):
625 Handle option contexts without a main group.
627 * tests/option-test.c: (empty_test2), (main):
628 Add test case for that.
630 2004-08-30 Anders Carlsson <andersca@gnome.org>
632 * glib/goption.c: (g_option_context_parse):
633 Set prgname to <unknown> if argc and argv are NULL.
635 * tests/option-test.c: (empty_test1), (main):
636 Add test case for that.
638 Sun Aug 29 23:58:38 2004 Matthias Clasen <maclas@gmx.de>
640 * glib/ghash.c (g_hash_table_lookup): Point to
641 g_hash_table_lookup_extended() for differentiation between
642 not-found and value-is-NULL. (#150960, Morten Welinder)
644 2004-08-27 Matthias Clasen <mclasen@redhat.com>
646 Fix #151193, Stepan Kasal:
648 * glib/gfileutils.c (g_file_error_from_errno):
649 * glib/gfileutils.h (enum GFileError): Add G_FILE_ERROR_NOSYS.
651 Fri Aug 27 00:45:41 2004 Matthias Clasen <maclas@gmx.de>
653 * glib/goption.c (g_option_context_parse): Set the program name
654 from argv[0], noticed by Masatake YAMATO.
656 2004-08-26 Tor Lillqvist <tml@iki.fi>
658 * tests/testglib.c (main): Test the new XDG basedir functions.
660 2004-08-25 Tor Lillqvist <tml@iki.fi>
662 * glib/gwin32.c (g_win32_get_windows_version): New
663 function. Returns the Windows version code like GetVersion(),
664 except that one can pretend to be running on Win9x by setting the
665 G_WIN32_PRETEND_WIN9X environment variable. This is mainly for
668 * glib/gwin32.h: Declare it. Define macros G_WIN32_WINDOWS_IS_NT_BASED
669 and G_WIN32_HAVE_WIDECHAR_API to test Windows features at run-time.
671 2004-08-25 Matthias Clasen <mclasen@redhat.com>
673 * configure.in: Post-release version bump.
675 * === Released 2.5.2 ===
677 Wed Aug 25 00:25:08 2004 Matthias Clasen <maclas@gmx.de>
679 * NEWS: Update for 2.5.2
681 2004-08-25 Tor Lillqvist <tml@iki.fi>
683 Win32 equivalences of the XDG folders
685 * glib/gutils.c (get_special_folder): New function, calls
686 SHGetSpecialFolderLocation() to get path to places like the My
688 (g_get_any_init): Use CSIDL_PROFILE as HOME if not
689 overridden by env vars.
690 (g_get_user_data_dir): Use CSIDL_PERSONAL.
691 (g_get_user_config_dir): Use CSIDL_APPDATA.
692 (g_get_user_cache_dir): Use CSIDL_INTERNET_CACHE. Debatable...
693 (g_get_system_data_dirs): Use CSIDL_COMMON_APPDATA and
694 CSIDL_COMMON_DOCUMENTS.
695 (g_get_system_config_dirs): Use CSIDL_COMMON_APPDATA.
697 * configure.in: Add -lole32 to G_LIBS_EXTRA for mingw.
699 * glib/glib.def: Add the new functions.
701 Mon Aug 23 16:16:35 2004 Manish Singh <yosh@gimp.org>
703 * glib/goption.c (g_option_group_add_entries): remove unused
706 Mon Aug 23 01:35:18 2004 Matthias Clasen <maclas@gmx.de>
708 * glib/gutils.c (g_get_user_cache_dir):
709 * glib/gutils.c (g_get_user_config_dir):
710 * glib/gutils.c (g_get_user_data_dir): Don't call g_get_home_dir()
711 while holding the g_utils_global lock, simply use g_home_dir.
712 (#150695, Jody Goldberg)
714 2004-08-21 Tor Lillqvist <tml@iki.fi>
716 * glib/giowin32.c (g_io_win32_finalize): Tell select_thread to
717 break out of its loop. Prevents a thread leak. (#147392, Peter
720 * glib/gunicollate.c (g_utf8_collate_key): Guard against bogus
721 return value from strxfrm(). For instance Microsoft's strxfrm()
722 returns INT_MAX on errors. (#141124)
724 2004-08-19 Tor Lillqvist <tml@iki.fi>
726 * glib/gunicollate.c (g_utf8_collate, g_utf8_collate_key): Correct
727 source and destination charset parameter order in g_convert()
728 call. (#150394, possibly also #141124)
730 2004-08-20 Jon K Hellan <hellan@acm.org>
732 * glib/goption.h: Remove trailing commas.
734 2004-08-17 Matthias Clasen <mclasen@redhat.com>
736 * configure.in: Check for all four values of the
737 visibility attribute; gcc 2.96 seems to miss
738 "default". (#150379, Vincent Noel)
740 2004-08-16 Christian Rose <menthos@menthos.com>
742 * configure.in: Added "bs" to ALL_LINGUAS.
744 2004-08-11 Ray Strode <rstrode@redhat.com>
746 * docs/reference/glib/glib-sections.txt:
747 * glib/gutils.[ch] (g_get_user_data_dir),
748 (g_get_user_config_dir), (g_get_user_cache_dir),
749 (g_get_system_data_dirs), (g_get_system_config_dirs):
750 Add new XDG basedir API (bug 139973).
752 2004-08-10 Matthias Clasen <mclasen@redhat.com>
754 * glib/gmacros.h: Remove G_GNUC_INTERNAL from here.
755 * configure.in: Check whether the visibility attribute
756 works and define G_HAVE_GNUC_VISIBILITY and
757 G_GNUC_INTERNAL in glibconfig.h correspondingly.
759 Mon Aug 9 17:37:56 2004 Matthias Clasen <maclas@gmx.de>
761 * glib/gmacros.h (G_GNUC_INTERNAL): Define empty if gcc is too old.
763 2004-08-06 Hans Breuer <hans@breuer.org>
765 * glib/makefile.msc.in glib/glib.def : updated
767 * glib/gutils.c : avoid 'inconsitent dll linkage' by not
768 defining extern char** environ with msvc
770 2004-08-06 Matthias Clasen <mclasen@redhat.com>
772 * m4macros/glib-gettext.m4: Require ngettext. (#123847,
775 Thu Aug 5 20:53:00 2004 Ray Strode <rstrode@redhat.com>
777 * glib/gutils.h (g_get_codeset): strdup result so caller
778 doesn't free internally managed memory.
780 2004-08-04 Tor Lillqvist <tml@iki.fi>
782 * glib/glib.def: Add glib_check_version.
784 * config.h.win32.in: Update to match what configure produces. Add
785 the G_ATOMIC_*. Define G_ATOMIC_I486 when compiling with gcc. Move
786 HAVE_INT64_AND_I64 to where the configure script puts it. Add
787 HAVE_INTTYPES_H_WITH_UINTMAX. Define intmax_t as __int64 for MSVC.
789 Tue Aug 3 16:19:44 2004 Matthias Clasen <maclas@gmx.de>
791 * glib/goption.c: Mark user visible strings for translation.
793 Tue Aug 3 15:50:55 2004 Matthias Clasen <maclas@gmx.de>
795 * glib/goption.[hc]: Pedantically use g types throughout.
797 Tue Aug 3 14:58:20 2004 Matthias Clasen <maclas@gmx.de>
800 * glib/gutils.c (glib_check_version): New function to
801 check the version of GLib at runtime. (#149175, Michael Natterer)
803 2004-08-03 Anders Carlsson <andersca@gnome.org>
807 Move GTranslateFunc to gtypes.h
809 2004-08-02 Anders Carlsson <andersca@gnome.org>
817 * tests/option-test.c:
820 2004-08-02 Matthias Clasen <mclasen@redhat.com>
822 * glib/gmacros.h: Add a G_GNUC_INTERNAL macro to mark function
823 declarations as internal and avoid PLT indirections for
824 them. (#145465, Arjan van de Ven)
826 * glib/gunicodeprivate.h:
827 * glib/gthreadinit.h:
830 * glib/gconvert.c: Use G_GNUC_INTERNAL for _g_charset_get_aliases(),
831 _g_debug_init(), _g_log_fallback_handler(), _g_mem_thread_init(),
832 _g_messages_thread_init(), _g_convert_thread_init(),
833 _g_rand_thread_init(), _g_main_thread_init(), _g_atomic_thread_init(),
834 _g_mem_thread_private_init(), _g_messages_thread_private_init(),
835 _g_utf8_normalize_wc() and _g_unichar_combining_class().
837 * glib/gatomic.c: Include gthreadinit.h here to see the declaration
838 for _g_atomic_thread_init().
840 Sun Aug 1 13:19:18 2004 Manish Singh <yosh@gimp.org>
842 * tests/uri-test.c: move newline printing from run_from_uri_tests()
843 to run_roundtrip_tests().
845 2004-08-01 Matthias Clasen <mclasen@redhat.com>
847 * Post-release version bump
849 * === Released 2.5.1 ===
851 Sat Jul 31 23:17:05 2004 Matthias Clasen <maclas@gmx.de>
855 Sat Jul 31 20:33:07 2004 Matthias Clasen <maclas@gmx.de>
857 * tests/shell-test.c: Include a test involving consecutive
858 backslashes followed by a non-escaped doublequote.
860 * glib/gshell.c (tokenize_command_line): Count consecutive
861 backslashes mod 2 to detect escaped doubleqotes. (#127306)
863 2004-07-30 Matthias Clasen <mclasen@redhat.com>
865 * glib/gconvert.c (g_unescape_uri_string): Don't validate
866 for UTF-8 here. (#148420, Robert Ćgren)
868 * tests/uri-test.c (run_roundtrip_tests): Add tests for
869 roundtrip compatibility. Going from filename to uri and
870 back should always give you the same filename back.
872 2004-07-28 Matthias Clasen <mclasen@redhat.com>
874 * tests/markups/valid-{9,10,11}.gmarkup:
875 * tests/markups/fail-{37,38,39}.gmarkup: Tests for handling
876 of whitespace inside tags.
878 * glib/gmarkup.c (enum GMarkupParseState): Add
879 STATE_AFTER_ATTRIBUTE_NAME and STATE_AFTER_CLOSE_TAG_NAME.
880 (g_markup_parse_context_parse): Accept whitespace between
881 attribute names, '=' and attribute values and between
882 close tag name and '>'. (#148646, Hiroyuki Ikezoe)
884 Tue Jul 27 02:01:31 2004 Matthias Clasen <maclas@gmx.de>
886 * glib/gstrfuncs.c (g_strsplit_set): s/g_strsplit/g_strsplit_set/
889 Sat Jul 24 17:50:07 2004 Soeren Sandmann <sandmann@daimi.au.dk>
891 * glib/gstrfuncs.c (g_strsplit_set):
892 s/g_strtokenize/g_strsplit_set/ in docs.
894 Fri Jul 23 10:37:50 2004 Matthias Clasen <maclas@gmx.de>
896 * tests/type-test.c (main): Actually test G_MAXSIZE with
899 2004-07-21 Matthias Clasen <mclasen@redhat.com>
901 Fix #132858, Sven Neumann, patch by James Henstridge:
903 * glib-gettextize.in: modify so that mkinstalldirs will
904 get installed into auxdir.
906 * Makefile.am (gettext_SCRIPTS): install mkinstalldirs.
908 2004-07-21 Matthias Clasen <mclasen@redhat.com>
910 Fix #147651, reported by Oliver Guntermann:
912 * glib/gprintfint.h (_g_vasprintf): Don't wrap vasprintf(),
913 _g_gnulib_vasprintf() in a macro, since they behave
914 differently wrt. to memory allocation.
916 * glib/gprintf.c (g_vasprintf): Instead, differentiate
917 here between the three cases: system vasprintf(),
918 _g_gnulib_vasprintf(), no vasprintf().
920 2004-07-20 Crispin Flowerday <gnome@flowerday.cx>
922 * NEWS: Fix a typo in my name
924 Tue Jul 20 04:31:40 2004 Soeren Sandmann <sandmann@daimi.au.dk>
926 * configure.in: Bump version number
928 Sun Jul 18 19:40:30 2004 Soeren Sandmann <sandmann@daimi.au.dk>
930 * === Released 2.5.0 ===
932 * Makefile.am (BUILT_EXTRA_DIST): move gtk-doc.make here.
934 Sun Jul 18 01:40:28 2004 Matthias Clasen <maclas@gmx.de>
936 * NEWS: Updates for 2.5.0
938 Mon Jul 12 00:02:40 2004 Matthias Clasen <maclas@gmx.de>
940 * glib/gi18n-lib.h: Remove the ENABLE_NLS check here as well.
942 2004-07-09 Matthias Clasen <mclasen@redhat.com>
944 * glib/gdir.c (g_dir_open): Convert filename to UTF-8
945 before using it in the error message. (#146054, Federico
948 Thu Jul 8 00:54:32 2004 Matthias Clasen <maclas@gmx.de>
950 * glib/gi18n.h: Remove the ENABLE_NLS check, since GLib can't
951 be built without anyway. (#135899, Murray Cumming)
953 Mon Jul 5 18:50:27 2004 Matthias Clasen <maclas@gmx.de>
955 * glib/gmessages.h (g_debug): Complete the g_log()
956 family. (#135730, Sven Herzberg)
958 Mon Jul 5 18:42:30 2004 Matthias Clasen <maclas@gmx.de>
960 * glib/gnulib/Makefile.am (INCLUDES): Add top_srcdir to
961 make srcdir != . work. (#145166, Kaz Sasayama)
963 Sun Jul 4 01:52:18 2004 Matthias Clasen <maclas@gmx.de>
965 * configure.in: Use a small test library instead of
966 libpthread.so for testing RTLD_GLOBAL brokenness. (#139567,
967 Julio M. Merino Vidal)
969 2004-07-02 Sebastian Wilhelmi <seppi@seppi.de>
971 * glib/gatomic.c: Rename __asm to __asm__ and __volatile to
972 __volatile__ to make the file consistent. Spotted by Benoit
973 Carpentier <gtkool_2kx@yahoo.fr>.
975 2004-07-01 John Ehresman <jpe@wingide.com>
977 * glib/giowin32.c (g_io_channel_win32_init, g_io_win32_free)
978 Initialize reset_send & reset_recv fields and don't close
979 sockets unless they were created. (#145153)
981 Fri Jun 11 22:56:46 2004 Matthias Clasen <maclas@gmx.de>
983 * glib/gscanner.c (g_scanner_get_token_ll): Ignore a
984 missing newline at EOF for single line comments.
985 (#83674, Sven Neumann)
987 Thu Jun 10 23:38:02 2004 Matthias Clasen <maclas@gmx.de>
989 * tests/printf-test.c (TEST): Actually set any_failed on
990 failure. (#143552, Philippe Blain)
992 2004-06-09 Federico Mena Quintero <federico@ximian.com>
994 * tests/uri-test.c (to_uri_tests): Fix expected results (ha ha)
995 for URIs that *should* have been invalid, or viceversa.
996 (from_uri_tests): Likewise.
998 2004-06-07 Federico Mena Quintero <federico@ximian.com>
1002 * glib/gconvert.c (is_asciialphanum): Renamed from
1003 is_escalphanum(); ensures that this is an ASCII character.
1004 (is_asciiescalpha): Renamed from is_escalpha().
1005 (hostname_validate): Use the two functions above.
1006 (g_filename_to_uri): Don't convert the filename to UTF-8.
1007 (g_filename_from_uri): Don't convert the filename from UTF-8.
1009 Mon Jun 7 22:25:24 2004 Matthias Clasen <maclas@gmx.de>
1011 * tests/run-markup-tests.sh: Default to silence, but support
1012 a -v argument to get the old output back.
1014 2004-06-06 Tor Lillqvist <tml@iki.fi>
1016 * glib/gutils.c (g_get_any_init): Check home for being
1017 NULL. (#143812, Ivan Wong)
1019 Sun Jun 6 15:23:00 2004 Pawan Chitrakr <pawan@nplinu.org>
1021 * configure.in: Added "ne" (Nepali) in ALL_LINGUAS
1023 Fri Jun 4 19:26:47 2004 Manish Singh <yosh@gimp.org>
1025 * glib/galloca.h: cpp #directives should always have the "#" in the
1026 first column of the the line. Do that for "#pragma alloca". Fixes
1029 Wed Jun 2 00:57:16 2004 Matthias Clasen <maclas@gmx.de>
1031 * glib/gtypes.h: Use higher precision for the mathematical
1032 constants. (#141941, Morten Welinder)
1034 Tue Jun 1 22:01:40 2004 Matthias Clasen <maclas@gmx.de>
1036 * glib/gmarkup.c (advance_char): Fix an off-by-one error
1037 in g_markup_parse_context_parse(). (#142794, Morten Welinder)
1039 Sun May 16 23:23:29 2004 Matthias Clasen <maclas@gmx.de>
1043 * glib/gcompletion.c (g_completion_add_items):
1044 (g_completion_remove_items): Remove unnecessary
1045 checks. (#142559, Morten Welinder)
1047 2004-05-15 Tor Lillqvist <tml@iki.fi>
1049 * glib/gutils.c (g_get_any_init): [Win32] Only believe HOME if it
1050 is an absolute path and exists. (#138618)
1052 2004-05-14 Tor Lillqvist <tml@iki.fi>
1054 * glib/gnulib/vasnprintf.c (vasnprintf): Handle empty digit string
1055 for precision correctly. (#142400)
1057 For backward compatibility with the Trio implementation, make "ll"
1058 format modifer work on Win32, too. Change into "I64" before
1059 passing to the system printf. (#142433)
1061 * tests/printf-test.c (main): Add tests for the above.
1063 2004-05-10 Matthias Clasen <mclasen@redhat.com>
1067 * glib/gmain.c (block_source, unblock_source): Make these
1068 static. (#142230, Morten Welinder)
1070 2004-05-10 Tor Lillqvist <tml@iki.fi>
1072 * glib/giowin32.c (g_win32_print_gioflags): Remove two duplicated
1073 lines. Thanks to BenoƮt Carpentier.
1075 Sun May 9 02:04:14 2004 Matthias Clasen <maclas@gmx.de>
1079 * glib/guniprop.c (g_utf8_casefold): Avoid an unnecessary
1080 memleak. (#141998, Nikolai Weibull)
1082 Sat May 8 23:02:26 2004 Matthias Clasen <maclas@gmx.de>
1086 * glib/gutils.h: Remove vestigial g_get_codeset().
1087 * glib/gutils.c (g_get_codeset): Call g_get_charset().
1088 (#137703, Owen Taylor)
1090 2004-05-06 Matthias Clasen <mclasen@redhat.com>
1092 * configure.in: Bump version number to 2.5.0.
1094 Wed May 5 23:35:44 2004 Matthias Clasen <maclas@gmx.de>
1096 * glib/gconvert.c (g_filename_from_uri): Quote the file
1097 scheme to mark it as untranslatable. String change.
1098 (#133144, Danilo Segan)
1100 2004-05-03 Pablo Saratxaga <pablo@mandrakesoft.com>
1102 * configure.in: Added Walloon (wa) to ALL_LINGUAS
1104 Sun May 2 03:51:59 2004 Manish Singh <yosh@gimp.org>
1106 * glib/gtypes.h: check for __pentium4__ when deciding whether to
1107 use bswap for GUINT32_SWAP_LE_BE_IA32(). Fixes bug #141620.
1109 2004-05-01 Hans Breuer <hans@breuer.org>
1111 * glib/gnulib/Makefile.am : added makefile.msc to EXTRA_DIST
1112 fixes #141563, Steve Lhomme
1114 2004-04-30 Matthias Clasen <mclasen@redhat.com>
1116 * === Released 2.4.1 ===
1118 * configure.in: Version 2.4.1, interface age 1.
1122 2004-04-25 Tor Lillqvist <tml@iki.fi>
1124 * glib/gwin32.c (g_win32_get_package_installation_subdirectory):
1125 Plug memory leak. (#140770, John Ehresman)
1127 2004-04-23 Matthias Clasen <mclasen@redhat.com>
1129 * glib/libcharset/localcharset.c (_g_locale_get_charset_aliases):
1130 Reinstate LIBCHARSET_ALIAS_DIR support which got lost at some
1131 point. (#139134, Piotr Klaban)
1133 * glib/gconvert.c (open_converter): Don't call g_strerror() here,
1134 since it can lead to infinite recursion. (#139133, Piotr Klaban)
1136 2004-04-22 Matthias Clasen <mclasen@redhat.com>
1138 * tests/testglib.c (main): Trivial warning fix. (#140345)
1140 * tests/queue-test.c (main): Add some tests for off-by-one errors.
1142 * glib/gqueue.c (g_queue_pop_nth_link): Fix an off-by-one
1143 error. (#139703, Philippe Blain)
1145 * tests/testglib.c (main): Add testcases for g_message() involving
1146 non-printable and unsafe characters.
1148 * glib/gmessages.c (escape_string): Don't assume that
1149 string->str remains unchanged over g_string_insert()
1150 calls. (#139030, Christophe Saout)
1152 * glib/gstrfuncs.c (g_ascii_strtod): Fix problems when a
1153 locale-specific decimal separator directly follows a
1154 number. (#138424, Nickolay V. Shmyrev)
1156 * tests/strtod-test.c (main): Add some more testcases.
1158 * glib/gmain.c (g_main_context_query): Only set time_is_current to
1159 FALSE if context->timeout is not zero. (#137795, Christian Krause)
1161 2004-04-21 Matthias Clasen <mclasen@redhat.com>
1163 * tests/printf-test.c (main): Comment out a nonessential testcase
1164 which fails on HP-UX. (#136283, Jonas Jonsson)
1166 2004-04-15 Matthias Clasen <mclasen@redhat.com>
1168 * tests/patterntest.c (main): Add tests for the empty pattern.
1170 * glib/gpattern.c (g_pattern_spec_new): Don't read and write out
1171 of bounds when the pattern is empty. (#140032, Stanislav Brabec,
1174 2004-04-10 Tor Lillqvist <tml@iki.fi>
1176 * glib/gwin32.c (g_win32_getlocale): Add new language and
1177 sublanguage codes, from GNU gettext. (#137958)
1182 * glib/gthread.c: Decorating variable definitions with
1183 __declspec(dllexport) causes problems on Cygwin build, and isn't
1184 really needed for a native Win32 build with mingw or MSVC, so
1185 remove. (#138402, Roger Leigh)
1187 * glib/libcharset/localcharset.c: Use Win32-specific code also on
1189 * tests/uri-test.c: Don't assume that local filenames are in UTF-8
1190 on Cygwin, either. (#138412, Roger Leigh)
1192 2004-04-08 Guntupalli Karunakar <karunakar@freedomink.org>
1194 * configure.in: Added "gu" (Gujarati) to ALL_LINGUAS.
1196 2004-04-03 Tor Lillqvist <tml@iki.fi>
1198 * configure.in: Remove AC_CYGWIN, obsolete. Don't let pthreads be
1199 found on Cygwin, they don't work. (#138401, Roger Leigh)
1201 2004-03-31 Tor Lillqvist <tml@iki.fi>
1203 * tests/spawn-test-win32-gui.c: Minor Cygwin fix. (#138405, Roger
1206 * tests/unicode-encoding.c (process): Use UTF-16LE explicitly also
1207 on Cygwin. (#138423, Roger Leigh)
1209 2004-03-30 Adam Weinberger <adamw@gnome.org>
1211 * configure.in: Added en_CA to ALL_LINGUAS.
1213 2004-03-21 Tor Lillqvist <tml@iki.fi>
1215 * glib/gutils.c (g_path_get_dirname): Fix Win32 behaviour in some
1216 cases where a drive letter is present. For 'a:' or 'a:foo', return
1217 'a:.'. This is mostly just for consistency with the behaviour
1218 without a drive letter. But very important is to for 'a:\foo' or
1219 'a:\', return 'a:\', and not 'a:'. (Ditto for forward slashes
1220 instead of backslashes.) (#137316)
1222 * tests/dirname-test.c (main): More complete testing on Win32. If
1223 a test fails, include expected and actual result in error message.
1225 Fri Mar 19 15:21:09 2004 Owen Taylor <otaylor@redhat.com>
1227 * glib/gmain.c: Fix the accidental revert of the
1228 fixes from #112222 that happened when the GChildWatch
1229 code was added. (Caught by Christian Persch)
1231 Fri Mar 19 11:07:06 2004 Owen Taylor <otaylor@redhat.com>
1233 * tests/atomic-test.c (main): Make computation
1234 of "biggest_pointer" vaguely more portable.
1235 (#137498, Jonas Jonsson)
1237 2004-03-16 Tor Lillqvist <tml@iki.fi>
1239 * configure.in: Define HAVE_INT64_AND_I64 also in the mingw (gcc
1240 on Win32) case, where the 64-bit type is called long long, but the
1241 system printf/scanf format modifier for 64-bit integers is still I64.
1243 2004-03-16 Gareth Owen <gowen72@yahoo.com>
1245 * configure.in: Added en_GB to ALL_LINGUAS