1 2004-10-29 Matthias Clasen <mclasen@redhat.com>
3 * glib/goption.c: Doc additions.
5 * glib/goption.c (parse_arg): Convert filenames to UTF-8 on
8 2004-10-29 Hans Breuer <hans@breuer.org>
10 * glibconfig.h */makefile.msc.in : updated [and finally fixed my
11 script to produce ready to go de-in(ed) files, w/o autotools]
13 * */*.rc.in : updated copyrights to 2004
15 * glib/gutils.c : some CSIDL_* defines lacking from older SDK;
16 use the same fallback mecahnism as on *NIX where ever applicable
18 2004-10-29 Matthias Clasen <mclasen@redhat.com>
20 * tests/option-test.c: Add tests for the handling of
21 non-option arguments, "--" and G_OPTION_REMAINING.
23 * glib/goption.[hc]: #define G_OPTION_REMAINING, which is
24 a special long option name, which can be used for an option
25 in the main group which collects the non-option arguments.
26 It must be of type G_OPTION_ARG_STRING_ARRAY or
27 G_OPTION_ARG_FILENAME_ARRAY. If the main group doesn't contain
28 an option whose name is G_OPTION_REMAINING, the non-option
29 arguments are left behind in argv as before.
31 * glib/goption.c: Add documentation.
33 2004-10-28 Matthias Clasen <mclasen@redhat.com>
35 * glib/gmessages.h: Mark g_assert_warning as G_GNUC_NORETURN,
36 to avoid compiler warnings. (#156767, Owen Taylor)
38 2004-10-29 Tor Lillqvist <tml@iki.fi>
40 * glib/gstdio.c: Include also <direct.h> for mkdir() prototype
41 with MSVC. [156727, Kazuki IWAMOTO]
43 * glib/giochannel.h (g_io_channel_new_file): Redefine also
44 g_io_channel_new_file to the UTF-8 version on Win32. [156725,
47 2004-10-28 Ray Strode <rstrode@redhat.com>
50 (find_file_in_data_dirs): clean up a leak (#156652,
52 (g_key_file_load_from_fd): propagate fstat() error
53 conditions and retry read on EAGAIN (#156647, Morten
54 Welinder). Return error if file is NOT regular, not if
55 it is regular (bug introduced from last commited bug
57 (g_key_file_load_from_data_dirs): allocate enough space
58 for the terminating NULL.
60 2004-10-28 Ray Strode <rstrode@redhat.com>
62 * glib/gkeyfile.c: Don't use S_ISREG macro (#156728,
65 2004-10-28 Matthias Clasen <mclasen@redhat.com>
67 * glib/gstdio.c: Include galias.h before glib.h (#156697,
70 * glib/gkeyfile.c: Add a missing "Since: 2.6" comment.
72 2004-10-28 Tor Lillqvist <tml@iki.fi>
74 * glib/gstdio.c: Include glib.h early to get G_OS_WIN32. Include
77 * glib/gkeyfile.c: Include gstdio.h and use g_open().
79 2004-10-27 Ray Strode <rstrode@redhat.com>
82 (g_key_file_load_from_fd),
83 (g_key_file_load_from_file):
84 Move file is regular check to load_from_file to use
85 fstat() instead of race prone g_file_test(). Don't
86 clear/init until needed. Change error messages to be
88 (g_key_file_load_from_data),
89 (g_key_file_load_from_data_dirs),
90 (g_key_file_parse_data),
91 (g_key_file_get_value),
92 (g_key_file_get_string),
93 (g_key_file_set_string),
94 (g_key_file_get_string_list),
95 (g_key_file_set_string_list),
96 (g_key_file_set_locale_string),
97 (g_key_file_get_locale_string),
98 (g_key_file_set_locale_string_list),
99 (g_key_file_get_boolean),
100 (g_key_file_set_boolean),
101 (g_key_file_get_boolean_list),
102 (g_key_file_set_boolean_list),
103 (g_key_file_get_integer),
104 (g_key_file_get_integer_list),
105 (g_key_file_set_integer_list),
106 (g_key_file_remove_key):
107 Add more g_return_*if_fail checks for public functions.
109 2004-10-27 Matthias Clasen <mclasen@redhat.com>
111 * configure.in: Bump version.
113 * === Released 2.5.4 ===
115 2004-10-27 Matthias Clasen <mclasen@redhat.com>
117 * glib/abicheck.sh: Strip Win32 specific defs file syntax.
121 2004-10-27 Matthias Clasen <mclasen@redhat.com>
123 Introduce the idea of a filename encoding, which is
124 *literally* the filename encoding on Unix. On windows,
125 use the Unicode name converted to UTF-8. (#101792,
126 Tor Lillqvist, Owen Taylor)
129 * glib/gconvert.[hc]:
130 * glib/gfileutils.[hc]:
132 * glib/giowin32.c: On Windows, keep old ABI versions
133 of GLib pathname api for DLL ABI stability. Use different
134 names for the new-style UTF-8 versions. Hide this through
137 * glib/gstdio.[hc]: New files containing wrappers for
140 * glib/glib.symbols: Add new symbols.
142 * glib/makegalias.pl: Drop Win32 specific .def syntax,
145 2004-10-27 Matthias Clasen <mclasen@redhat.com>
147 * glib/gkeyfile.c: Fix includes. (#156500, #156499,
150 * glib/Makefile.am (galias.h): Fix srcdir != builddir
151 builds. (#156447, Thomas Fitzsimmons)
153 2004-10-26 Gora Mohanty <gmohanty@cvs.gnome.org>
155 * configure.in: Added 'or' to ALL_LINGUAS.
157 2004-10-26 Matthias Clasen <mclasen@redhat.com>
159 * glib/gkeyfile.c: Include galias.h.
161 * glib/gkeyfile.c (g_key_file_parse_value_as_comment):
162 Don't compare strings and chars.
164 * glib/glib.symbols: Add new symbols.
166 * glib/gkeyfile.c (g_key_file_new): Fix docs.
168 * glib/gkeyfile.h: Use the same parameter names as in
169 the implementation and the docs.
171 * glib/gwin32.c (g_win32_get_windows_version): Make this
172 function thread-safe in the GLib style.
173 * glib/gthreadinit.h:
174 * glib/gwin32.c (_g_win32_thread_init): New function to
175 initialize the version.
176 * glib/gthread.c (g_thread_init_glib): Call
177 _g_win32_thread_init() from here.
179 2004-10-26 Ray Strode <rstrode@redhat.com>
181 * glib/gkeyfile.c: Add Matthias to "Written by" lines
182 (GKeyFileGroup): add field to hold comments about groups
183 (g_key_file_load_from_fd): return TRUE on success and
184 FALSE on failure. Don't close fd's opened by other
186 (g_key_file_load_from_file): run FILE_IS_REGULAR test
187 before trying to open file, to save an fd from being
188 leaked (would probably be better to use fstat()). Close
189 fd when done with it. Return TRUE on success and FALSE
191 (g_key_file_load_from_data): Return TRUE on success and
193 (g_key_file_load_from_data_dirs): remove superfluous
194 const modifier. Return TRUE on success and FALSE on
195 failure. Stop trying to load files when one succeeds.
196 (g_key_file_parse_key_value_pair): don't validate input
197 for UTF-8 until users uses a getter that does
198 validation. Don't leak copy of start_group_name.
199 (g_key_file_to_data): serialize new comment field for
201 (g_key_file_get_keys): Remove convenience code to let
202 NULL group mean start group. Get rid of unneeded NULL
203 check before g_strdup.
204 (g_key_file_get_groups): Reverse groups list before
205 sending to user because it is maintained in backward
207 (g_key_file_get_value),
208 (g_key_file_set_value): add g_return checks at top of
210 (g_key_file_get_string),
211 (g_key_file_get_string_list): validate key value is UTF-8.
212 (g_key_file_[sg]et_*comment): new functions for
213 setting/getting comments
214 (g_key_file_remove_comment): new function to remove
216 (g_key_file_remove_key_value_pair_node): new function to
217 pull a key-value pair out of the list and free it.
218 (g_key_file_remove_group_node): call
219 g_key_file_remove_key_value_pair_node instead of
220 freeing the list immediately to get better statistics
221 for approximate_size.
222 (g_key_file_remove_group): use lookup_group_node instead
223 of lookup_group to prevent a g_list_find call.
224 (g_key_file_add_key): report group also when unable to
226 (g_key_file_lookup_group_node): new function to make
227 getting the group node from a group name easier.
228 (g_key_file_lookup_group): use lookup_group_node under
230 (g_key_file_lookup_key_value_pair_node): new function to
231 make getting the key-value pair from a group and key
233 (g_key_file_parse_comment_as_value): new function to add '#' to the
234 beginning of every line.
235 (g_key_file_parse_value_as_comment): new function that
236 attempts to be the inverse of comment as value.
238 2004-10-26 Matthias Clasen <mclasen@redhat.com>
241 * glib/gkeyfile.c: Don't include ctype.h needlessly. (#156424,
244 * tests/strtod-test.c (test_string): Improve error reporting.
246 Mon Oct 25 15:05:18 2004 Manish Singh <yosh@gimp.org>
248 * autogen.sh: rm autom4te.cache, since it might interfere with
249 differing autoconf versions.
251 * tests/child-test.c: use GINT_TO_POINTER for g_child_watch_add
254 * glib/gfileutils.c: G_IS_DIR_SEPARATOR is defined in gutils.h now,
255 don't redefine it here.
257 2004-10-24 Matthias Clasen <mclasen@redhat.com>
259 * glib/gkeyfile.c (g_key_file_remove_group_node): Don't
260 destroy the lookup map if it is NULL.
262 2004-10-23 Matthias Clasen <mclasen@redhat.com>
264 * glib/gasyncqueue.c, glib/gatomic.c, glib/gdate.c,
265 glib/giochannel.c, glib/gmain.c, glib/gspawn.c,
266 glib/libcharset/localcharset.c: Apply a patch to fix
267 sparse warnings. (#154696, Kjartan Maraas)
269 * glib/gnulib/g-gnulib.h: Undef libc functions before defining
270 them, since they may also be macros. (#155177, Andrea Campi)
273 * glib/gkeyfile.c: Add a parser for desktop entries and
274 similar files with a .ini-like syntax. (#139974, Ray Strode)
276 * glib/glib.h: Include gkeyfile.h
278 * glib/Makefile.am (libglib_2_0_la_SOURCES): Add gkeyfile.c
279 (glibsubinclude_HEADERS): Add gkeyfile.h
281 * glib/gutils.c (_g_compute_locale_variants): Make this
282 non-static and use it in gkeyfile.c
284 2004-10-22 Matthias Clasen <mclasen@redhat.com>
286 * tests/uri-test.c (run_uri_list_tests): Add some
290 * glib/gconvert.c (g_uri_list_extract_uris): New function to
291 split a text/uri-list data into individual uris and strip comments.
293 2004-10-20 Matthias Clasen <mclasen@redhat.com>
295 * glib/goption.c (get_change): Don't return the wrong
296 change. (#155856, Lucas Rocha)
298 2004-10-17 Matthias Clasen <mclasen@redhat.com>
300 * glib/gutils.h (G_IS_DIR_SEPARATOR):
301 * glib/gutils.c: Make public. (#155589, Tim-Philipp MĆ¼ller)
303 2004-10-08 Matthias Clasen <mclasen@redhat.com>
305 * glib/gmain.c (g_child_watch_add_full):
306 * glib/gmain.c (g_child_watch_add): Document that GLib supports only
307 a single callback per pid. (#154828, Gustavo Carneiro)
309 2004-10-06 Matthias Clasen <mclasen@redhat.com>
311 * glib/gfileutils.c: Fix some C99isms. (#154676, Kjartan Maraas)
313 2004-10-05 Anders Carlsson <andersca@gnome.org>
315 * glib/goption.c: (g_option_context_parse):
316 Add check for if argc is 0.
318 * tests/option-test.c: (empty_test3), (main):
321 2004-10-05 Matthias Clasen <mclasen@redhat.com>
325 2004-10-04 Matthias Clasen <mclasen@redhat.com>
327 * glib/gmem.c (g_mem_set_vtable): Only set vtable_set if the
328 vtable is set. (#154352, Philippe Blain)
330 2004-10-03 Anders Carlsson <andersca@gnome.org>
332 * glib/goption.c: (parse_arg):
333 Set arg_data on filenames. (Discovered by Mats-Ola Persson).
335 * tests/option-test.c: (arg_test3), (ignore_test3), (main):
336 Add test for filename args.
338 2004-10-01 Tor Lillqvist <tml@iki.fi>
340 * glib/goption.c (g_option_context_parse): Use
341 g_path_get_basename() instead of strrchr(), so that either slash
342 is accepted on Windows.
344 2004-09-30 Matthias Clasen <mclasen@redhat.com>
346 * glib/gfileutils.c: Convert filenames to UTF-8 before
347 putting them in GErrors. (#154078, Morten Welinder)
349 2004-09-29 Matthias Clasen <mclasen@redhat.com>
351 * glib/glib.symbols: Add g_assert_warning.
354 * glib/gmessages.c (g_assert_warning): Treat g_assert
355 in the same way as g_return_if_fail and move the string
356 constants into a helper function, which also takes
357 care of removing the "IA__" prefix from internal aliases.
359 * glib/gmessages.h: Move the declaration of
360 g_return_if_fail_warning() out of the ifdefs, so that
361 building with G_DISABLE_ASSERT works.
363 2004-09-27 Murray Cumming <murrayc@murrayc.com>
365 * glib/goptions.[h|c], glib/glib.symbols: Rename
366 g_context_option_error_quark() to g_option_error_quark(), because that
367 is consistent with normal naming conventions, and what bindings expect.
369 .2004-09-26 Matthias Clasen <mclasen@redhat.com>
371 Fix #153649, Hidetaka Iwai:
373 * glib/goption.c (parse_long_option): Don't forget to set parsed
374 to TRUE when parsing a long ARG_NONE option.
375 (free_changes_list): Fix the memory management for string
378 2004-09-22 Tor Lillqvist <tml@iki.fi>
380 * glib/gmessages.c: [Win32] Don't ever open a console
381 window. (Which we used to do if standard output or standard error
382 are invalid, as they are for GUI applications.) These console
383 windows that open up unexpectedly have caused endless amounts of
384 confusion among end-users. (#141102, #151175)
386 Don't output the process id on Windows. Only output the program
387 name. If not set with g_set_prgname(), fetch the application
388 executable's name and use that.
390 Mon Sep 20 00:35:14 2004 Matthias Clasen <maclas@gmx.de>
392 * glib/gutf8.c (g_utf16_to_utf8): Add a note explaining how to
393 convert UTF-16 byte stream of ambiguous endianness. (#152954,
396 Mon Sep 20 00:17:37 2004 Matthias Clasen <maclas@gmx.de>
398 * tests/option-test.c (error_test3_post_parse):
399 * tests/option-test.c (error_test2_post_parse):
400 * tests/option-test.c (error_test1_post_parse): Don't call
401 g_set_error () with a NULL format. (#153103, Robert Ćgren)
403 Mon Sep 20 00:13:48 2004 Matthias Clasen <maclas@gmx.de>
405 Make GOption remove long options completely. (#153113, Robert Ćgren)
407 * glib/goption.c (parse_long_option): Fix a wrong index.
409 * tests/option-test.c (ignore_test3): Test handling of unknown
412 Sun Sep 19 23:56:15 2004 Matthias Clasen <maclas@gmx.de>
414 * glib/goption.c (g_option_context_parse): Call error_func
415 on error, not post_parse_func again. (#153107, Robert Ćgren)
417 Sun Sep 19 23:52:35 2004 Matthias Clasen <maclas@gmx.de>
419 * glib/gmessages.c (mklevel_prefix):
420 * glib/gmessages.c (g_logv): Fix the types of some variables
421 to be GLogLevelFlags instead of guint. (#153042, Philippe Blain)
423 2004-09-18 Matthias Clasen <mclasen@redhat.com>
427 * === Released 2.5.3 ===
429 2004-09-17 Matthias Clasen <mclasen@redhat.com>
431 * NEWS: More updates.
433 Thu Sep 16 18:42:46 2004 Manish Singh <yosh@gimp.org>
435 * glib/abicheck.sh: don't hardcode lengths for cut, instead split on
438 Thu Sep 16 18:15:32 2004 Manish Singh <yosh@gimp.org>
440 * glib/gstrfuncs.c (g_strncasecmp): Make it take a guint for number
441 of characters, instead of a gsize. Technically this is incorrect,
442 but this makes it match the prototype, and this is a deprecated
445 2004-09-16 Matthias Clasen <mclasen@redhat.com>
447 * glib/Makefile.am (EXTRA_DIST): Add abicheck.sh
449 Thu Sep 16 02:03:15 2004 Matthias Clasen <maclas@gmx.de>
451 Implement the same PLT reduction technique used in GTK+:
453 * glib/glib.symbols: Master list of symbols
455 * glib/makegalias.pl: Perl script which creates galias.h
457 * glib/abicheck.sh: Compares actual exports against glib.symbols
459 * glib/glib.def: Removed. This file is now generated from
462 * glib/Makefile.am: Add rules to generate galias.h and glib.def,
463 and add abicheck.sh to TESTS. Don't export _-prefixed symbols.
465 * configure.in: Add --disable-visibility to suppress the
466 use of ELF visibility attributes.
468 * glib/*.c: Include galias.h
470 2004-09-15 Tor Lillqvist <tml@iki.fi>
472 * glib/gwin32.c (g_win32_error_message): Convert message to
473 UTF-8. Technically this breaks API, but the actual use cases in
474 gdk/win32 have assumed it is UTF-8 anyway. Fix
475 documentation. (#152618, Kazuki Iwamoto)
477 * glib/gwin32.h: Don't define ftruncate as a macro. Was never a
478 good idea, and it clashes with newest mingw headers, which have a
479 ftruncate implementation as an inline function. Thanks to Dominik R.
481 * glib/gwin32.c (g_win32_ftruncate): Simplify implementation, just
482 call _chsize() in the C library.
484 2004-09-15 Matthias Clasen <mclasen@redhat.com>
488 2004-09-09 Matthias Clasen <mclasen@redhat.com>
490 * glib/gmessages.c (g_return_if_fail_warning): Strip the
491 prefix "IA__" from function names, since that is what
492 GTK+ uses for the PLT-reduction aliases.
494 Thu Sep 9 13:52:26 2004 Owen Taylor <otaylor@redhat.com>
496 * glib/gmessages.c (g_return_if_fail_warning):
497 Include implementation of g_return_if_fail_internal().
499 Thu Sep 9 10:37:41 2004 Owen Taylor <otaylor@redhat.com>
501 * glib/gmessages.h (g_return_[val_]if_fail): Use
502 a helper function to reduce code size; omit FILE/LINE
503 when we have __PRETTY_FUNCTION__.
505 2004-09-09 Matthias Clasen <mclasen@redhat.com>
507 * glib/gutils.c (g_get_home_dir): Remove a misleading comment.
509 Thu Sep 9 00:10:40 2004 Matthias Clasen <maclas@gmx.de>
512 * glib/gstrfuncs.c (g_strv_length): Add a function to
513 calculate the length of a NULL-terminated string
514 array. (#150455, Tim-Philipp MĆ¼ller)
516 * tests/strfunc-test.c (main): Add a test for g_strv_length().
518 2004-09-08 Tor Lillqvist <tml@iki.fi>
520 * glib/gutils.c (guess_category_value): On Win32, as last resort
521 call g_win32_getlocale() to get the current thread locale. There
522 usually aren't any POSIXish LANG or LC_* environment variables
523 present on Windows machines.
525 * glib/glib.def: Add g_get_language_names.
527 2004-09-07 Matthias Clasen <mclasen@redhat.com>
530 * glib/gutils.c (g_get_language_names): Add a function to
531 return a list of applicable locale names. (#95587,
533 (guess_category_value, compute_locale_variants):
534 (explode_locale, unalias_lang, read_aliases): Helper
535 functions for g_get_language_names()
537 * tests/testglib.c (main): Show the results of
538 g_get_language_names()
540 Sun Sep 5 01:46:11 2004 Matthias Clasen <maclas@gmx.de>
544 * glib/gmessages.c (g_log_set_default_handler): New
545 function to install an alternate default log
546 handler. (#66387, Darin Adler)
548 2004-09-03 Tor Lillqvist <tml@iki.fi>
550 * glib/glib.def: Update.
552 Wed Sep 1 20:22:39 2004 Matthias Clasen <maclas@gmx.de>
555 * glib/gdate.c (g_date_get_iso8601_week_of_year): Add
556 a function to calculate the ISO 8601 week number of
557 a date. (#92579, Niklas Lundell)
559 2004-09-01 Anders Carlsson <andersca@gnome.org>
561 * glib/goption.c: (g_option_context_parse):
562 Set program name before calling the pre-parse hooks.
564 2004-09-01 Anders Carlsson <andersca@gnome.org>
566 * glib/goption.c: (g_option_context_free), (print_help),
567 (g_option_context_parse):
568 Handle option contexts without a main group.
570 * tests/option-test.c: (empty_test2), (main):
571 Add test case for that.
573 2004-08-30 Anders Carlsson <andersca@gnome.org>
575 * glib/goption.c: (g_option_context_parse):
576 Set prgname to <unknown> if argc and argv are NULL.
578 * tests/option-test.c: (empty_test1), (main):
579 Add test case for that.
581 Sun Aug 29 23:58:38 2004 Matthias Clasen <maclas@gmx.de>
583 * glib/ghash.c (g_hash_table_lookup): Point to
584 g_hash_table_lookup_extended() for differentiation between
585 not-found and value-is-NULL. (#150960, Morten Welinder)
587 2004-08-27 Matthias Clasen <mclasen@redhat.com>
589 Fix #151193, Stepan Kasal:
591 * glib/gfileutils.c (g_file_error_from_errno):
592 * glib/gfileutils.h (enum GFileError): Add G_FILE_ERROR_NOSYS.
594 Fri Aug 27 00:45:41 2004 Matthias Clasen <maclas@gmx.de>
596 * glib/goption.c (g_option_context_parse): Set the program name
597 from argv[0], noticed by Masatake YAMATO.
599 2004-08-26 Tor Lillqvist <tml@iki.fi>
601 * tests/testglib.c (main): Test the new XDG basedir functions.
603 2004-08-25 Tor Lillqvist <tml@iki.fi>
605 * glib/gwin32.c (g_win32_get_windows_version): New
606 function. Returns the Windows version code like GetVersion(),
607 except that one can pretend to be running on Win9x by setting the
608 G_WIN32_PRETEND_WIN9X environment variable. This is mainly for
611 * glib/gwin32.h: Declare it. Define macros G_WIN32_WINDOWS_IS_NT_BASED
612 and G_WIN32_HAVE_WIDECHAR_API to test Windows features at run-time.
614 2004-08-25 Matthias Clasen <mclasen@redhat.com>
616 * configure.in: Post-release version bump.
618 * === Released 2.5.2 ===
620 Wed Aug 25 00:25:08 2004 Matthias Clasen <maclas@gmx.de>
622 * NEWS: Update for 2.5.2
624 2004-08-25 Tor Lillqvist <tml@iki.fi>
626 Win32 equivalences of the XDG folders
628 * glib/gutils.c (get_special_folder): New function, calls
629 SHGetSpecialFolderLocation() to get path to places like the My
631 (g_get_any_init): Use CSIDL_PROFILE as HOME if not
632 overridden by env vars.
633 (g_get_user_data_dir): Use CSIDL_PERSONAL.
634 (g_get_user_config_dir): Use CSIDL_APPDATA.
635 (g_get_user_cache_dir): Use CSIDL_INTERNET_CACHE. Debatable...
636 (g_get_system_data_dirs): Use CSIDL_COMMON_APPDATA and
637 CSIDL_COMMON_DOCUMENTS.
638 (g_get_system_config_dirs): Use CSIDL_COMMON_APPDATA.
640 * configure.in: Add -lole32 to G_LIBS_EXTRA for mingw.
642 * glib/glib.def: Add the new functions.
644 Mon Aug 23 16:16:35 2004 Manish Singh <yosh@gimp.org>
646 * glib/goption.c (g_option_group_add_entries): remove unused
649 Mon Aug 23 01:35:18 2004 Matthias Clasen <maclas@gmx.de>
651 * glib/gutils.c (g_get_user_cache_dir):
652 * glib/gutils.c (g_get_user_config_dir):
653 * glib/gutils.c (g_get_user_data_dir): Don't call g_get_home_dir()
654 while holding the g_utils_global lock, simply use g_home_dir.
655 (#150695, Jody Goldberg)
657 2004-08-21 Tor Lillqvist <tml@iki.fi>
659 * glib/giowin32.c (g_io_win32_finalize): Tell select_thread to
660 break out of its loop. Prevents a thread leak. (#147392, Peter
663 * glib/gunicollate.c (g_utf8_collate_key): Guard against bogus
664 return value from strxfrm(). For instance Microsoft's strxfrm()
665 returns INT_MAX on errors. (#141124)
667 2004-08-19 Tor Lillqvist <tml@iki.fi>
669 * glib/gunicollate.c (g_utf8_collate, g_utf8_collate_key): Correct
670 source and destination charset parameter order in g_convert()
671 call. (#150394, possibly also #141124)
673 2004-08-20 Jon K Hellan <hellan@acm.org>
675 * glib/goption.h: Remove trailing commas.
677 2004-08-17 Matthias Clasen <mclasen@redhat.com>
679 * configure.in: Check for all four values of the
680 visibility attribute; gcc 2.96 seems to miss
681 "default". (#150379, Vincent Noel)
683 2004-08-16 Christian Rose <menthos@menthos.com>
685 * configure.in: Added "bs" to ALL_LINGUAS.
687 2004-08-11 Ray Strode <rstrode@redhat.com>
689 * docs/reference/glib/glib-sections.txt:
690 * glib/gutils.[ch] (g_get_user_data_dir),
691 (g_get_user_config_dir), (g_get_user_cache_dir),
692 (g_get_system_data_dirs), (g_get_system_config_dirs):
693 Add new XDG basedir API (bug 139973).
695 2004-08-10 Matthias Clasen <mclasen@redhat.com>
697 * glib/gmacros.h: Remove G_GNUC_INTERNAL from here.
698 * configure.in: Check whether the visibility attribute
699 works and define G_HAVE_GNUC_VISIBILITY and
700 G_GNUC_INTERNAL in glibconfig.h correspondingly.
702 Mon Aug 9 17:37:56 2004 Matthias Clasen <maclas@gmx.de>
704 * glib/gmacros.h (G_GNUC_INTERNAL): Define empty if gcc is too old.
706 2004-08-06 Hans Breuer <hans@breuer.org>
708 * glib/makefile.msc.in glib/glib.def : updated
710 * glib/gutils.c : avoid 'inconsitent dll linkage' by not
711 defining extern char** environ with msvc
713 2004-08-06 Matthias Clasen <mclasen@redhat.com>
715 * m4macros/glib-gettext.m4: Require ngettext. (#123847,
718 Thu Aug 5 20:53:00 2004 Ray Strode <rstrode@redhat.com>
720 * glib/gutils.h (g_get_codeset): strdup result so caller
721 doesn't free internally managed memory.
723 2004-08-04 Tor Lillqvist <tml@iki.fi>
725 * glib/glib.def: Add glib_check_version.
727 * config.h.win32.in: Update to match what configure produces. Add
728 the G_ATOMIC_*. Define G_ATOMIC_I486 when compiling with gcc. Move
729 HAVE_INT64_AND_I64 to where the configure script puts it. Add
730 HAVE_INTTYPES_H_WITH_UINTMAX. Define intmax_t as __int64 for MSVC.
732 Tue Aug 3 16:19:44 2004 Matthias Clasen <maclas@gmx.de>
734 * glib/goption.c: Mark user visible strings for translation.
736 Tue Aug 3 15:50:55 2004 Matthias Clasen <maclas@gmx.de>
738 * glib/goption.[hc]: Pedantically use g types throughout.
740 Tue Aug 3 14:58:20 2004 Matthias Clasen <maclas@gmx.de>
743 * glib/gutils.c (glib_check_version): New function to
744 check the version of GLib at runtime. (#149175, Michael Natterer)
746 2004-08-03 Anders Carlsson <andersca@gnome.org>
750 Move GTranslateFunc to gtypes.h
752 2004-08-02 Anders Carlsson <andersca@gnome.org>
760 * tests/option-test.c:
763 2004-08-02 Matthias Clasen <mclasen@redhat.com>
765 * glib/gmacros.h: Add a G_GNUC_INTERNAL macro to mark function
766 declarations as internal and avoid PLT indirections for
767 them. (#145465, Arjan van de Ven)
769 * glib/gunicodeprivate.h:
770 * glib/gthreadinit.h:
773 * glib/gconvert.c: Use G_GNUC_INTERNAL for _g_charset_get_aliases(),
774 _g_debug_init(), _g_log_fallback_handler(), _g_mem_thread_init(),
775 _g_messages_thread_init(), _g_convert_thread_init(),
776 _g_rand_thread_init(), _g_main_thread_init(), _g_atomic_thread_init(),
777 _g_mem_thread_private_init(), _g_messages_thread_private_init(),
778 _g_utf8_normalize_wc() and _g_unichar_combining_class().
780 * glib/gatomic.c: Include gthreadinit.h here to see the declaration
781 for _g_atomic_thread_init().
783 Sun Aug 1 13:19:18 2004 Manish Singh <yosh@gimp.org>
785 * tests/uri-test.c: move newline printing from run_from_uri_tests()
786 to run_roundtrip_tests().
788 2004-08-01 Matthias Clasen <mclasen@redhat.com>
790 * Post-release version bump
792 * === Released 2.5.1 ===
794 Sat Jul 31 23:17:05 2004 Matthias Clasen <maclas@gmx.de>
798 Sat Jul 31 20:33:07 2004 Matthias Clasen <maclas@gmx.de>
800 * tests/shell-test.c: Include a test involving consecutive
801 backslashes followed by a non-escaped doublequote.
803 * glib/gshell.c (tokenize_command_line): Count consecutive
804 backslashes mod 2 to detect escaped doubleqotes. (#127306)
806 2004-07-30 Matthias Clasen <mclasen@redhat.com>
808 * glib/gconvert.c (g_unescape_uri_string): Don't validate
809 for UTF-8 here. (#148420, Robert Ćgren)
811 * tests/uri-test.c (run_roundtrip_tests): Add tests for
812 roundtrip compatibility. Going from filename to uri and
813 back should always give you the same filename back.
815 2004-07-28 Matthias Clasen <mclasen@redhat.com>
817 * tests/markups/valid-{9,10,11}.gmarkup:
818 * tests/markups/fail-{37,38,39}.gmarkup: Tests for handling
819 of whitespace inside tags.
821 * glib/gmarkup.c (enum GMarkupParseState): Add
822 STATE_AFTER_ATTRIBUTE_NAME and STATE_AFTER_CLOSE_TAG_NAME.
823 (g_markup_parse_context_parse): Accept whitespace between
824 attribute names, '=' and attribute values and between
825 close tag name and '>'. (#148646, Hiroyuki Ikezoe)
827 Tue Jul 27 02:01:31 2004 Matthias Clasen <maclas@gmx.de>
829 * glib/gstrfuncs.c (g_strsplit_set): s/g_strsplit/g_strsplit_set/
832 Sat Jul 24 17:50:07 2004 Soeren Sandmann <sandmann@daimi.au.dk>
834 * glib/gstrfuncs.c (g_strsplit_set):
835 s/g_strtokenize/g_strsplit_set/ in docs.
837 Fri Jul 23 10:37:50 2004 Matthias Clasen <maclas@gmx.de>
839 * tests/type-test.c (main): Actually test G_MAXSIZE with
842 2004-07-21 Matthias Clasen <mclasen@redhat.com>
844 Fix #132858, Sven Neumann, patch by James Henstridge:
846 * glib-gettextize.in: modify so that mkinstalldirs will
847 get installed into auxdir.
849 * Makefile.am (gettext_SCRIPTS): install mkinstalldirs.
851 2004-07-21 Matthias Clasen <mclasen@redhat.com>
853 Fix #147651, reported by Oliver Guntermann:
855 * glib/gprintfint.h (_g_vasprintf): Don't wrap vasprintf(),
856 _g_gnulib_vasprintf() in a macro, since they behave
857 differently wrt. to memory allocation.
859 * glib/gprintf.c (g_vasprintf): Instead, differentiate
860 here between the three cases: system vasprintf(),
861 _g_gnulib_vasprintf(), no vasprintf().
863 2004-07-20 Crispin Flowerday <gnome@flowerday.cx>
865 * NEWS: Fix a typo in my name
867 Tue Jul 20 04:31:40 2004 Soeren Sandmann <sandmann@daimi.au.dk>
869 * configure.in: Bump version number
871 Sun Jul 18 19:40:30 2004 Soeren Sandmann <sandmann@daimi.au.dk>
873 * === Released 2.5.0 ===
875 * Makefile.am (BUILT_EXTRA_DIST): move gtk-doc.make here.
877 Sun Jul 18 01:40:28 2004 Matthias Clasen <maclas@gmx.de>
879 * NEWS: Updates for 2.5.0
881 Mon Jul 12 00:02:40 2004 Matthias Clasen <maclas@gmx.de>
883 * glib/gi18n-lib.h: Remove the ENABLE_NLS check here as well.
885 2004-07-09 Matthias Clasen <mclasen@redhat.com>
887 * glib/gdir.c (g_dir_open): Convert filename to UTF-8
888 before using it in the error message. (#146054, Federico
891 Thu Jul 8 00:54:32 2004 Matthias Clasen <maclas@gmx.de>
893 * glib/gi18n.h: Remove the ENABLE_NLS check, since GLib can't
894 be built without anyway. (#135899, Murray Cumming)
896 Mon Jul 5 18:50:27 2004 Matthias Clasen <maclas@gmx.de>
898 * glib/gmessages.h (g_debug): Complete the g_log()
899 family. (#135730, Sven Herzberg)
901 Mon Jul 5 18:42:30 2004 Matthias Clasen <maclas@gmx.de>
903 * glib/gnulib/Makefile.am (INCLUDES): Add top_srcdir to
904 make srcdir != . work. (#145166, Kaz Sasayama)
906 Sun Jul 4 01:52:18 2004 Matthias Clasen <maclas@gmx.de>
908 * configure.in: Use a small test library instead of
909 libpthread.so for testing RTLD_GLOBAL brokenness. (#139567,
910 Julio M. Merino Vidal)
912 2004-07-02 Sebastian Wilhelmi <seppi@seppi.de>
914 * glib/gatomic.c: Rename __asm to __asm__ and __volatile to
915 __volatile__ to make the file consistent. Spotted by Benoit
916 Carpentier <gtkool_2kx@yahoo.fr>.
918 2004-07-01 John Ehresman <jpe@wingide.com>
920 * glib/giowin32.c (g_io_channel_win32_init, g_io_win32_free)
921 Initialize reset_send & reset_recv fields and don't close
922 sockets unless they were created. (#145153)
924 Fri Jun 11 22:56:46 2004 Matthias Clasen <maclas@gmx.de>
926 * glib/gscanner.c (g_scanner_get_token_ll): Ignore a
927 missing newline at EOF for single line comments.
928 (#83674, Sven Neumann)
930 Thu Jun 10 23:38:02 2004 Matthias Clasen <maclas@gmx.de>
932 * tests/printf-test.c (TEST): Actually set any_failed on
933 failure. (#143552, Philippe Blain)
935 2004-06-09 Federico Mena Quintero <federico@ximian.com>
937 * tests/uri-test.c (to_uri_tests): Fix expected results (ha ha)
938 for URIs that *should* have been invalid, or viceversa.
939 (from_uri_tests): Likewise.
941 2004-06-07 Federico Mena Quintero <federico@ximian.com>
945 * glib/gconvert.c (is_asciialphanum): Renamed from
946 is_escalphanum(); ensures that this is an ASCII character.
947 (is_asciiescalpha): Renamed from is_escalpha().
948 (hostname_validate): Use the two functions above.
949 (g_filename_to_uri): Don't convert the filename to UTF-8.
950 (g_filename_from_uri): Don't convert the filename from UTF-8.
952 Mon Jun 7 22:25:24 2004 Matthias Clasen <maclas@gmx.de>
954 * tests/run-markup-tests.sh: Default to silence, but support
955 a -v argument to get the old output back.
957 2004-06-06 Tor Lillqvist <tml@iki.fi>
959 * glib/gutils.c (g_get_any_init): Check home for being
960 NULL. (#143812, Ivan Wong)
962 Sun Jun 6 15:23:00 2004 Pawan Chitrakr <pawan@nplinu.org>
964 * configure.in: Added "ne" (Nepali) in ALL_LINGUAS
966 Fri Jun 4 19:26:47 2004 Manish Singh <yosh@gimp.org>
968 * glib/galloca.h: cpp #directives should always have the "#" in the
969 first column of the the line. Do that for "#pragma alloca". Fixes
972 Wed Jun 2 00:57:16 2004 Matthias Clasen <maclas@gmx.de>
974 * glib/gtypes.h: Use higher precision for the mathematical
975 constants. (#141941, Morten Welinder)
977 Tue Jun 1 22:01:40 2004 Matthias Clasen <maclas@gmx.de>
979 * glib/gmarkup.c (advance_char): Fix an off-by-one error
980 in g_markup_parse_context_parse(). (#142794, Morten Welinder)
982 Sun May 16 23:23:29 2004 Matthias Clasen <maclas@gmx.de>
986 * glib/gcompletion.c (g_completion_add_items):
987 (g_completion_remove_items): Remove unnecessary
988 checks. (#142559, Morten Welinder)
990 2004-05-15 Tor Lillqvist <tml@iki.fi>
992 * glib/gutils.c (g_get_any_init): [Win32] Only believe HOME if it
993 is an absolute path and exists. (#138618)
995 2004-05-14 Tor Lillqvist <tml@iki.fi>
997 * glib/gnulib/vasnprintf.c (vasnprintf): Handle empty digit string
998 for precision correctly. (#142400)
1000 For backward compatibility with the Trio implementation, make "ll"
1001 format modifer work on Win32, too. Change into "I64" before
1002 passing to the system printf. (#142433)
1004 * tests/printf-test.c (main): Add tests for the above.
1006 2004-05-10 Matthias Clasen <mclasen@redhat.com>
1010 * glib/gmain.c (block_source, unblock_source): Make these
1011 static. (#142230, Morten Welinder)
1013 2004-05-10 Tor Lillqvist <tml@iki.fi>
1015 * glib/giowin32.c (g_win32_print_gioflags): Remove two duplicated
1016 lines. Thanks to BenoƮt Carpentier.
1018 Sun May 9 02:04:14 2004 Matthias Clasen <maclas@gmx.de>
1022 * glib/guniprop.c (g_utf8_casefold): Avoid an unnecessary
1023 memleak. (#141998, Nikolai Weibull)
1025 Sat May 8 23:02:26 2004 Matthias Clasen <maclas@gmx.de>
1029 * glib/gutils.h: Remove vestigial g_get_codeset().
1030 * glib/gutils.c (g_get_codeset): Call g_get_charset().
1031 (#137703, Owen Taylor)
1033 2004-05-06 Matthias Clasen <mclasen@redhat.com>
1035 * configure.in: Bump version number to 2.5.0.
1037 Wed May 5 23:35:44 2004 Matthias Clasen <maclas@gmx.de>
1039 * glib/gconvert.c (g_filename_from_uri): Quote the file
1040 scheme to mark it as untranslatable. String change.
1041 (#133144, Danilo Segan)
1043 2004-05-03 Pablo Saratxaga <pablo@mandrakesoft.com>
1045 * configure.in: Added Walloon (wa) to ALL_LINGUAS
1047 Sun May 2 03:51:59 2004 Manish Singh <yosh@gimp.org>
1049 * glib/gtypes.h: check for __pentium4__ when deciding whether to
1050 use bswap for GUINT32_SWAP_LE_BE_IA32(). Fixes bug #141620.
1052 2004-05-01 Hans Breuer <hans@breuer.org>
1054 * glib/gnulib/Makefile.am : added makefile.msc to EXTRA_DIST
1055 fixes #141563, Steve Lhomme
1057 2004-04-30 Matthias Clasen <mclasen@redhat.com>
1059 * === Released 2.4.1 ===
1061 * configure.in: Version 2.4.1, interface age 1.
1065 2004-04-25 Tor Lillqvist <tml@iki.fi>
1067 * glib/gwin32.c (g_win32_get_package_installation_subdirectory):
1068 Plug memory leak. (#140770, John Ehresman)
1070 2004-04-23 Matthias Clasen <mclasen@redhat.com>
1072 * glib/libcharset/localcharset.c (_g_locale_get_charset_aliases):
1073 Reinstate LIBCHARSET_ALIAS_DIR support which got lost at some
1074 point. (#139134, Piotr Klaban)
1076 * glib/gconvert.c (open_converter): Don't call g_strerror() here,
1077 since it can lead to infinite recursion. (#139133, Piotr Klaban)
1079 2004-04-22 Matthias Clasen <mclasen@redhat.com>
1081 * tests/testglib.c (main): Trivial warning fix. (#140345)
1083 * tests/queue-test.c (main): Add some tests for off-by-one errors.
1085 * glib/gqueue.c (g_queue_pop_nth_link): Fix an off-by-one
1086 error. (#139703, Philippe Blain)
1088 * tests/testglib.c (main): Add testcases for g_message() involving
1089 non-printable and unsafe characters.
1091 * glib/gmessages.c (escape_string): Don't assume that
1092 string->str remains unchanged over g_string_insert()
1093 calls. (#139030, Christophe Saout)
1095 * glib/gstrfuncs.c (g_ascii_strtod): Fix problems when a
1096 locale-specific decimal separator directly follows a
1097 number. (#138424, Nickolay V. Shmyrev)
1099 * tests/strtod-test.c (main): Add some more testcases.
1101 * glib/gmain.c (g_main_context_query): Only set time_is_current to
1102 FALSE if context->timeout is not zero. (#137795, Christian Krause)
1104 2004-04-21 Matthias Clasen <mclasen@redhat.com>
1106 * tests/printf-test.c (main): Comment out a nonessential testcase
1107 which fails on HP-UX. (#136283, Jonas Jonsson)
1109 2004-04-15 Matthias Clasen <mclasen@redhat.com>
1111 * tests/patterntest.c (main): Add tests for the empty pattern.
1113 * glib/gpattern.c (g_pattern_spec_new): Don't read and write out
1114 of bounds when the pattern is empty. (#140032, Stanislav Brabec,
1117 2004-04-10 Tor Lillqvist <tml@iki.fi>
1119 * glib/gwin32.c (g_win32_getlocale): Add new language and
1120 sublanguage codes, from GNU gettext. (#137958)
1125 * glib/gthread.c: Decorating variable definitions with
1126 __declspec(dllexport) causes problems on Cygwin build, and isn't
1127 really needed for a native Win32 build with mingw or MSVC, so
1128 remove. (#138402, Roger Leigh)
1130 * glib/libcharset/localcharset.c: Use Win32-specific code also on
1132 * tests/uri-test.c: Don't assume that local filenames are in UTF-8
1133 on Cygwin, either. (#138412, Roger Leigh)
1135 2004-04-08 Guntupalli Karunakar <karunakar@freedomink.org>
1137 * configure.in: Added "gu" (Gujarati) to ALL_LINGUAS.
1139 2004-04-03 Tor Lillqvist <tml@iki.fi>
1141 * configure.in: Remove AC_CYGWIN, obsolete. Don't let pthreads be
1142 found on Cygwin, they don't work. (#138401, Roger Leigh)
1144 2004-03-31 Tor Lillqvist <tml@iki.fi>
1146 * tests/spawn-test-win32-gui.c: Minor Cygwin fix. (#138405, Roger
1149 * tests/unicode-encoding.c (process): Use UTF-16LE explicitly also
1150 on Cygwin. (#138423, Roger Leigh)
1152 2004-03-30 Adam Weinberger <adamw@gnome.org>
1154 * configure.in: Added en_CA to ALL_LINGUAS.
1156 2004-03-21 Tor Lillqvist <tml@iki.fi>
1158 * glib/gutils.c (g_path_get_dirname): Fix Win32 behaviour in some
1159 cases where a drive letter is present. For 'a:' or 'a:foo', return
1160 'a:.'. This is mostly just for consistency with the behaviour
1161 without a drive letter. But very important is to for 'a:\foo' or
1162 'a:\', return 'a:\', and not 'a:'. (Ditto for forward slashes
1163 instead of backslashes.) (#137316)
1165 * tests/dirname-test.c (main): More complete testing on Win32. If
1166 a test fails, include expected and actual result in error message.
1168 Fri Mar 19 15:21:09 2004 Owen Taylor <otaylor@redhat.com>
1170 * glib/gmain.c: Fix the accidental revert of the
1171 fixes from #112222 that happened when the GChildWatch
1172 code was added. (Caught by Christian Persch)
1174 Fri Mar 19 11:07:06 2004 Owen Taylor <otaylor@redhat.com>
1176 * tests/atomic-test.c (main): Make computation
1177 of "biggest_pointer" vaguely more portable.
1178 (#137498, Jonas Jonsson)
1180 2004-03-16 Tor Lillqvist <tml@iki.fi>
1182 * configure.in: Define HAVE_INT64_AND_I64 also in the mingw (gcc
1183 on Win32) case, where the 64-bit type is called long long, but the
1184 system printf/scanf format modifier for 64-bit integers is still I64.
1186 2004-03-16 Gareth Owen <gowen72@yahoo.com>
1188 * configure.in: Added en_GB to ALL_LINGUAS